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;