[Linux-ia64] Re: ia64_spinlock_contention and NEW_LOCK

David Mosberger
2003-03-13T22:26:28Z

>>>>> On Fri, 14 Mar 2003 09:20:12 +1100, Keith Owens <kaos@sgi.com> said:

Keith> I am not touching the real ar.pfs, precisely to avoid
Keith> changing leaf routines. Setting r29 to 0 and .save ar.pfs,
Keith> r29 in ia64_unwind_contention will fool the unwind code into
Keith> doing the unwind correctly but without changing the state of
Keith> the routine using spin_lock().

Ah, sorry, I didn't read your mail carefully enough. Hmmh, not
exactly a pretty solution, but I don't see anything obviously wrong
with it either. With libunwind, you could in fact say

.save ar.pfs,r0

but I don't remember whether this would work with the kernel unwinder
(if it doesn't, it would be easy to fix though).

--david