Commit dc61d97b authored by Naohiro Aota's avatar Naohiro Aota Committed by David Sterba
Browse files

btrfs: fix buffer index in wait_eb_writebacks()



The commit f2cb97ee ("btrfs: index buffer_tree using node size")
changed the index of buffer_tree from "start >> sectorsize_bits" to "start
>> nodesize_bits". However, the change is not applied for
wait_eb_writebacks() and caused IO failures by writing in a full zone. Use
the index properly.

Fixes: f2cb97ee ("btrfs: index buffer_tree using node size")
Reviewed-by: default avatarQu Wenruo <wqu@suse.com>
Reviewed-by: default avatarBoris Burkov <boris@bur.io>
Signed-off-by: default avatarNaohiro Aota <naohiro.aota@wdc.com>
Signed-off-by: default avatarDavid Sterba <dsterba@suse.com>
parent b1511360
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -2242,7 +2242,7 @@ static void wait_eb_writebacks(struct btrfs_block_group *block_group)
	struct btrfs_fs_info *fs_info = block_group->fs_info;
	const u64 end = block_group->start + block_group->length;
	struct extent_buffer *eb;
	unsigned long index, start = (block_group->start >> fs_info->sectorsize_bits);
	unsigned long index, start = (block_group->start >> fs_info->nodesize_bits);

	rcu_read_lock();
	xa_for_each_start(&fs_info->buffer_tree, index, eb, start) {