From 803cb2a2ba1f8847bbb7ea2f1c36cfc14a645091 Mon Sep 17 00:00:00 2001 From: jeff Date: Wed, 20 Mar 2002 04:39:32 +0000 Subject: Backout part of my previous commit; I was wrong about vm_zone's handling of limits on zones w/o objects. --- sys/kern/uipc_socket2.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'sys/kern/uipc_socket2.c') diff --git a/sys/kern/uipc_socket2.c b/sys/kern/uipc_socket2.c index 3145e3f..40907f9 100644 --- a/sys/kern/uipc_socket2.c +++ b/sys/kern/uipc_socket2.c @@ -55,6 +55,8 @@ #include /* for aio_swake proto */ #include +int maxsockets; + void (*aio_swake)(struct socket *, struct sockbuf *); /* @@ -1002,5 +1004,17 @@ SYSCTL_INT(_kern, KERN_DUMMY, dummy, CTLFLAG_RW, &dummy, 0, ""); SYSCTL_INT(_kern_ipc, KIPC_MAXSOCKBUF, maxsockbuf, CTLFLAG_RW, &sb_max, 0, "Maximum socket buffer size"); +SYSCTL_INT(_kern_ipc, OID_AUTO, maxsockets, CTLFLAG_RD, + &maxsockets, 0, "Maximum number of sockets avaliable"); SYSCTL_INT(_kern_ipc, KIPC_SOCKBUF_WASTE, sockbuf_waste_factor, CTLFLAG_RW, &sb_efficiency, 0, ""); + +/* + * Initialise maxsockets + */ +static void init_maxsockets(void *ignored) +{ + TUNABLE_INT_FETCH("kern.ipc.maxsockets", &maxsockets); + maxsockets = imax(maxsockets, imax(maxfiles, nmbclusters)); +} +SYSINIT(param, SI_SUB_TUNABLES, SI_ORDER_ANY, init_maxsockets, NULL); -- cgit v1.1