Messages in this thread | | | Date | Thu, 5 Jun 2008 03:58:57 +0200 | From | Nick Piggin <> | Subject | Re: [PATCH 0/3] 64-bit futexes: Intro |
| |
On Thu, Jun 05, 2008 at 03:56:34AM +0200, Nick Piggin wrote: > > The other thing that could be possible, and I'd imagine maybe more likely > to be implemented in a real CPU because it should give more imrpovement > (and which does break my algorithm) is just that the load to the cacheline > may get to execute first, then if the cacheline gets evicted and > modified by another CPU before our store completes, we effectively see > store/load reordering again.
Well, I should qualify that: it doesn't actually break my algorithm because you can still implement the unlock without atomic RMWs. This may require you to have an mfence there, but we can still get away without atomics (whether that's much cheaper or not, I haven't measured recently!)
| |