[lkml]   [2009]   [Feb]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [PATCH 2/4] Convert epoll to a bitlock
    On Mon,  2 Feb 2009 11:20:09 -0700 Jonathan Corbet <> wrote:
    >> Matt Mackall suggested converting epoll's ep_lock to a bitlock as a way of
    >> saving space in struct file. This patch makes that change.

    On Tue, Feb 03, 2009 at 01:39:42PM -0800, Andrew Morton wrote:
    > hrm. bit_spin_lock() makes people upset (large penguiny people). iirc
    > it doesn't have all the correct/well-understood memory/compiler
    > ordering semantics which spinlocks have. And lockdep doesn't know about
    > it.

    ISTR the memory/compiler ordering semantics bits coming up when it was
    still pte_chain_lock(), but not the entirety of it. I think
    smp_mb__after_clear_bit() and/or smp_mb__before_clear_bit() turned out
    to be needed in the unlock function, and they're there now with
    clear_bit_unlock() et al. lockdep I'm less sure about, but suspect
    the objects with bit locks embedded in them are too numerous to feasibly
    track, e.g. there may be several bh's per-page, and how numerous they
    are tends to be why they're using bit locks in the first place.

    -- wli

     \ /
      Last update: 2009-02-04 02:03    [W:0.018 / U:8.064 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site