]> Zhao Yanbai Git Server - minix.git/commit
SMP - clock calibration spurious IRQ deadlock fix
authorTomas Hruby <tom@minix3.org>
Thu, 26 Jan 2012 11:39:40 +0000 (11:39 +0000)
committerTomas Hruby <tom@minix3.org>
Thu, 26 Jan 2012 11:39:40 +0000 (11:39 +0000)
commit5c0927e10889a18497faf7a76aa390e39ddf6993
tree36e900bc146c7c8f7013ea7f6c9f075bde474970
parentc468f4efa5a9414c23949372158e711bd7b82a29
SMP - clock calibration spurious IRQ deadlock fix

 - this patch fixes a deadlock which may occur if we get a
   spurious interrupt while calibrating clocks during the boot
   time. Since we never handle interrupts while in the kernel
   (BKL locked) the interrupt code locks the lock. This is a
   different situation, a corner case, boot time only. We do not
   return to userspace but to the kernel, so the BKL is not
   unlocked. So we need irq handler which leaves the BKL
   unlocked.  The clock handler does it already, this patch adds
   a dummy spurious irq handler for the same reason. It is better
   to handle the situation this way to keep the normal runtime
   code simple.
common/include/arch/i386/interrupt.h
kernel/arch/i386/apic.c