From 29ea153b133f29de1f76c8f87cdb0aa6300f6813 Mon Sep 17 00:00:00 2001 From: alc Date: Sat, 3 Jul 1999 06:33:48 +0000 Subject: An SMP-specific change: Add the lock prefix to RMW operations on ipending. --- sys/i386/isa/ipl.s | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'sys/i386/isa/ipl.s') 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 -- cgit v1.1