summaryrefslogtreecommitdiffstats
path: root/sys/i386/isa/ipl.s
diff options
context:
space:
mode:
authoralc <alc@FreeBSD.org>1999-07-03 06:33:48 +0000
committeralc <alc@FreeBSD.org>1999-07-03 06:33:48 +0000
commit29ea153b133f29de1f76c8f87cdb0aa6300f6813 (patch)
treef3a4cc0523e80c037532c075fb287d8c3ab46eb5 /sys/i386/isa/ipl.s
parentb6270032c16f447c90a1390dfde49f9918a6e2bc (diff)
downloadFreeBSD-src-29ea153b133f29de1f76c8f87cdb0aa6300f6813.zip
FreeBSD-src-29ea153b133f29de1f76c8f87cdb0aa6300f6813.tar.gz
An SMP-specific change: Add the lock prefix to RMW operations
on ipending.
Diffstat (limited to 'sys/i386/isa/ipl.s')
-rw-r--r--sys/i386/isa/ipl.s5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/i386/isa/ipl.s b/sys/i386/isa/ipl.s
index 66f31cf..51e8329 100644
--- a/sys/i386/isa/ipl.s
+++ b/sys/i386/isa/ipl.s
@@ -36,7 +36,7 @@
*
* @(#)ipl.s
*
- * $Id: ipl.s,v 1.27 1999/05/06 09:44:54 bde Exp $
+ * $Id: ipl.s,v 1.28 1999/06/01 18:20:15 jlemon Exp $
*/
@@ -236,6 +236,7 @@ doreti_unpend:
TEST_CIL
/* we enter with cpl locked */
bsfl %ecx, %ecx /* slow, but not worth optimizing */
+ lock
btrl %ecx, _ipending
jnc doreti_next2 /* some intr cleared memory copy */
cmpl $NHWI, %ecx
@@ -377,7 +378,7 @@ swi_ast_phantom:
*/
cli
ICPL_LOCK
- orl $SWI_AST_PENDING, _ipending
+ MPLOCKED orl $SWI_AST_PENDING, _ipending
/* cpl is unlocked in doreti_exit */
subl %eax,%eax
#ifdef CPL_AND_CML
OpenPOWER on IntegriCloud