aboutsummaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
Diffstat (limited to 'fs')
-rw-r--r--fs/btrfs/extent-tree.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c
index 7c644f810816..f3de211173ad 100644
--- a/fs/btrfs/extent-tree.c
+++ b/fs/btrfs/extent-tree.c
@@ -5744,7 +5744,13 @@ int btrfs_orphan_reserve_metadata(struct btrfs_trans_handle *trans,
5744 struct inode *inode) 5744 struct inode *inode)
5745{ 5745{
5746 struct btrfs_root *root = BTRFS_I(inode)->root; 5746 struct btrfs_root *root = BTRFS_I(inode)->root;
5747 struct btrfs_block_rsv *src_rsv = get_block_rsv(trans, root); 5747 /*
5748 * We always use trans->block_rsv here as we will have reserved space
5749 * for our orphan when starting the transaction, using get_block_rsv()
5750 * here will sometimes make us choose the wrong block rsv as we could be
5751 * doing a reloc inode for a non refcounted root.
5752 */
5753 struct btrfs_block_rsv *src_rsv = trans->block_rsv;
5748 struct btrfs_block_rsv *dst_rsv = root->orphan_block_rsv; 5754 struct btrfs_block_rsv *dst_rsv = root->orphan_block_rsv;
5749 5755
5750 /* 5756 /*