]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
btrfs: remove folio ordered flag and subpage bitmap
authorQu Wenruo <wqu@suse.com>
Tue, 12 May 2026 22:36:38 +0000 (08:06 +0930)
committerDavid Sterba <dsterba@suse.com>
Mon, 8 Jun 2026 13:53:32 +0000 (15:53 +0200)
commit4927b141877c35b1af4e32c7876cd2e0a0f16196
tree0fb5305a8383ac2def85e5b5d4aeff5d3cfef0fd
parentaea704836e47decbdcac77872385c9a3fb51da42
btrfs: remove folio ordered flag and subpage bitmap

Btrfs has an internal flag/subpage bitmap called ordered, which is to
indicate that a block has corresponding ordered extent covering it.

However this requires extra synchronization between the inode ordered
tree, and the folio flag/subpage bitmap, not to mention we need to
maintain the extra folio flag with subpage bitmap.

As a step to align btrfs_folio_state more closely to iomap_folio_state,
remove the btrfs specific ordered flag/bitmap.

This will also save us 64 bytes for the bitmap of a huge folio.

Since we're here, also update the ASCII graph of the bitmap, as there
are only 3 sub-bitmaps now, show all sub-bitmaps directly.

Signed-off-by: Qu Wenruo <wqu@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/extent_io.c
fs/btrfs/extent_io.h
fs/btrfs/fs.h
fs/btrfs/inode.c
fs/btrfs/subpage.c
fs/btrfs/subpage.h