Make somaxkva modifyable via sysctl (and compile-time) instead of
hardcoding its size.
This commit is contained in:
parent
c6308a0598
commit
ef18f28fe4
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: kern_sysctl.c,v 1.137 2003/06/29 22:31:24 fvdl Exp $ */
|
||||
/* $NetBSD: kern_sysctl.c,v 1.138 2003/07/02 20:07:45 ragge Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 1982, 1986, 1989, 1993
|
||||
|
@ -43,7 +43,7 @@
|
|||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: kern_sysctl.c,v 1.137 2003/06/29 22:31:24 fvdl Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: kern_sysctl.c,v 1.138 2003/07/02 20:07:45 ragge Exp $");
|
||||
|
||||
#include "opt_ddb.h"
|
||||
#include "opt_insecure.h"
|
||||
|
@ -586,6 +586,18 @@ kern_sysctl(int *name, u_int namelen, void *oldp, size_t *oldlenp,
|
|||
#endif
|
||||
case KERN_MAXPHYS:
|
||||
return (sysctl_rdint(oldp, oldlenp, newp, MAXPHYS));
|
||||
case KERN_SOMAXKVA:
|
||||
{
|
||||
int new_somaxkva = somaxkva;
|
||||
|
||||
error = sysctl_int(oldp, oldlenp, newp, newlen, &new_somaxkva);
|
||||
if (newp && !error) {
|
||||
if (new_somaxkva < (16 * 1024 * 1024)) /* sanity */
|
||||
return (EINVAL);
|
||||
somaxkva = new_somaxkva;
|
||||
}
|
||||
return (error);
|
||||
}
|
||||
case KERN_SBMAX:
|
||||
{
|
||||
int new_sbmax = sb_max;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: uipc_socket.c,v 1.83 2003/06/29 22:31:30 fvdl Exp $ */
|
||||
/* $NetBSD: uipc_socket.c,v 1.84 2003/07/02 20:07:45 ragge Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 2002 The NetBSD Foundation, Inc.
|
||||
|
@ -72,11 +72,12 @@
|
|||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: uipc_socket.c,v 1.83 2003/06/29 22:31:30 fvdl Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: uipc_socket.c,v 1.84 2003/07/02 20:07:45 ragge Exp $");
|
||||
|
||||
#include "opt_sock_counters.h"
|
||||
#include "opt_sosend_loan.h"
|
||||
#include "opt_mbuftrace.h"
|
||||
#include "opt_somaxkva.h"
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
|
@ -147,7 +148,10 @@ int use_sosend_loan = 1;
|
|||
|
||||
struct mbuf *so_pendfree;
|
||||
|
||||
int somaxkva = 16 * 1024 * 1024;
|
||||
#ifndef SOMAXKVA
|
||||
#define SOMAXKVA (16 * 1024 * 1024)
|
||||
#endif
|
||||
int somaxkva = SOMAXKVA;
|
||||
int socurkva;
|
||||
int sokvawaiters;
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: socketvar.h,v 1.62 2003/06/29 22:32:28 fvdl Exp $ */
|
||||
/* $NetBSD: socketvar.h,v 1.63 2003/07/02 20:07:46 ragge Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 1982, 1986, 1990, 1993
|
||||
|
@ -254,6 +254,7 @@ do { \
|
|||
|
||||
#ifdef _KERNEL
|
||||
extern u_long sb_max;
|
||||
extern int somaxkva;
|
||||
/* to catch callers missing new second argument to sonewconn: */
|
||||
#define sonewconn(head, connstatus) sonewconn1((head), (connstatus))
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: sysctl.h,v 1.95 2003/06/29 22:32:28 fvdl Exp $ */
|
||||
/* $NetBSD: sysctl.h,v 1.96 2003/07/02 20:07:47 ragge Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 1989, 1993
|
||||
|
@ -196,7 +196,8 @@ struct ctlname {
|
|||
#define KERN_POSIX_SPIN_LOCKS 70 /* int: POSIX Spin Locks option */
|
||||
#define KERN_POSIX_READER_WRITER_LOCKS 71 /* int: POSIX R/W Locks option */
|
||||
#define KERN_DUMP_ON_PANIC 72 /* int: dump on panic */
|
||||
#define KERN_MAXID 73 /* number of valid kern ids */
|
||||
#define KERN_SOMAXKVA 73 /* int: max socket kernel virtual mem */
|
||||
#define KERN_MAXID 74 /* number of valid kern ids */
|
||||
|
||||
|
||||
#define CTL_KERN_NAMES { \
|
||||
|
@ -273,6 +274,7 @@ struct ctlname {
|
|||
{ "posix_spin_locks", CTLTYPE_INT }, \
|
||||
{ "posix_reader_writer_locks", CTLTYPE_INT }, \
|
||||
{ "dump_on_panic", CTLTYPE_INT}, \
|
||||
{ "somaxkva", CTLTYPE_INT}, \
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
Loading…
Reference in New Issue