From owner-cvs-sys Sat Aug 23 17:06:38 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.7/8.8.7) id RAA22957 for cvs-sys-outgoing; Sat, 23 Aug 1997 17:06:38 -0700 (PDT) Received: from freefall.freebsd.org (freefall.FreeBSD.ORG [204.216.27.21]) by hub.freebsd.org (8.8.7/8.8.7) with ESMTP id RAA22923; Sat, 23 Aug 1997 17:06:04 -0700 (PDT) From: Steve Passe Received: (from fsmp@localhost) by freefall.freebsd.org (8.8.6/8.8.5) id RAA10511; Sat, 23 Aug 1997 17:05:38 -0700 (PDT) Date: Sat, 23 Aug 1997 17:05:38 -0700 (PDT) Message-Id: <199708240005.RAA10511@freefall.freebsd.org> To: cvs-committers@FreeBSD.ORG, cvs-all@FreeBSD.ORG, cvs-sys@FreeBSD.ORG Subject: cvs commit: src/sys/i386/include param.h src/sys/i386/isa apic_ipl.s apic_vector.s icu_ipl.s ipl.s ipl_funcs.c src/sys/i386/i386 exception.s locore.s microtime.s simplelock.s Sender: owner-cvs-sys@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk fsmp 1997/08/23 17:05:38 PDT Modified files: sys/i386/include param.h sys/i386/isa apic_ipl.s apic_vector.s icu_ipl.s ipl.s ipl_funcs.c sys/i386/i386 exception.s locore.s microtime.s simplelock.s Log: The last of the encapsolation of cpl/spl/ipending things into a critical region protected by the simplelock 'cpl_lock'. Notes: - this code is currently controlled on a section by section basis with defines in machine/param.h. All sections are currently enabled. - this code is not as clean as I would like, but that can wait till later. - the "giant lock" still surrounds most instances of this "cpl region". I still have to do the code that arbitrates setting cpl between the top and bottom halves of the kernel. - the possibility of deadlock exists, I am committing the code at this point so as to exercise it and detect any such cases B4 the "giant lock" is removed. Revision Changes Path 1.37 +64 -2 src/sys/i386/include/param.h 1.14 +87 -26 src/sys/i386/isa/apic_ipl.s 1.18 +40 -25 src/sys/i386/isa/apic_vector.s 1.2 +68 -1 src/sys/i386/isa/icu_ipl.s 1.11 +59 -79 src/sys/i386/isa/ipl.s 1.3 +157 -4 src/sys/i386/isa/ipl_funcs.c 1.41 +63 -12 src/sys/i386/i386/exception.s 1.95 +4 -3 src/sys/i386/i386/locore.s 1.29 +11 -3 src/sys/i386/i386/microtime.s 1.3 +50 -2 src/sys/i386/i386/simplelock.s