Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. =================================================================== RCS file: /ftp/cvs/cvsroot/src/sys/kern/uipc_socket.c,v retrieving revision 1.168.2.1 retrieving revision 1.168.2.2 diff -u -p -r1.168.2.1 -r1.168.2.2 --- src/sys/kern/uipc_socket.c 2008/10/19 22:17:29 1.168.2.1 +++ src/sys/kern/uipc_socket.c 2008/12/13 01:15:09 1.168.2.2 @@ -1,4 +1,4 @@ -/* $NetBSD: uipc_socket.c,v 1.168.2.1 2008/10/19 22:17:29 haad Exp $ */ +/* $NetBSD: uipc_socket.c,v 1.168.2.2 2008/12/13 01:15:09 haad Exp $ */ /*- * Copyright (c) 2002, 2007, 2008 The NetBSD Foundation, Inc. @@ -63,7 +63,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: uipc_socket.c,v 1.168.2.1 2008/10/19 22:17:29 haad Exp $"); +__KERNEL_RCSID(0, "$NetBSD: uipc_socket.c,v 1.168.2.2 2008/12/13 01:15:09 haad Exp $"); #include "opt_sock_counters.h" #include "opt_sosend_loan.h" @@ -150,6 +150,9 @@ static kcondvar_t socurkva_cv; static size_t sodopendfree(void); static size_t sodopendfreel(void); +static void sysctl_kern_somaxkva_setup(void); +static struct sysctllog *socket_sysctllog; + static vsize_t sokvareserve(struct socket *so, vsize_t len) { @@ -423,6 +426,8 @@ void soinit(void) { + sysctl_kern_somaxkva_setup(); + mutex_init(&so_pendfree_lock, MUTEX_DEFAULT, IPL_VM); softnet_lock = mutex_obj_alloc(MUTEX_DEFAULT, IPL_NONE); cv_init(&socurkva_cv, "sokva"); @@ -2260,16 +2265,18 @@ sysctl_kern_somaxkva(SYSCTLFN_ARGS) return (error); } -SYSCTL_SETUP(sysctl_kern_somaxkva_setup, "sysctl kern.somaxkva setup") +static void +sysctl_kern_somaxkva_setup() { - sysctl_createv(clog, 0, NULL, NULL, + KASSERT(socket_sysctllog == NULL); + sysctl_createv(&socket_sysctllog, 0, NULL, NULL, CTLFLAG_PERMANENT, CTLTYPE_NODE, "kern", NULL, NULL, 0, NULL, 0, CTL_KERN, CTL_EOL); - sysctl_createv(clog, 0, NULL, NULL, + sysctl_createv(&socket_sysctllog, 0, NULL, NULL, CTLFLAG_PERMANENT|CTLFLAG_READWRITE, CTLTYPE_INT, "somaxkva", SYSCTL_DESCR("Maximum amount of kernel memory to be "