aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ncpfs/inode.c
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2013-06-15 05:53:23 +0400
committerAl Viro <viro@zeniv.linux.org.uk>2013-06-29 12:57:16 +0400
commit338b2f57499f37c18887182b48a499efb8a6b68f (patch)
tree08dfffef3694e07b02bf6ae03c5862e69b827dbb /fs/ncpfs/inode.c
parentdon't call file_pos_write() if vfs_{read,write}{,v}() fails (diff)
downloadlinux-dev-338b2f57499f37c18887182b48a499efb8a6b68f.tar.xz
linux-dev-338b2f57499f37c18887182b48a499efb8a6b68f.zip
ncpfs: don't bother with EBUSY on removal of busy directories
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/ncpfs/inode.c')
-rw-r--r--fs/ncpfs/inode.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/ncpfs/inode.c b/fs/ncpfs/inode.c
index 26910c8154da..0765ad12c382 100644
--- a/fs/ncpfs/inode.c
+++ b/fs/ncpfs/inode.c
@@ -891,6 +891,10 @@ int ncp_notify_change(struct dentry *dentry, struct iattr *attr)
if (!server) /* How this could happen? */
goto out;
+ result = -EPERM;
+ if (IS_DEADDIR(dentry->d_inode))
+ goto out;
+
/* ageing the dentry to force validation */
ncp_age_dentry(server, dentry);