Make sure to enable interrupts before lower IPL so we don't block any
interrupts (IPI) we shouldn't.
This commit is contained in:
parent
25486664b0
commit
080d581a20
|
@ -1,4 +1,4 @@
|
||||||
/* $NetBSD: locore_subr.S,v 1.25 2004/07/09 22:00:46 matt Exp $ */
|
/* $NetBSD: locore_subr.S,v 1.26 2004/12/04 05:56:28 matt Exp $ */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2001 Wasabi Systems, Inc.
|
* Copyright (c) 2001 Wasabi Systems, Inc.
|
||||||
|
@ -164,10 +164,10 @@ ASENTRY(Idle)
|
||||||
bl _C_LABEL(sched_unlock_idle)
|
bl _C_LABEL(sched_unlock_idle)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
li %r3,0 /* go IPL_SCHED to IPL_NONE */
|
/*
|
||||||
bl _C_LABEL(lcsplx)
|
* Re-enable interrupts before lowering IPL so we won't
|
||||||
mr %r31,%r3 /* save returned IPL mask */
|
* block them when we shouldn't.
|
||||||
|
*/
|
||||||
#if defined(PPC_IBM4XX)
|
#if defined(PPC_IBM4XX)
|
||||||
wrteei 1 /* reenable ints again */
|
wrteei 1 /* reenable ints again */
|
||||||
#else /* PPC_OEA */
|
#else /* PPC_OEA */
|
||||||
|
@ -177,6 +177,10 @@ ASENTRY(Idle)
|
||||||
isync
|
isync
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
li %r3,0 /* go IPL_SCHED to IPL_NONE */
|
||||||
|
bl _C_LABEL(lcsplx)
|
||||||
|
mr %r31,%r3 /* save returned IPL mask */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* At this point, other routines can be called (such as uvm_pageidlezero).
|
* At this point, other routines can be called (such as uvm_pageidlezero).
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Reference in New Issue