Module Name: src
Committed By: pooka
Date: Tue Aug 25 14:52:31 UTC 2015
Modified Files:
src/sys/kern: init_sysctl.c init_sysctl_base.c
Log Message:
Move a bunch of sysctl nodes from init_sysctl (kitchen sink sysctl file)
to init_sysctl_base (only base kernel defs). Main motivation was to
fix sysconf(_SC_NPROCESSORS) for Rumprun. As reported by neeraj on irc,
it returned -1 before this fix, so we were doing imaginary computing.
To generate a diff of this commit:
cvs rdiff -u -r1.208 -r1.209 src/sys/kern/init_sysctl.c
cvs rdiff -u -r1.6 -r1.7 src/sys/kern/init_sysctl_base.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/kern/init_sysctl.c
diff -u src/sys/kern/init_sysctl.c:1.208 src/sys/kern/init_sysctl.c:1.209
--- src/sys/kern/init_sysctl.c:1.208 Tue Jul 7 12:38:02 2015
+++ src/sys/kern/init_sysctl.c Tue Aug 25 14:52:31 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: init_sysctl.c,v 1.208 2015/07/07 12:38:02 justin Exp $ */
+/* $NetBSD: init_sysctl.c,v 1.209 2015/08/25 14:52:31 pooka Exp $ */
/*-
* Copyright (c) 2003, 2007, 2008, 2009 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: init_sysctl.c,v 1.208 2015/07/07 12:38:02 justin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: init_sysctl.c,v 1.209 2015/08/25 14:52:31 pooka Exp $");
#include "opt_sysv.h"
#include "opt_compat_netbsd.h"
@@ -607,82 +607,27 @@ SYSCTL_SETUP(sysctl_kern_setup, "sysctl
CTL_CREATE, CTL_EOL);
}
-SYSCTL_SETUP(sysctl_hw_setup, "sysctl hw subtree setup")
+SYSCTL_SETUP(sysctl_hw_misc_setup, "sysctl hw subtree misc setup")
{
- u_int u;
- u_quad_t q;
- const char *model = cpu_getmodel();
sysctl_createv(clog, 0, NULL, NULL,
CTLFLAG_PERMANENT,
- CTLTYPE_STRING, "model",
- SYSCTL_DESCR("Machine model"),
- NULL, 0, __UNCONST(model), 0,
- CTL_HW, HW_MODEL, CTL_EOL);
- sysctl_createv(clog, 0, NULL, NULL,
- CTLFLAG_PERMANENT,
- CTLTYPE_INT, "ncpu",
- SYSCTL_DESCR("Number of CPUs configured"),
- NULL, 0, &ncpu, 0,
- CTL_HW, HW_NCPU, CTL_EOL);
- sysctl_createv(clog, 0, NULL, NULL,
- CTLFLAG_PERMANENT|CTLFLAG_IMMEDIATE,
- CTLTYPE_INT, "byteorder",
- SYSCTL_DESCR("System byte order"),
- NULL, BYTE_ORDER, NULL, 0,
- CTL_HW, HW_BYTEORDER, CTL_EOL);
- u = ((u_int)physmem > (UINT_MAX / PAGE_SIZE)) ?
- UINT_MAX : physmem * PAGE_SIZE;
- sysctl_createv(clog, 0, NULL, NULL,
- CTLFLAG_PERMANENT|CTLFLAG_IMMEDIATE,
- CTLTYPE_INT, "physmem",
- SYSCTL_DESCR("Bytes of physical memory"),
- NULL, u, NULL, 0,
- CTL_HW, HW_PHYSMEM, CTL_EOL);
- sysctl_createv(clog, 0, NULL, NULL,
- CTLFLAG_PERMANENT,
CTLTYPE_INT, "usermem",
SYSCTL_DESCR("Bytes of non-kernel memory"),
sysctl_hw_usermem, 0, NULL, 0,
CTL_HW, HW_USERMEM, CTL_EOL);
sysctl_createv(clog, 0, NULL, NULL,
- CTLFLAG_PERMANENT|CTLFLAG_IMMEDIATE,
- CTLTYPE_INT, "pagesize",
- SYSCTL_DESCR("Software page size"),
- NULL, PAGE_SIZE, NULL, 0,
- CTL_HW, HW_PAGESIZE, CTL_EOL);
- sysctl_createv(clog, 0, NULL, NULL,
- CTLFLAG_PERMANENT|CTLFLAG_IMMEDIATE,
- CTLTYPE_INT, "alignbytes",
- SYSCTL_DESCR("Alignment constraint for all possible "
- "data types"),
- NULL, ALIGNBYTES, NULL, 0,
- CTL_HW, HW_ALIGNBYTES, CTL_EOL);
- sysctl_createv(clog, 0, NULL, NULL,
CTLFLAG_PERMANENT|CTLFLAG_READWRITE|CTLFLAG_HEX,
CTLTYPE_STRING, "cnmagic",
SYSCTL_DESCR("Console magic key sequence"),
sysctl_hw_cnmagic, 0, NULL, CNS_LEN,
CTL_HW, HW_CNMAGIC, CTL_EOL);
- q = (u_quad_t)physmem * PAGE_SIZE;
- sysctl_createv(clog, 0, NULL, NULL,
- CTLFLAG_PERMANENT|CTLFLAG_IMMEDIATE,
- CTLTYPE_QUAD, "physmem64",
- SYSCTL_DESCR("Bytes of physical memory"),
- NULL, q, NULL, 0,
- CTL_HW, HW_PHYSMEM64, CTL_EOL);
sysctl_createv(clog, 0, NULL, NULL,
CTLFLAG_PERMANENT,
CTLTYPE_QUAD, "usermem64",
SYSCTL_DESCR("Bytes of non-kernel memory"),
sysctl_hw_usermem, 0, NULL, 0,
CTL_HW, HW_USERMEM64, CTL_EOL);
- sysctl_createv(clog, 0, NULL, NULL,
- CTLFLAG_PERMANENT,
- CTLTYPE_INT, "ncpuonline",
- SYSCTL_DESCR("Number of CPUs online"),
- NULL, 0, &ncpuonline, 0,
- CTL_HW, HW_NCPUONLINE, CTL_EOL);
}
#ifdef DEBUG
Index: src/sys/kern/init_sysctl_base.c
diff -u src/sys/kern/init_sysctl_base.c:1.6 src/sys/kern/init_sysctl_base.c:1.7
--- src/sys/kern/init_sysctl_base.c:1.6 Tue Aug 25 14:32:34 2015
+++ src/sys/kern/init_sysctl_base.c Tue Aug 25 14:52:31 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: init_sysctl_base.c,v 1.6 2015/08/25 14:32:34 pooka Exp $ */
+/* $NetBSD: init_sysctl_base.c,v 1.7 2015/08/25 14:52:31 pooka Exp $ */
/*-
* Copyright (c) 2003, 2007, 2008, 2009 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: init_sysctl_base.c,v 1.6 2015/08/25 14:32:34 pooka Exp $");
+__KERNEL_RCSID(0, "$NetBSD: init_sysctl_base.c,v 1.7 2015/08/25 14:52:31 pooka Exp $");
#include <sys/types.h>
#include <sys/param.h>
@@ -185,9 +185,18 @@ SYSCTL_SETUP(sysctl_kernbase_setup, "sys
SYSCTL_SETUP(sysctl_hwbase_setup, "sysctl hw subtree base setup")
{
+ u_int u;
+ u_quad_t q;
+ const char *model = cpu_getmodel();
sysctl_createv(clog, 0, NULL, NULL,
CTLFLAG_PERMANENT,
+ CTLTYPE_STRING, "model",
+ SYSCTL_DESCR("Machine model"),
+ NULL, 0, __UNCONST(model), 0,
+ CTL_HW, HW_MODEL, CTL_EOL);
+ sysctl_createv(clog, 0, NULL, NULL,
+ CTLFLAG_PERMANENT,
CTLTYPE_STRING, "machine",
SYSCTL_DESCR("Machine class"),
NULL, 0, machine, 0,
@@ -198,6 +207,52 @@ SYSCTL_SETUP(sysctl_hwbase_setup, "sysct
SYSCTL_DESCR("Machine CPU class"),
NULL, 0, machine_arch, 0,
CTL_HW, HW_MACHINE_ARCH, CTL_EOL);
+ sysctl_createv(clog, 0, NULL, NULL,
+ CTLFLAG_PERMANENT,
+ CTLTYPE_INT, "ncpu",
+ SYSCTL_DESCR("Number of CPUs configured"),
+ NULL, 0, &ncpu, 0,
+ CTL_HW, HW_NCPU, CTL_EOL);
+ sysctl_createv(clog, 0, NULL, NULL,
+ CTLFLAG_PERMANENT|CTLFLAG_IMMEDIATE,
+ CTLTYPE_INT, "byteorder",
+ SYSCTL_DESCR("System byte order"),
+ NULL, BYTE_ORDER, NULL, 0,
+ CTL_HW, HW_BYTEORDER, CTL_EOL);
+ u = ((u_int)physmem > (UINT_MAX / PAGE_SIZE)) ?
+ UINT_MAX : physmem * PAGE_SIZE;
+ sysctl_createv(clog, 0, NULL, NULL,
+ CTLFLAG_PERMANENT|CTLFLAG_IMMEDIATE,
+ CTLTYPE_INT, "physmem",
+ SYSCTL_DESCR("Bytes of physical memory"),
+ NULL, u, NULL, 0,
+ CTL_HW, HW_PHYSMEM, CTL_EOL);
+ sysctl_createv(clog, 0, NULL, NULL,
+ CTLFLAG_PERMANENT|CTLFLAG_IMMEDIATE,
+ CTLTYPE_INT, "pagesize",
+ SYSCTL_DESCR("Software page size"),
+ NULL, PAGE_SIZE, NULL, 0,
+ CTL_HW, HW_PAGESIZE, CTL_EOL);
+ sysctl_createv(clog, 0, NULL, NULL,
+ CTLFLAG_PERMANENT|CTLFLAG_IMMEDIATE,
+ CTLTYPE_INT, "alignbytes",
+ SYSCTL_DESCR("Alignment constraint for all possible "
+ "data types"),
+ NULL, ALIGNBYTES, NULL, 0,
+ CTL_HW, HW_ALIGNBYTES, CTL_EOL);
+ q = (u_quad_t)physmem * PAGE_SIZE;
+ sysctl_createv(clog, 0, NULL, NULL,
+ CTLFLAG_PERMANENT|CTLFLAG_IMMEDIATE,
+ CTLTYPE_QUAD, "physmem64",
+ SYSCTL_DESCR("Bytes of physical memory"),
+ NULL, q, NULL, 0,
+ CTL_HW, HW_PHYSMEM64, CTL_EOL);
+ sysctl_createv(clog, 0, NULL, NULL,
+ CTLFLAG_PERMANENT,
+ CTLTYPE_INT, "ncpuonline",
+ SYSCTL_DESCR("Number of CPUs online"),
+ NULL, 0, &ncpuonline, 0,
+ CTL_HW, HW_NCPUONLINE, CTL_EOL);
}
/*