• Rusty Russell's avatar
    [PATCH] Futexes IV (Fast Lightweight Userspace Semaphores) · 882ad449
    Rusty Russell authored
    Fast user-space mutex implementation, allowing user space to do all
    of the normal handling, with a minimal fallback to kernel space for
    when there is lock contention.
    
    The kernel space implementation does not keep any per-lock data
    structures, but instead does a fast hash on the physical page and offset
    of the user-space lock when contended.  Thus no build/teardown costs, or
    any scalability costs wrt metadata.
    
    Updated syscall numbers for 2.5.6, and changed FUTEX_UP/DOWN definitions
    to be more logical for future expansions (eg.  r/w).
    882ad449
futex.c 6.12 KB