Messages in this thread | | | Date | Mon, 2 Nov 2009 21:09:59 +0300 | From | Cyrill Gorcunov <> | Subject | Re: [patch][rfc] x86, mutex: non-atomic unlock (and a rant) |
| |
[Cyrill Gorcunov - Mon, Nov 02, 2009 at 07:46:26PM +0300] | | The other option could be that we put two mem-write operations | like | int tmp; | atomic_set(&lock->count, 1); | tmp = lock->waiters; | rmb(); | lock->waiters = tmp; | if (unlikely(lock->waiters)) | fail_fn(lock); | | Which should work faster then cpuid (and we have to be sure somehow | that gcc doesn't suppress this redundant operations). |
And which has nothing to do with OoO mem-read, and wouldn't work. Sorry for noise.
-- Cyrill
| |