Skip to content

Commit

Permalink
[PATCH] fuse: clean up dead code related to nfs exporting
Browse files Browse the repository at this point in the history
Remove last remains of NFS exportability support.

The code is actually buggy (as reported by Akshat Aranya), since 'alias'
will be leaked if it's non-null and alias->d_flags has DCACHE_DISCONNECTED.

This is not an active bug, since there will never be any disconnected
dentries.  But it's better to get rid of the unnecessary complexity anyway.

Signed-off-by: Miklos Szeredi <miklos@szeredi.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
  • Loading branch information
Miklos Szeredi authored and Linus Torvalds committed Oct 31, 2005
1 parent 15d2bac commit f12ec44
Showing 1 changed file with 3 additions and 2 deletions.
5 changes: 3 additions & 2 deletions fs/fuse/dir.c
Original file line number Diff line number Diff line change
Expand Up @@ -741,13 +741,14 @@ static struct dentry *fuse_lookup(struct inode *dir, struct dentry *entry,
if (inode && S_ISDIR(inode->i_mode)) {
/* Don't allow creating an alias to a directory */
struct dentry *alias = d_find_alias(inode);
if (alias && !(alias->d_flags & DCACHE_DISCONNECTED)) {
if (alias) {
dput(alias);
iput(inode);
return ERR_PTR(-EIO);
}
}
return d_splice_alias(inode, entry);
d_add(entry, inode);
return NULL;
}

static int fuse_setxattr(struct dentry *entry, const char *name,
Expand Down

0 comments on commit f12ec44

Please sign in to comment.