On Thu, 24 Aug 2006 13:10:09 +1000
Nick Piggin <nickpiggin@xxxxxxxxxxxx> wrote:
Edward Falk wrote:
Add spin_lock_string_flags and _raw_spin_lock_flags() to asm-x86_64/spinlock.h so that _spin_lock_irqsave() has the same semantics on x86_64 as it does on i386 and does *not* have interrupts disabled while it is waiting for the lock.
This fix is courtesy of Michael Davidson
So, what's the bug? You shouldn't rely on these semantics anyway
because you should never expect to wait for a spinlock for so long
(and it may be the case that irqs can't be enabled anyway).
BTW. you should be cc'ing Andi Kleen (x86+/-64 maintainer) on
this type of stuff.
No comments on the merits of adding this feature. I suppose parity
with i386 is a good thing, though.
We put this into x86 ages ago and Andi ducked the x86_64 patch at the time.
I don't recall any reports about the x86 patch (Zwane?) improving or
worsening anything. I guess there are some theoretical interrupt latency
benefits.