summaryrefslogtreecommitdiffstats
path: root/sys/kern/subr_smp.c
diff options
context:
space:
mode:
authorrrs <rrs@FreeBSD.org>2010-05-16 19:43:48 +0000
committerrrs <rrs@FreeBSD.org>2010-05-16 19:43:48 +0000
commit8ea4ab29a0e5c107b9aa81880eb890891c9eddcc (patch)
treef9290edd49051e8d01267722df09887131e2820c /sys/kern/subr_smp.c
parent862dd3e32604da80d67e56a2e31e84c205bf88d3 (diff)
downloadFreeBSD-src-8ea4ab29a0e5c107b9aa81880eb890891c9eddcc.zip
FreeBSD-src-8ea4ab29a0e5c107b9aa81880eb890891c9eddcc.tar.gz
This pushes all of JC's patches that I have in place. I
am now able to run 32 cores ok.. but I still will hang on buildworld with a NFS problem. I suspect I am missing a patch for the netlogic rge driver. JC check and see if I am missing anything except your core-mask changes Obtained from: JC
Diffstat (limited to 'sys/kern/subr_smp.c')
-rw-r--r--sys/kern/subr_smp.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/kern/subr_smp.c b/sys/kern/subr_smp.c
index fb19b0e..45a374e 100644
--- a/sys/kern/subr_smp.c
+++ b/sys/kern/subr_smp.c
@@ -503,7 +503,10 @@ smp_topo_none(void)
top = &group[0];
top->cg_parent = NULL;
top->cg_child = NULL;
- top->cg_mask = (1 << mp_ncpus) - 1;
+ if (mp_ncpus == sizeof(top->cg_mask) * 8)
+ top->cg_mask = -1;
+ else
+ top->cg_mask = (1 << mp_ncpus) - 1;
top->cg_count = mp_ncpus;
top->cg_children = 0;
top->cg_level = CG_SHARE_NONE;
OpenPOWER on IntegriCloud