aboutsummaryrefslogtreecommitdiffstats
path: root/arch/ia64/kernel
diff options
context:
space:
mode:
authorTony Luck <tony.luck@intel.com>2010-08-13 16:41:07 -0700
committerTony Luck <tony.luck@intel.com>2010-08-13 16:41:07 -0700
commit01d69a82e1d3c938da16bf55aab000672243aa24 (patch)
tree9d9763c1a71e29111cab48632aa8c177a54e63c9 /arch/ia64/kernel
parentad41a1e0cab07c5125456e8d38e5b1ab148d04aa (diff)
downloadkernel_samsung_smdk4412-01d69a82e1d3c938da16bf55aab000672243aa24.tar.gz
kernel_samsung_smdk4412-01d69a82e1d3c938da16bf55aab000672243aa24.tar.bz2
kernel_samsung_smdk4412-01d69a82e1d3c938da16bf55aab000672243aa24.zip
[IA64] Fix 64-bit atomic routines to return "long"
These have been broken (returning "int") since the dawn of time. But there were no users that needed the whole value until commit 424acaaeb3a3932d64a9b4bd59df6cf72c22d8f3 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: Tony Luck <tony.luck@intel.com>
Diffstat (limited to 'arch/ia64/kernel')
0 files changed, 0 insertions, 0 deletions