Re: Serious problem with ticket spinlocks on ia64

From: Petr Tesarik
Date: Fri Sep 03 2010 - 10:52:27 EST


On Friday 03 of September 2010 16:35:23 Petr Tesarik wrote:
> On Friday 03 of September 2010 11:04:37 Petr Tesarik wrote:
> > [...]
> > I'm now trying to modify the lock primitives:
> >
> > 1. replace the fetchadd4.acq with looping over cmpxchg
>
> I did this and I feel dumber than ever.

One more thing - the crash dump I got from that run shows that CPU 2 was just
going through zap_page_range(), so it probably also did a few global TLB
flushes. I'm not sure how this should matter, but any idea is good now, I
think.

Anyway, if a global TLB flush is necessary to trigger the bug, it would also
explain why we couldn't reproduce it in user-space.

OK, I know I'm just wildly guessing (and don't have any explanation for the
wrap-around mystery) ... but does anybody have a better idea?

Petr Tesarik
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/