]> git.baikalelectronics.ru Git - kernel.git/commit
lift the "already marked killed" case into shrink_dentry_list()
authorAl Viro <viro@zeniv.linux.org.uk>
Wed, 28 May 2014 13:48:44 +0000 (09:48 -0400)
committerAl Viro <viro@zeniv.linux.org.uk>
Wed, 28 May 2014 13:48:44 +0000 (09:48 -0400)
commit01a62f7021f12c3ea848b5319fc3eab4475655e0
tree03260dee00fe5e06cd627cd04990e806992057a9
parent7ab4a7114bab35bda7ec7340dae71ce0c1cb66f0
lift the "already marked killed" case into shrink_dentry_list()

It can happen only when dentry_kill() is called with unlock_on_failure
equal to 0 - other callers had dentry pinned until the moment they've
got ->d_lock and DCACHE_DENTRY_KILLED is set only after lockref_mark_dead().

IOW, only one of three call sites of dentry_kill() might end up reaching
that code.  Just move it there.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
fs/dcache.c