diff options
-rw-r--r-- | fs/btrfs/extent-tree.c | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c index 2c21a7ede933..72727a805cb9 100644 --- a/fs/btrfs/extent-tree.c +++ b/fs/btrfs/extent-tree.c | |||
@@ -4797,11 +4797,10 @@ skip_async: | |||
4797 | * get us somewhere and then commit the transaction if it does. Otherwise it | 4797 | * get us somewhere and then commit the transaction if it does. Otherwise it |
4798 | * will return -ENOSPC. | 4798 | * will return -ENOSPC. |
4799 | */ | 4799 | */ |
4800 | static int may_commit_transaction(struct btrfs_root *root, | 4800 | static int may_commit_transaction(struct btrfs_fs_info *fs_info, |
4801 | struct btrfs_space_info *space_info, | 4801 | struct btrfs_space_info *space_info, |
4802 | u64 bytes, int force) | 4802 | u64 bytes, int force) |
4803 | { | 4803 | { |
4804 | struct btrfs_fs_info *fs_info = root->fs_info; | ||
4805 | struct btrfs_block_rsv *delayed_rsv = &fs_info->delayed_block_rsv; | 4804 | struct btrfs_block_rsv *delayed_rsv = &fs_info->delayed_block_rsv; |
4806 | struct btrfs_trans_handle *trans; | 4805 | struct btrfs_trans_handle *trans; |
4807 | 4806 | ||
@@ -4833,7 +4832,7 @@ static int may_commit_transaction(struct btrfs_root *root, | |||
4833 | spin_unlock(&delayed_rsv->lock); | 4832 | spin_unlock(&delayed_rsv->lock); |
4834 | 4833 | ||
4835 | commit: | 4834 | commit: |
4836 | trans = btrfs_join_transaction(root); | 4835 | trans = btrfs_join_transaction(fs_info->fs_root); |
4837 | if (IS_ERR(trans)) | 4836 | if (IS_ERR(trans)) |
4838 | return -ENOSPC; | 4837 | return -ENOSPC; |
4839 | 4838 | ||
@@ -4847,11 +4846,11 @@ struct reserve_ticket { | |||
4847 | wait_queue_head_t wait; | 4846 | wait_queue_head_t wait; |
4848 | }; | 4847 | }; |
4849 | 4848 | ||
4850 | static int flush_space(struct btrfs_root *root, | 4849 | static int flush_space(struct btrfs_fs_info *fs_info, |
4851 | struct btrfs_space_info *space_info, u64 num_bytes, | 4850 | struct btrfs_space_info *space_info, u64 num_bytes, |
4852 | u64 orig_bytes, int state) | 4851 | u64 orig_bytes, int state) |
4853 | { | 4852 | { |
4854 | struct btrfs_fs_info *fs_info = root->fs_info; | 4853 | struct btrfs_root *root = fs_info->fs_root; |
4855 | struct btrfs_trans_handle *trans; | 4854 | struct btrfs_trans_handle *trans; |
4856 | int nr; | 4855 | int nr; |
4857 | int ret = 0; | 4856 | int ret = 0; |
@@ -4891,7 +4890,8 @@ static int flush_space(struct btrfs_root *root, | |||
4891 | ret = 0; | 4890 | ret = 0; |
4892 | break; | 4891 | break; |
4893 | case COMMIT_TRANS: | 4892 | case COMMIT_TRANS: |
4894 | ret = may_commit_transaction(root, space_info, orig_bytes, 0); | 4893 | ret = may_commit_transaction(fs_info, space_info, |
4894 | orig_bytes, 0); | ||
4895 | break; | 4895 | break; |
4896 | default: | 4896 | default: |
4897 | ret = -ENOSPC; | 4897 | ret = -ENOSPC; |
@@ -5003,8 +5003,8 @@ static void btrfs_async_reclaim_metadata_space(struct work_struct *work) | |||
5003 | struct reserve_ticket *ticket; | 5003 | struct reserve_ticket *ticket; |
5004 | int ret; | 5004 | int ret; |
5005 | 5005 | ||
5006 | ret = flush_space(fs_info->fs_root, space_info, to_reclaim, | 5006 | ret = flush_space(fs_info, space_info, to_reclaim, to_reclaim, |
5007 | to_reclaim, flush_state); | 5007 | flush_state); |
5008 | spin_lock(&space_info->lock); | 5008 | spin_lock(&space_info->lock); |
5009 | if (list_empty(&space_info->tickets)) { | 5009 | if (list_empty(&space_info->tickets)) { |
5010 | space_info->flush = 0; | 5010 | space_info->flush = 0; |
@@ -5059,8 +5059,8 @@ static void priority_reclaim_metadata_space(struct btrfs_fs_info *fs_info, | |||
5059 | spin_unlock(&space_info->lock); | 5059 | spin_unlock(&space_info->lock); |
5060 | 5060 | ||
5061 | do { | 5061 | do { |
5062 | flush_space(fs_info->fs_root, space_info, to_reclaim, | 5062 | flush_space(fs_info, space_info, to_reclaim, to_reclaim, |
5063 | to_reclaim, flush_state); | 5063 | flush_state); |
5064 | flush_state++; | 5064 | flush_state++; |
5065 | spin_lock(&space_info->lock); | 5065 | spin_lock(&space_info->lock); |
5066 | if (ticket->bytes == 0) { | 5066 | if (ticket->bytes == 0) { |