Date: Sat, 30 Aug 1997 20:17:50 -0700 (PDT) From: Steve Passe <fsmp@FreeBSD.ORG> To: cvs-committers@FreeBSD.ORG, cvs-all@FreeBSD.ORG, cvs-sys@FreeBSD.ORG Subject: cvs commit: src/sys/i386/include lock.h smptests.h src/sys/i386/isa sio.c src/sys/i386/i386 mp_machdep.c simplelock.s Message-ID: <199708310317.UAA08194@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
fsmp 1997/08/30 20:17:50 PDT Modified files: sys/i386/include lock.h smptests.h sys/i386/i386 mp_machdep.c simplelock.s Log: Debug version of simple_lock. This will store the CPU id of the holding CPU along with the lock. When a CPU fails to get the lock it compares its own id to the holder id. If they are the same it panic()s, as simple locks are binary, and this would cause a deadlock. Controlled by smptests.h: SL_DEBUG, ON by default. Some minor cleanup. Revision Changes Path 1.2 +8 -9 src/sys/i386/include/lock.h 1.24 +15 -1 src/sys/i386/include/smptests.h 1.49 +11 -20 src/sys/i386/i386/mp_machdep.c 1.6 +88 -1 src/sys/i386/i386/simplelock.s Modified files: sys/i386/isa sio.c Log: Created a private simple_lock to control accesses to com data structs and hardware. There is now another simple_lock around clock data/hardware accesses in clock.c and microtime.s. It is my belief that this is the only area sio/cy might stumble into during an unblocked INTerrupt. Thus I separated the sio/cy code from the generic disable_intr()/enable_intr() routines. Controlled by smptests.h: USE_COMLOCK, ON by default. Revision Changes Path 1.179 +76 -51 src/sys/i386/isa/sio.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199708310317.UAA08194>