diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c index 179ffb9529d4..b8863537d31d 100644 --- a/fs/btrfs/inode.c +++ b/fs/btrfs/inode.c @@ -9416,8 +9416,11 @@ static int btrfs_rename(struct inode *old_dir, struct dentry *old_dentry, goto out_notrans; } - if (dest != root) - btrfs_record_root_in_trans(trans, dest); + if (dest != root) { + ret = btrfs_record_root_in_trans(trans, dest); + if (ret) + goto out_fail; + } ret = btrfs_set_inode_index(BTRFS_I(new_dir), &index); if (ret)