diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2018-02-24 03:54:18 +0100 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2018-03-29 21:07:02 +0200 |
commit | 3b3f09f48ba78c0634e929849860a6447d057eed (patch) | |
tree | 6f1ee9debc0343c409b2d6158e9f50c42127e8fe /ipc | |
parent | d_delete(): get rid of trylock loop (diff) | |
download | linux-3b3f09f48ba78c0634e929849860a6447d057eed.tar.xz linux-3b3f09f48ba78c0634e929849860a6447d057eed.zip |
get rid of trylock loop in locking dentries on shrink list
In case of trylock failure don't re-add to the list - drop the locks
and carefully get them in the right order. For shrink_dentry_list(),
somebody having grabbed a reference to dentry means that we can
kick it off-list, so if we find dentry being modified under us we
don't need to play silly buggers with retries anyway - off the list
it is.
The locking logics taken out into a helper of its own; lock_parent()
is no longer used for dentries that can be killed under us.
[fix from Eric Biggers folded]
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'ipc')
0 files changed, 0 insertions, 0 deletions