Messages in this thread | | | Date | Tue, 1 Oct 2013 10:09:21 +0200 | From | Peter Zijlstra <> | Subject | Re: [PATCH] rwsem: reduce spinlock contention in wakeup code path |
| |
On Tue, Oct 01, 2013 at 09:28:15AM +0200, Ingo Molnar wrote: > That I mostly agree with, except that without a serious usecase do we have > a guarantee that bugs in fancies queueing in rwsems gets ironed out?
Methinks mmap_sem is still a big enough lock to work out a locking primitive :-)
In fact, try something like this from userspace:
n-threads:
pthread_mutex_lock(&mutex); foo = mmap(); pthread_mutex_lock(&mutex);
/* work */
pthread_mutex_unlock(&mutex); munma(foo); pthread_mutex_unlock(&mutex);
vs
n-threads:
foo = mmap(); /* work */ munmap(foo);
I've had reports that the former was significantly faster than the latter.
| |