git: d8b03c5904fa - main - vm_pageout: Disallow invalid values for act_scan_laundry_weight
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 18 Apr 2025 17:57:06 UTC
The branch main has been updated by markj:
URL: https://cgit.FreeBSD.org/src/commit/?id=d8b03c5904faff84656d3a84a25c2b37bcbf8075
commit d8b03c5904faff84656d3a84a25c2b37bcbf8075
Author: Mark Johnston <markj@FreeBSD.org>
AuthorDate: 2025-04-18 17:31:27 +0000
Commit: Mark Johnston <markj@FreeBSD.org>
CommitDate: 2025-04-18 17:56:52 +0000
vm_pageout: Disallow invalid values for act_scan_laundry_weight
PR: 234167
MFC after: 2 weeks
---
sys/vm/vm_pageout.c | 19 +++++++++++++++++--
1 file changed, 17 insertions(+), 2 deletions(-)
diff --git a/sys/vm/vm_pageout.c b/sys/vm/vm_pageout.c
index 7b303d7d905f..704f1046d727 100644
--- a/sys/vm/vm_pageout.c
+++ b/sys/vm/vm_pageout.c
@@ -184,8 +184,23 @@ SYSCTL_INT(_vm, OID_AUTO, pageout_oom_seq,
"back-to-back calls to oom detector to start OOM");
static int act_scan_laundry_weight = 3;
-SYSCTL_INT(_vm, OID_AUTO, act_scan_laundry_weight, CTLFLAG_RWTUN,
- &act_scan_laundry_weight, 0,
+
+static int
+sysctl_act_scan_laundry_weight(SYSCTL_HANDLER_ARGS)
+{
+ int error, newval;
+
+ newval = act_scan_laundry_weight;
+ error = sysctl_handle_int(oidp, &newval, 0, req);
+ if (error || req->newptr == NULL)
+ return (error);
+ if (newval < 1)
+ return (EINVAL);
+ act_scan_laundry_weight = newval;
+ return (0);
+}
+SYSCTL_PROC(_vm, OID_AUTO, act_scan_laundry_weight, CTLFLAG_RWTUN | CTLTYPE_INT,
+ &act_scan_laundry_weight, 0, sysctl_act_scan_laundry_weight, "I",
"weight given to clean vs. dirty pages in active queue scans");
static u_int vm_background_launder_rate = 4096;