| version 1.177, 2008/10/14 13:45:26 |
version 1.178, 2008/12/07 20:58:46 |
| Line 150 static kcondvar_t socurkva_cv; |
|
| Line 150 static kcondvar_t socurkva_cv; |
|
| static size_t sodopendfree(void); |
static size_t sodopendfree(void); |
| static size_t sodopendfreel(void); |
static size_t sodopendfreel(void); |
| |
|
| |
static void sysctl_kern_somaxkva_setup(void); |
| |
static struct sysctllog *socket_sysctllog; |
| |
|
| static vsize_t |
static vsize_t |
| sokvareserve(struct socket *so, vsize_t len) |
sokvareserve(struct socket *so, vsize_t len) |
| { |
{ |
|
|
| soinit(void) |
soinit(void) |
| { |
{ |
| |
|
| |
sysctl_kern_somaxkva_setup(); |
| |
|
| mutex_init(&so_pendfree_lock, MUTEX_DEFAULT, IPL_VM); |
mutex_init(&so_pendfree_lock, MUTEX_DEFAULT, IPL_VM); |
| softnet_lock = mutex_obj_alloc(MUTEX_DEFAULT, IPL_NONE); |
softnet_lock = mutex_obj_alloc(MUTEX_DEFAULT, IPL_NONE); |
| cv_init(&socurkva_cv, "sokva"); |
cv_init(&socurkva_cv, "sokva"); |
| Line 2260 sysctl_kern_somaxkva(SYSCTLFN_ARGS) |
|
| Line 2265 sysctl_kern_somaxkva(SYSCTLFN_ARGS) |
|
| return (error); |
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, |
CTLFLAG_PERMANENT, |
| CTLTYPE_NODE, "kern", NULL, |
CTLTYPE_NODE, "kern", NULL, |
| NULL, 0, NULL, 0, |
NULL, 0, NULL, 0, |
| CTL_KERN, CTL_EOL); |
CTL_KERN, CTL_EOL); |
| |
|
| sysctl_createv(clog, 0, NULL, NULL, |
sysctl_createv(&socket_sysctllog, 0, NULL, NULL, |
| CTLFLAG_PERMANENT|CTLFLAG_READWRITE, |
CTLFLAG_PERMANENT|CTLFLAG_READWRITE, |
| CTLTYPE_INT, "somaxkva", |
CTLTYPE_INT, "somaxkva", |
| SYSCTL_DESCR("Maximum amount of kernel memory to be " |
SYSCTL_DESCR("Maximum amount of kernel memory to be " |