• Bob Miller's avatar
    [PATCH] 2.5.25 remove global semaphore_lock spin lock. · 72785ef7
    Bob Miller authored
    Replace the global semaphore_lock with the spinlock embedded in
    the wait_queue_head_t.  None of the data protected by semaphore_lock
    is global and there is no need to restrict the system to only allow
    one semaphore to be dealt with at a time.
    
    This removes 2 lock round trips from __down() and __down_interruptible().
    It also reduces the number of cache lines touched by 1 (the cache line
    with seamphore_lock).
    72785ef7
semaphore.c 6.39 KB