btrfs: reinsert BGs failed to reclaim
The reclaim process can temporarily fail. For example, if the space is
getting tight, it fails to make the block group read-only. If there are no
further writes on that block group, the block group will never get back to
the reclaim list, and the BG never gets reclaimed. In a certain workload,
we can leave many such block groups never reclaimed.
So, let's get it back to the list and give it a chance to be reclaimed.
Fixes: 18bb8bbf13
("btrfs: zoned: automatically reclaim zones")
CC: stable@vger.kernel.org # 5.15+
Signed-off-by: Naohiro Aota <naohiro.aota@wdc.com>
Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
93463ff7b5
commit
7e27180994
@ -1833,6 +1833,8 @@ void btrfs_reclaim_bgs_work(struct work_struct *work)
|
||||
}
|
||||
|
||||
next:
|
||||
if (ret)
|
||||
btrfs_mark_bg_to_reclaim(bg);
|
||||
btrfs_put_block_group(bg);
|
||||
|
||||
mutex_unlock(&fs_info->reclaim_bgs_lock);
|
||||
|
Loading…
Reference in New Issue
Block a user