svn commit: r185893 - head/sys/kern
Bjoern A. Zeeb
bz at FreeBSD.org
Wed Dec 10 14:17:10 PST 2008
Author: bz
Date: Wed Dec 10 22:17:09 2008
New Revision: 185893
URL: http://svn.freebsd.org/changeset/base/185893
Log:
Make sure nmbclusters are initialized before maxsockets
by running the tunable_mbinit() SYSINIT at SI_ORDER_MIDDLE
before the init_maxsockets() SYSINT at SI_ORDER_ANY.
Reviewed by: rwatson, zec
Sponsored by: The FreeBSD Foundation
MFC after: 4 weeks
Modified:
head/sys/kern/kern_mbuf.c
head/sys/kern/uipc_socket.c
Modified: head/sys/kern/kern_mbuf.c
==============================================================================
--- head/sys/kern/kern_mbuf.c Wed Dec 10 22:10:37 2008 (r185892)
+++ head/sys/kern/kern_mbuf.c Wed Dec 10 22:17:09 2008 (r185893)
@@ -101,6 +101,11 @@ int nmbjumbo9; /* limits number of 9k
int nmbjumbo16; /* limits number of 16k jumbo clusters */
struct mbstat mbstat;
+/*
+ * tunable_mbinit() has to be run before init_maxsockets() thus
+ * the SYSINIT order below is SI_ORDER_MIDDLE while init_maxsockets()
+ * runs at SI_ORDER_ANY.
+ */
static void
tunable_mbinit(void *dummy)
{
@@ -113,7 +118,7 @@ tunable_mbinit(void *dummy)
nmbjumbo9 = nmbjumbop / 2;
nmbjumbo16 = nmbjumbo9 / 2;
}
-SYSINIT(tunable_mbinit, SI_SUB_TUNABLES, SI_ORDER_ANY, tunable_mbinit, NULL);
+SYSINIT(tunable_mbinit, SI_SUB_TUNABLES, SI_ORDER_MIDDLE, tunable_mbinit, NULL);
/* XXX: These should be tuneables. Can't change UMA limits on the fly. */
static int
Modified: head/sys/kern/uipc_socket.c
==============================================================================
--- head/sys/kern/uipc_socket.c Wed Dec 10 22:10:37 2008 (r185892)
+++ head/sys/kern/uipc_socket.c Wed Dec 10 22:17:09 2008 (r185893)
@@ -236,7 +236,8 @@ SYSCTL_PROC(_kern_ipc, OID_AUTO, maxsock
"Maximum number of sockets avaliable");
/*
- * Initialise maxsockets.
+ * Initialise maxsockets. This SYSINIT must be run after
+ * tunable_mbinit().
*/
static void
init_maxsockets(void *ignored)
More information about the svn-src-head
mailing list