summaryrefslogtreecommitdiffstats
path: root/lib/rwsem.c
diff options
context:
space:
mode:
authorNick Piggin2007-10-16 10:24:42 +0200
committerLinus Torvalds2007-10-16 18:42:53 +0200
commitc0bc9875b701c588e448302d41181995c21e8040 (patch)
treec320855d4c04bd51ded6b4888bc5895ab539165f /lib/rwsem.c
parentmm: clarify __add_to_swap_cache locking (diff)
downloadkernel-qcow2-linux-c0bc9875b701c588e448302d41181995c21e8040.tar.gz
kernel-qcow2-linux-c0bc9875b701c588e448302d41181995c21e8040.tar.xz
kernel-qcow2-linux-c0bc9875b701c588e448302d41181995c21e8040.zip
radix-tree: use indirect bit
Rather than sign direct radix-tree pointers with a special bit, sign the indirect one that hangs off the root. This means that, given a lookup_slot operation, the invalid result will be differentiated from the valid (previously, valid results could have the bit either set or clear). This does not affect slot lookups which occur under lock -- they can never return an invalid result. Is needed in future for lockless pagecache. Signed-off-by: Nick Piggin <npiggin@suse.de> Acked-by: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'lib/rwsem.c')
0 files changed, 0 insertions, 0 deletions