diff options
author | Miod Vallat <miod@cvs.openbsd.org> | 2005-05-01 09:55:50 +0000 |
---|---|---|
committer | Miod Vallat <miod@cvs.openbsd.org> | 2005-05-01 09:55:50 +0000 |
commit | 5f77a732972cb1329a2fd64dd2fe6540c1dfbee6 (patch) | |
tree | 1923315eff03edf7109969e6cd13e2e68f0c871e /sys/arch/hp300 | |
parent | 6e9804297a3ff083bc61d8f4b088f1d2766a559d (diff) |
Bring raise-only semantics to splsoft* on m68k and m88k, as done elsewhere.
Diffstat (limited to 'sys/arch/hp300')
-rw-r--r-- | sys/arch/hp300/hp300/trap.c | 4 | ||||
-rw-r--r-- | sys/arch/hp300/include/intr.h | 26 |
2 files changed, 11 insertions, 19 deletions
diff --git a/sys/arch/hp300/hp300/trap.c b/sys/arch/hp300/hp300/trap.c index a492b906080..b73a1ef71b8 100644 --- a/sys/arch/hp300/hp300/trap.c +++ b/sys/arch/hp300/hp300/trap.c @@ -1,4 +1,4 @@ -/* $OpenBSD: trap.c,v 1.46 2005/01/15 21:13:08 miod Exp $ */ +/* $OpenBSD: trap.c,v 1.47 2005/05/01 09:55:47 miod Exp $ */ /* $NetBSD: trap.c,v 1.57 1998/02/16 20:58:31 thorpej Exp $ */ /* @@ -549,7 +549,7 @@ dopanic: * check. Note that we ensure that we are at least at SIR * IPL while processing the SIR. */ - spl1(); + splsoft(); /* FALLTHROUGH */ case T_SSIR: /* software interrupt */ diff --git a/sys/arch/hp300/include/intr.h b/sys/arch/hp300/include/intr.h index 4b97d69e245..5fa0590580e 100644 --- a/sys/arch/hp300/include/intr.h +++ b/sys/arch/hp300/include/intr.h @@ -1,4 +1,4 @@ -/* $OpenBSD: intr.h,v 1.15 2005/04/19 15:29:47 mickey Exp $ */ +/* $OpenBSD: intr.h,v 1.16 2005/05/01 09:55:49 miod Exp $ */ /* $NetBSD: intr.h,v 1.2 1997/07/24 05:43:08 scottr Exp $ */ /*- @@ -88,15 +88,6 @@ struct isr { _spl_r; \ }) -/* spl0 requires checking for software interrupts */ -#define spl1() _spl(PSL_S|PSL_IPL1) -#define spl2() _spl(PSL_S|PSL_IPL2) -#define spl3() _spl(PSL_S|PSL_IPL3) -#define spl4() _spl(PSL_S|PSL_IPL4) -#define spl5() _spl(PSL_S|PSL_IPL5) -#define spl6() _spl(PSL_S|PSL_IPL6) -#define spl7() _spl(PSL_S|PSL_IPL7) - /* * These four globals contain the appropriate PSL_S|PSL_IPL? values * to raise interupt priority to the requested level. @@ -126,19 +117,20 @@ extern unsigned short hp300_impipl; #define IPL_HIGH 7 /* These spl calls are used by machine-independent code. */ -#define splsoftclock() spl1() -#define splsoftnet() spl1() +#define splsoft() _splraise(PSL_S | PSL_IPL1) +#define splsoftclock() splsoft() +#define splsoftnet() splsoft() #define splbio() _splraise(hp300_bioipl) #define splnet() _splraise(hp300_netipl) #define spltty() _splraise(hp300_ttyipl) #define splimp() _splraise(hp300_impipl) -#define splclock() spl6() -#define splstatclock() spl6() -#define splvm() splimp() -#define splhigh() spl7() +#define splclock() _splraise(PSL_S | PSL_IPL6) +#define splstatclock() _splraise(PSL_S | PSL_IPL6) +#define splvm() _splraise(hp300_impipl) +#define splhigh() _spl(PSL_S | PSL_IPL7) /* watch out for side effects */ -#define splx(s) ((s) & PSL_IPL ? _spl((s)) : spl0()) +#define splx(s) ((s) & PSL_IPL ? _spl((s)) : spl0()) /* * Simulated software interrupt register. |