diff options
author | Sage Weil <sage@newdream.net> | 2011-05-24 22:06:05 +0200 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2011-05-26 13:26:46 +0200 |
commit | 64252c75a2196a0cf1e0d3777143ecfe0e3ae650 (patch) | |
tree | 8534f12a507ef5aee91e302f3e54cf8a4440fc82 /fs/hpfs | |
parent | vfs: dentry_unhash immediately prior to rmdir (diff) | |
download | linux-64252c75a2196a0cf1e0d3777143ecfe0e3ae650.tar.xz linux-64252c75a2196a0cf1e0d3777143ecfe0e3ae650.zip |
vfs: remove dget() from dentry_unhash()
This serves no useful purpose that I can discern. All callers (rename,
rmdir) hold their own reference to the dentry.
A quick audit of all file systems showed no relevant checks on the value
of d_count in vfs_rmdir/vfs_rename_dir paths.
Signed-off-by: Sage Weil <sage@newdream.net>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/hpfs')
-rw-r--r-- | fs/hpfs/namei.c | 3 |
1 files changed, 0 insertions, 3 deletions
diff --git a/fs/hpfs/namei.c b/fs/hpfs/namei.c index d5f8c8a19023..b1c72a92c14e 100644 --- a/fs/hpfs/namei.c +++ b/fs/hpfs/namei.c @@ -414,7 +414,6 @@ again: mutex_unlock(&hpfs_i(inode)->i_parent_mutex); dentry_unhash(dentry); if (!d_unhashed(dentry)) { - dput(dentry); hpfs_unlock(dir->i_sb); return -ENOSPC; } @@ -422,7 +421,6 @@ again: !S_ISREG(inode->i_mode) || get_write_access(inode)) { d_rehash(dentry); - dput(dentry); } else { struct iattr newattrs; /*printk("HPFS: truncating file before delete.\n");*/ @@ -430,7 +428,6 @@ again: newattrs.ia_valid = ATTR_SIZE | ATTR_CTIME; err = notify_change(dentry, &newattrs); put_write_access(inode); - dput(dentry); if (!err) goto again; } |