On 06/21/2007 12:08 PM, Ingo Molnar wrote:
quoted text > yeah - i'm not at all arguing in favor of the BTRL patch i did: i always
> liked the 'nicer' inner loop of spinlocks, which could btw also easily
> use MONITOR/MWAIT.
The "nice" inner loop is necessary or else it would generate huge amounts
of bus traffic while spinning.
quoted text > So it seems the problem was that if a core kept _truly_ modifying a
> cacheline via atomics in a high enough frequency, it could artificially
> starve the other core. (which would keep waiting for the cacheline to be
> released one day, and which kept the first core from ever making any
> progress) To me that looks like a real problem on the hardware side -
> shouldnt cacheline ownership be arbitrated a bit better than that?
>
A while ago I showed that spinlocks were a lot more fair when doing
unlock with the xchg instruction on x86. Probably the arbitration is all
screwed up because we use a mov instruction, which while atomic is not
locked.
-
unsubscribe notice To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
majordomo@vger.kernel.org
More majordomo info at
http://vger.kernel.org/majordomo-info.html
Please read the FAQ at
http://www.tux.org/lkml/
Messages in current thread:
Re: [BUG] long freezes on thinkpad t60 , Chuck Ebbert , (Thu Jun 21, 12:44 pm)