Date: Sun, 1 Jul 2012 17:15:50 +0000 (UTC) From: Marcel Moolenaar <marcel@FreeBSD.org> To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r237933 - projects/altix2/sys/ia64/ia64 Message-ID: <201207011715.q61HFoN6014222@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: marcel Date: Sun Jul 1 17:15:50 2012 New Revision: 237933 URL: http://svn.freebsd.org/changeset/base/237933 Log: Fire up our APs as soon as we kick the scheduler. We've woken them a long time back anyway, so they've been sitting idle for long enough. More importantly: the Altix PROM has assigned interrupts to CPUs and having our APs on hold means that we can't handle inteerupts that go to CPUs other than the APs -- this happens when we're doing interrupt based configuration (SI_SUB_INT_CONFIG_HOOKS). On NUMA machines like the Altix, it's infinitely better to have each brick probe and attach its own devices, so waking the APs sooner is generally a good idea. This is but a small step towards full SMP booting though... Modified: projects/altix2/sys/ia64/ia64/mp_machdep.c Modified: projects/altix2/sys/ia64/ia64/mp_machdep.c ============================================================================== --- projects/altix2/sys/ia64/ia64/mp_machdep.c Sun Jul 1 17:06:21 2012 (r237932) +++ projects/altix2/sys/ia64/ia64/mp_machdep.c Sun Jul 1 17:15:50 2012 (r237933) @@ -533,4 +533,4 @@ ipi_send(struct pcpu *cpu, int xiv) CTR3(KTR_SMP, "ipi_send(%p, %d): cpuid=%d", cpu, xiv, PCPU_GET(cpuid)); } -SYSINIT(start_aps, SI_SUB_SMP, SI_ORDER_FIRST, cpu_mp_unleash, NULL); +SYSINIT(start_aps, SI_SUB_KICK_SCHEDULER, SI_ORDER_ANY, cpu_mp_unleash, NULL);
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201207011715.q61HFoN6014222>