aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--fs/ocfs2/refcounttree.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/fs/ocfs2/refcounttree.c b/fs/ocfs2/refcounttree.c
index 60287fc56bcb..9d439b277304 100644
--- a/fs/ocfs2/refcounttree.c
+++ b/fs/ocfs2/refcounttree.c
@@ -4013,10 +4013,6 @@ static int ocfs2_create_reflink_node(struct inode *s_inode,
4013 goto out_unlock_refcount; 4013 goto out_unlock_refcount;
4014 } 4014 }
4015 4015
4016 ret = ocfs2_complete_reflink(s_inode, s_bh, t_inode, t_bh, preserve);
4017 if (ret)
4018 mlog_errno(ret);
4019
4020out_unlock_refcount: 4016out_unlock_refcount:
4021 ocfs2_unlock_refcount_tree(osb, ref_tree, 1); 4017 ocfs2_unlock_refcount_tree(osb, ref_tree, 1);
4022 brelse(ref_root_bh); 4018 brelse(ref_root_bh);
@@ -4068,9 +4064,17 @@ static int __ocfs2_reflink(struct dentry *old_dentry,
4068 ret = ocfs2_reflink_xattrs(inode, old_bh, 4064 ret = ocfs2_reflink_xattrs(inode, old_bh,
4069 new_inode, new_bh, 4065 new_inode, new_bh,
4070 preserve); 4066 preserve);
4071 if (ret) 4067 if (ret) {
4072 mlog_errno(ret); 4068 mlog_errno(ret);
4069 goto inode_unlock;
4070 }
4073 } 4071 }
4072
4073 ret = ocfs2_complete_reflink(inode, old_bh,
4074 new_inode, new_bh, preserve);
4075 if (ret)
4076 mlog_errno(ret);
4077
4074inode_unlock: 4078inode_unlock:
4075 ocfs2_inode_unlock(new_inode, 1); 4079 ocfs2_inode_unlock(new_inode, 1);
4076 brelse(new_bh); 4080 brelse(new_bh);