summaryrefslogtreecommitdiff
path: root/arch/x86/mm/ioremap.c
diff options
context:
space:
mode:
authorJeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>2009-09-09 12:33:51 -0700
committerJeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>2009-09-09 16:38:11 -0700
commit4d576b57b50a92801e6493e76e5243d6cff193d2 (patch)
treed02bbb6713f47e3cd26643c36d2dcada0ff1dccc /arch/x86/mm/ioremap.c
parent577eebeae34d340685d8985dfdb7dfe337c511e8 (diff)
xen: only enable interrupts while actually blocking for spinlock
Where possible we enable interrupts while waiting for a spinlock to become free, in order to reduce big latency spikes in interrupt handling. However, at present if we manage to pick up the spinlock just before blocking, we'll end up holding the lock with interrupts enabled for a while. This will cause a deadlock if we recieve an interrupt in that window, and the interrupt handler tries to take the lock too. Solve this by shrinking the interrupt-enabled region to just around the blocking call. [ Impact: avoid race/deadlock when using Xen PV spinlocks ] Reported-by: "Yang, Xiaowei" <xiaowei.yang@intel.com> Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Diffstat (limited to 'arch/x86/mm/ioremap.c')
0 files changed, 0 insertions, 0 deletions