lkml.org 
[lkml]   [2008]   [May]   [7]   [last100]   RSS Feed
Views: [more markup]   [less markup]   [headers]   [forward]  
 
Messages in this thread
/
DateWed, 7 May 2008 15:31:03 -0700
FromAndrew Morton <>
SubjectRe: [PATCH 08 of 11] anon-vma-rwsem
On Thu, 8 May 2008 00:22:05 +0200
Andrea Arcangeli <andrea@qumranet.com> wrote:

> > No, the simple solution is to just make up a whole new upper-level lock, 
> > and get that lock *first*. You can then take all the multiple locks at a 
> > lower level in any order you damn well please. 
> 
> Unfortunately the lock you're talking about would be:
> 
> static spinlock_t global_lock = ...
> 
> There's no way to make it more granular.
> 
> So every time before taking any ->i_mmap_lock _and_ any anon_vma->lock
> we'd need to take that extremely wide spinlock first (and even worse,
> later it would become a rwsem when XPMEM is selected making the VM
> even slower than it already becomes when XPMEM support is selected at
> compile time).

Nope.  We only need to take the global lock before taking *two or more* of
the per-vma locks.

I really wish I'd thought of that.


\
 
 \ /
  Last update: 2008-05-07 22:35    [W:20.541 / U:0.700 seconds]
©2003-2008 Jasper Spaans