freebsd-dev/sys/i386
John Baldwin 0108cce0a4 Adjust the order of operations in spinlock_enter() and spinlock_exit() to
work properly with single-stepping in a kernel debugger.  Specifically,
these routines have always disabled interrupts before increasing the nesting
count and restored the prior state of interrupts after decreasing the nesting
count to avoid problems with a nested interrupt not disabling interrupts
when acquiring a spin lock.  However, trap interrupts for single-stepping
can still occur even when interrupts are disabled.  Now the saved state of
interrupts is not saved in the thread until after interrupts have been
disabled and the nesting count has been increased.  Similarly, the saved
state from the thread cannot be read once the nesting count has been
decreased to zero.  To fix this, use temporary variables to store interrupt
state and shuffle it between the thread's MD area and the appropriate
registers.

In cooperation with:	bde
MFC after:     1 month
2010-11-05 13:42:58 +00:00
..
acpica Move <machine/apicreg.h> to <x86/apicreg.h>. 2010-11-01 18:18:46 +00:00
bios Introduce the new kernel sub-tree x86 which should contain all the code 2010-02-25 14:13:39 +00:00
compile
conf Now userland POSIX semaphore is based on umtx. The kernel module 2010-09-24 09:04:16 +00:00
i386 Adjust the order of operations in spinlock_enter() and spinlock_exit() to 2010-11-05 13:42:58 +00:00
ibcs2 Add macro DECLARE_MODULE_TIED to denote a module as requiring the 2010-10-12 09:18:17 +00:00
include Move <machine/apicreg.h> to <x86/apicreg.h>. 2010-11-01 18:18:46 +00:00
isa Use 'saveintr' instead of 'savecrit' or 'eflags' to hold the state returned 2010-10-25 15:31:13 +00:00
linux Add macro DECLARE_MODULE_TIED to denote a module as requiring the 2010-10-12 09:18:17 +00:00
pci Change the MPTable and $PIR PCI-PCI bridge drivers to inherit from the 2010-08-05 17:48:37 +00:00
svr4 Change some movl's to mov's. Newer GAS no longer accept 'movl' instructions 2009-01-31 11:37:21 +00:00
xbox Update d_mmap() to accept vm_ooffset_t and vm_memattr_t. 2009-12-29 21:51:28 +00:00
xen Move <machine/apicreg.h> to <x86/apicreg.h>. 2010-11-01 18:18:46 +00:00
Makefile Update entries for building tags. 2007-05-13 18:21:54 +00:00