From: Josef Bacik Date: Tue, 9 Nov 2021 15:12:03 +0000 (-0500) Subject: btrfs: check ticket->steal in steal_from_global_block_rsv X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=1b0309eaa426242e168cf6a51dd707962d81578b;p=linux.git btrfs: check ticket->steal in steal_from_global_block_rsv We're going to use this helper in the priority flushing loop, move this check into the helper to simplify the logic. Reviewed-by: Nikolay Borisov Signed-off-by: Josef Bacik Reviewed-by: David Sterba Signed-off-by: David Sterba --- diff --git a/fs/btrfs/space-info.c b/fs/btrfs/space-info.c index dd6509795532d..20f6c08584106 100644 --- a/fs/btrfs/space-info.c +++ b/fs/btrfs/space-info.c @@ -844,6 +844,9 @@ static bool steal_from_global_rsv(struct btrfs_fs_info *fs_info, struct btrfs_block_rsv *global_rsv = &fs_info->global_block_rsv; u64 min_bytes; + if (!ticket->steal) + return false; + if (global_rsv->space_info != space_info) return false; @@ -899,8 +902,7 @@ static bool maybe_fail_all_tickets(struct btrfs_fs_info *fs_info, ticket = list_first_entry(&space_info->tickets, struct reserve_ticket, list); - if (!aborted && ticket->steal && - steal_from_global_rsv(fs_info, space_info, ticket)) + if (!aborted && steal_from_global_rsv(fs_info, space_info, ticket)) return true; if (!aborted && btrfs_test_opt(fs_info, ENOSPC_DEBUG))