Re: [PATCH v3 2/7] btrfs: check for priority ticket granting before flushing
From: David Sterba <hidden>
Date: 2021-11-18 08:55:30
On Wed, Nov 17, 2021 at 07:04:25PM +0200, Nikolay Borisov wrote:
On 9.11.21 г. 17:12, Josef Bacik wrote:quoted
Since we're dropping locks before we enter the priority flushing loops we could have had our ticket granted before we got the space_info->lock. So add this check to avoid doing some extra flushing in the priority flushing cases. Signed-off-by: Josef Bacik <josef@toxicpanda.com> --- fs/btrfs/space-info.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-)diff --git a/fs/btrfs/space-info.c b/fs/btrfs/space-info.c index 9d6048f54097..9a362f3a6df4 100644 --- a/fs/btrfs/space-info.c +++ b/fs/btrfs/space-info.c@@ -1264,7 +1264,7 @@ static void priority_reclaim_metadata_space(struct btrfs_fs_info *fs_info, spin_lock(&space_info->lock); to_reclaim = btrfs_calc_reclaim_metadata_size(fs_info, space_info); - if (!to_reclaim) { + if (!to_reclaim || ticket->bytes == 0) {David, After speaking with josef it would seem the !to_reclaim condition is gratuitous so can be removed, care to squash this in the patch?
Sure, commit updated, thanks.