we used to have the global semaphore_lock - which, if used separately from
the waitqueue lock, indeed can cause the unuse of the semaphore structure
before the spin_unlock in wakeup() completes.
but since 2.5.25 or so we use the semaphore waitqueue's spinlock for
semaphore locking - this also neatly solves the semaphore-unuse problem.
Four architectures, sparc, ia64, arm and x86-64 still use the global
semaphore_lock, but the other 13 architectures use the waitqueue spinlock
(unless there's something else i missed.)
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to email@example.com
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Sat Aug 31 2002 - 22:00:31 EST