summaryrefslogtreecommitdiffstats
path: root/fs/dcache.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2013-09-02 11:14:19 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2013-09-02 11:14:19 -0700
commitb3abd80250c13414bc258b53e57242feb159af91 (patch)
tree0120474080dfd6664a84beae85d3a2a1b0778e24 /fs/dcache.c
parent98474236f72e5a8b89c14cd7c74f0bb77a4b1a99 (diff)
downloadop-kernel-dev-b3abd80250c13414bc258b53e57242feb159af91.zip
op-kernel-dev-b3abd80250c13414bc258b53e57242feb159af91.tar.gz
lockref: add 'lockref_get_or_lock() helper
This behaves like "lockref_get_not_zero()", but instead of doing nothing if the count was zero, it returns with the lock held. This allows callers to revalidate the lockref-protected data structure if required even if the count was zero to begin with, and possibly increment the count if it passes muster. In particular, the dentry code wants this when it wants to turn an RCU-protected dentry into a stable refcounted one: if the dentry count it zero, but the sequence number still validates the dentry, we can take a reference to it. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs/dcache.c')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud