summaryrefslogtreecommitdiff
path: root/fs/overlayfs/readdir.c
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2016-05-26 07:05:12 +0300
committerAl Viro <viro@zeniv.linux.org.uk>2016-05-26 07:13:25 +0300
commit002354112f1e3cc7400ef48b853aefb90e801588 (patch)
tree42bc0b17b008fc65b359a06e6f991b5247e10705 /fs/overlayfs/readdir.c
parent887bddfa90c79957d61067cd54a10087be0c8b23 (diff)
downloadlinux-002354112f1e3cc7400ef48b853aefb90e801588.tar.xz
restore killability of old mutex_lock_killable(&inode->i_mutex) users
The ones that are taking it exclusive, that is... Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/overlayfs/readdir.c')
-rw-r--r--fs/overlayfs/readdir.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/fs/overlayfs/readdir.c b/fs/overlayfs/readdir.c
index da186ee4f846..9e79f6458dfb 100644
--- a/fs/overlayfs/readdir.c
+++ b/fs/overlayfs/readdir.c
@@ -218,9 +218,7 @@ static int ovl_check_whiteouts(struct dentry *dir, struct ovl_readdir_data *rdd)
cap_raise(override_cred->cap_effective, CAP_DAC_OVERRIDE);
old_cred = override_creds(override_cred);
- inode_lock(dir->d_inode);
- err = 0;
- // XXX: err = mutex_lock_killable(&dir->d_inode->i_mutex);
+ err = down_write_killable(&dir->d_inode->i_rwsem);
if (!err) {
while (rdd->first_maybe_whiteout) {
p = rdd->first_maybe_whiteout;