btrfs: drop NOFAIL from set_extent_bit allocation masks
authorDavid Sterba <dsterba@suse.com>
Wed, 24 May 2023 23:04:34 +0000 (01:04 +0200)
committerDavid Sterba <dsterba@suse.com>
Mon, 19 Jun 2023 11:59:30 +0000 (13:59 +0200)
commit7dde7a8ab32417f28c4ac0111f8a8389fc0501ff
tree393611dac520ac6d40f0a4be225abc8b436faf62
parent0acd32c294cf51e22ecf31a5b9065047568e5d0d
btrfs: drop NOFAIL from set_extent_bit allocation masks

The __GFP_NOFAIL passed to set_extent_bit first appeared in 2010
(commit f0486c68e4bd9a ("Btrfs: Introduce contexts for metadata
reservation")), without any explanation why it would be needed.

Meanwhile we've updated the semantics of set_extent_bit to handle failed
allocations and do unlock, sleep and retry if needed.  The use of the
NOFAIL flag is also an outlier, we never want any of the set/clear
extent bit helpers to fail, they're used for many critical changes like
extent locking, besides the extent state bit changes.

Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/block-group.c
fs/btrfs/extent-tree.c