-
由 Tony Luck 提交于
These have been broken (returning "int") since the dawn of time. But there were no users that needed the whole value until commit 424acaae rwsem: wake queued readers when writer blocks on active read lock made this change: - (rwsem_atomic_update(0, sem) & RWSEM_ACTIVE_MASK)) - /* Someone grabbed the sem already */ + rwsem_atomic_update(0, sem) < RWSEM_WAITING_BIAS) + /* Someone grabbed the sem for write already */ RWSEM_ACTIVE_MASK is 0xffffffffL, so the old code only looked at the low order 32-bits. The new code needs to see all 64 bits. Signed-off-by: NTony Luck <tony.luck@intel.com>
01d69a82