PERFORCE change 166542 for review
Andre Oppermann
andre at FreeBSD.org
Sat Jul 25 10:30:36 UTC 2009
http://perforce.freebsd.org/chv.cgi?CH=166542
Change 166542 by andre at andre_t61 on 2009/07/25 10:29:34
Add generic sysctl_zonelimit() for use with SYSCTL_PROC()
to report and modify UMA zone limits.
Affected files ...
.. //depot/projects/tcp_reass/kern/kern_sysctl.c#8 edit
.. //depot/projects/tcp_reass/sys/sysctl.h#9 edit
Differences ...
==== //depot/projects/tcp_reass/kern/kern_sysctl.c#8 (text+ko) ====
@@ -63,6 +63,7 @@
#include <security/mac/mac_framework.h>
+#include <vm/uma.h>
#include <vm/vm.h>
#include <vm/vm_extern.h>
@@ -963,6 +964,28 @@
return (0);
}
+/*
+ * Based on on sysctl_handle_int() report and set UMA zone limits.
+ */
+
+int
+sysctl_zonelimit(SYSCTL_HANDLER_ARGS)
+{
+ int error, nitems;
+ uma_zone_t zone = (uma_zone_t)arg1;
+
+ nitems = uma_zone_get_max(zone);
+
+ error = sysctl_handle_int(oidp, &nitems, 0, req);
+ if (error || !req->newptr)
+ return (error);
+
+ if (nitems < 1)
+ return (EINVAL);
+
+ uma_zone_set_max(zone, nitems);
+ return (error);
+}
/*
* Handle a long, signed or unsigned. arg1 points to it.
==== //depot/projects/tcp_reass/sys/sysctl.h#9 (text+ko) ====
@@ -170,6 +170,7 @@
int sysctl_handle_int(SYSCTL_HANDLER_ARGS);
int sysctl_msec_to_ticks(SYSCTL_HANDLER_ARGS);
+int sysctl_zonelimit(SYSCTL_HANDLER_ARGS);
int sysctl_handle_long(SYSCTL_HANDLER_ARGS);
int sysctl_handle_quad(SYSCTL_HANDLER_ARGS);
int sysctl_handle_intptr(SYSCTL_HANDLER_ARGS);
More information about the p4-projects
mailing list