diff options
author | Jake Burkholder <jake@FreeBSD.org> | 2002-12-28 23:21:13 +0000 |
---|---|---|
committer | Jake Burkholder <jake@FreeBSD.org> | 2002-12-28 23:21:13 +0000 |
commit | dcc4093c7a5ce7e2d7b9ba6f3cb806e4c02f6de1 (patch) | |
tree | 6f52837c0228d2c69110df10b1806e8bda17c2d3 /sys/kern/subr_smp.c | |
parent | 2ee5fea7d31c034ba15d7fb478b6fad34292adea (diff) | |
download | src-dcc4093c7a5ce7e2d7b9ba6f3cb806e4c02f6de1.tar.gz src-dcc4093c7a5ce7e2d7b9ba6f3cb806e4c02f6de1.zip |
Add a tunable kern.smp.disabled for disabling explicitly smp on an smp
kernel.
Notes
Notes:
svn path=/head/; revision=108371
Diffstat (limited to 'sys/kern/subr_smp.c')
-rw-r--r-- | sys/kern/subr_smp.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/sys/kern/subr_smp.c b/sys/kern/subr_smp.c index cfdd94ce0854..7965b78fdb38 100644 --- a/sys/kern/subr_smp.c +++ b/sys/kern/subr_smp.c @@ -62,6 +62,10 @@ SYSCTL_NODE(_kern, OID_AUTO, smp, CTLFLAG_RD, NULL, "Kernel SMP"); int smp_active = 0; /* are the APs allowed to run? */ SYSCTL_INT(_kern_smp, OID_AUTO, active, CTLFLAG_RW, &smp_active, 0, ""); +int smp_disabled = 0; /* has smp been disabled? */ +SYSCTL_INT(_kern_smp, OID_AUTO, disabled, CTLFLAG_RD, &smp_disabled, 0, ""); +TUNABLE_INT("kern.smp.disabled", &smp_disabled); + int smp_cpus = 1; /* how many cpu's running */ SYSCTL_INT(_kern_smp, OID_AUTO, cpus, CTLFLAG_RD, &smp_cpus, 0, ""); @@ -102,7 +106,7 @@ mp_start(void *dummy) { /* Probe for MP hardware. */ - if (mp_probe_status == 0) + if (mp_probe_status == 0 || smp_disabled != 0) return; mtx_init(&smp_rv_mtx, "smp rendezvous", NULL, MTX_SPIN); |