summaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2011-07-16 23:09:10 -0400
committerAl Viro <viro@zeniv.linux.org.uk>2011-07-20 20:48:00 -0400
commit10d9f309d88ca7f47133d57e99b72810f119f75b (patch)
tree9fb29dbfce5e040b2232bca2378e8de13fc13c31 /fs
parent2fbe8c8ad176db69dfc682b4abb721c8fc19c3fd (diff)
downloadlinux-10d9f309d88ca7f47133d57e99b72810f119f75b.tar.gz
linux-10d9f309d88ca7f47133d57e99b72810f119f75b.tar.bz2
linux-10d9f309d88ca7f47133d57e99b72810f119f75b.zip
get rid of useless dget_parent() in btrfs rename() and link()
->d_parent is locked and stable there... Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs')
-rw-r--r--fs/btrfs/inode.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c
index bcb20a9a3b93..2548a04a0230 100644
--- a/fs/btrfs/inode.c
+++ b/fs/btrfs/inode.c
@@ -4766,11 +4766,10 @@ static int btrfs_link(struct dentry *old_dentry, struct inode *dir,
if (err) {
drop_inode = 1;
} else {
- struct dentry *parent = dget_parent(dentry);
+ struct dentry *parent = dentry->d_parent;
err = btrfs_update_inode(trans, root, inode);
BUG_ON(err);
btrfs_log_new_name(trans, inode, NULL, parent);
- dput(parent);
}
nr = trans->blocks_used;
@@ -7062,9 +7061,8 @@ static int btrfs_rename(struct inode *old_dir, struct dentry *old_dentry,
BUG_ON(ret);
if (old_ino != BTRFS_FIRST_FREE_OBJECTID) {
- struct dentry *parent = dget_parent(new_dentry);
+ struct dentry *parent = new_dentry->d_parent;
btrfs_log_new_name(trans, old_inode, old_dir, parent);
- dput(parent);
btrfs_end_log_trans(root);
}
out_fail: