svn commit: r212559 - head/sys/powerpc/powerpc
Nathan Whitehorn
nwhitehorn at FreeBSD.org
Mon Sep 13 15:36:42 UTC 2010
Author: nwhitehorn
Date: Mon Sep 13 15:36:42 2010
New Revision: 212559
URL: http://svn.freebsd.org/changeset/base/212559
Log:
Fix a subtle bug uncovered by the recent one-shot timer import in which
any spin locks acquired between the enabling of interrupts in
machdep_ap_bootstrap() and the invocation of the scheduler would fail to
have interrupts disabled due to the fake spinlock already held by the
idle thread. sched_throw(NULL) will enable interrupts by itself when
exiting this spinlock, so just let it do that and don't enable interrupts
here.
Modified:
head/sys/powerpc/powerpc/mp_machdep.c
Modified: head/sys/powerpc/powerpc/mp_machdep.c
==============================================================================
--- head/sys/powerpc/powerpc/mp_machdep.c Mon Sep 13 15:30:09 2010 (r212558)
+++ head/sys/powerpc/powerpc/mp_machdep.c Mon Sep 13 15:36:42 2010 (r212559)
@@ -94,9 +94,6 @@ machdep_ap_bootstrap(void)
/* Start per-CPU event timers. */
cpu_initclocks_ap();
- /* Let the DEC and external interrupts go */
- mtmsr(mfmsr() | PSL_EE);
-
/* Announce ourselves awake, and enter the scheduler */
sched_throw(NULL);
}
More information about the svn-src-all
mailing list