Re: [RFC PATCH] mm/migration: Remove anon vma locking from try_to_unmap() use
From: Linus Torvalds <torvalds@linux-foundation.org>
Date: 2012-12-01 18:51:08
Also in:
lkml
On Sat, Dec 1, 2012 at 10:41 AM, Ingo Molnar [off-list ref] wrote:
I'll try the rwsem and see how it goes?
Yeah. That should be an easy conversion (just convert everything to use the write-lock first, and then you can make one or two migration places use the read version). Side note: The mutex code tends to potentially generate slightly faster noncontended locks than rwsems, and it does have the MUTEX_SPIN_ON_OWNER feature that makes the contention case often *much* better, so there are real downsides to rw-semaphores. But for this load, it does seem like the scalability advantages of an rwsem *might* be worth it. Side note: in contrast, the rwlock spinning reader-writer locks are basically never a win - the downsides just about always negate any theoretical scalability advantage. rwsem's can work well, we already use it for mmap_sem, for example, to allow concurrent page faults, and it was a *big* scalabiloity win there. Although then we did the "drop mmap_sem over IO and retry", and that might have negated many of the advantages of the mmap_sem.
Hm, indeed. For performance runs I typically disable lock debugging - which might have made me not directly notice some of the performance problems.
Yeah, lock debugging really tends to make anything that is close to
contended be absolutely *horribly* contended. Doubly so for the
mutexes because it disables the spinning code, but it's true in
general too.
Linus
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>