Page MenuHomeFreeBSD

D36540.diff
No OneTemporary

D36540.diff

diff --git a/sys/vm/swap_pager.c b/sys/vm/swap_pager.c
--- a/sys/vm/swap_pager.c
+++ b/sys/vm/swap_pager.c
@@ -169,8 +169,8 @@
&swap_total, 0, sysctl_page_shift, "QU",
"Total amount of available swap storage.");
-static int overcommit = 0;
-SYSCTL_INT(_vm, VM_OVERCOMMIT, overcommit, CTLFLAG_RW, &overcommit, 0,
+int vm_overcommit = 0;
+SYSCTL_INT(_vm, VM_OVERCOMMIT, overcommit, CTLFLAG_RW, &vm_overcommit, 0,
"Configure virtual memory overcommit behavior. See tuning(7) "
"for details.");
static unsigned long swzone;
@@ -190,11 +190,6 @@
CTLFLAG_RD, &swap_free_completed,
"Number of deferred frees completed");
-/* bits from overcommit */
-#define SWAP_RESERVE_FORCE_ON (1 << 0)
-#define SWAP_RESERVE_RLIMIT_ON (1 << 1)
-#define SWAP_RESERVE_ALLOW_NONWIRED (1 << 2)
-
static int
sysctl_page_shift(SYSCTL_HANDLER_ARGS)
{
@@ -286,7 +281,7 @@
prev = atomic_fetchadd_long(&swap_reserved, pincr);
r = prev + pincr;
s = swap_total;
- oc = atomic_load_int(&overcommit);
+ oc = atomic_load_int(&vm_overcommit);
if (r > s && (oc & SWAP_RESERVE_ALLOW_NONWIRED) != 0) {
s += vm_cnt.v_page_count - vm_cnt.v_free_reserved -
vm_wire_count();
diff --git a/sys/vm/vm.h b/sys/vm/vm.h
--- a/sys/vm/vm.h
+++ b/sys/vm/vm.h
@@ -165,6 +165,12 @@
extern int vm_ndomains;
+/* bits from overcommit */
+#define SWAP_RESERVE_FORCE_ON (1 << 0)
+#define SWAP_RESERVE_RLIMIT_ON (1 << 1)
+#define SWAP_RESERVE_ALLOW_NONWIRED (1 << 2)
+extern int vm_overcommit;
+
#ifdef _KERNEL
struct ucred;
bool swap_reserve(vm_ooffset_t incr);

File Metadata

Mime Type
text/plain
Expires
Mon, Mar 30, 5:25 PM (10 h, 35 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
30593798
Default Alt Text
D36540.diff (1 KB)

Event Timeline