lkml.org 
[lkml]   [2007]   [Jan]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH] mm: remove global locks from mm/highmem.c

    * Christoph Hellwig <hch@infradead.org> wrote:

    > On Sun, Jan 28, 2007 at 03:11:34PM +0100, Peter Zijlstra wrote:
    > > Eradicate global locks.
    > >
    > > - kmap_lock is removed by extensive use of atomic_t, a new flush
    > > scheme and modifying set_page_address to only allow NULL<->virt
    > > transitions.
    >
    > What's the point for this? [...]

    scalability. I did lock profiling on the -rt kernel, which exposes such
    things nicely. Half of the lock contention events during kernel compile
    were due to kmap(). (The system had 2 GB of RAM, so 40% lowmem, 60%
    highmem.)

    > [...] In doubt we just need to convert that caller to kmap_atomic.

    the pagecache ones cannot be converted to kmap_atomic, because we can
    block while holding them. Plus kmap_atomic is quite a bit slower than
    this scalable version of kmap().

    Ingo

    ps. please fix your mailer to not emit Mail-Followup-To headers. In Mutt
    you can do this via "set followup_to=no" in your .muttrc.
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2007-01-28 16:21    [W:0.022 / U:60.844 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site