]> git.ipfire.org Git - thirdparty/linux.git/commit
fs: Ignore inode metadata buffers in inode_lru_isolate()
authorJan Kara <jack@suse.cz>
Thu, 26 Mar 2026 09:54:16 +0000 (10:54 +0100)
committerChristian Brauner <brauner@kernel.org>
Thu, 26 Mar 2026 14:03:29 +0000 (15:03 +0100)
commit972b9dd4e4180fbb2352bf2f0e015b7b63f5cca0
tree746fa70b1014c62081f78af7e77a49650c27e31a
parent23dae9e189de56c462a99c1695c1a2b3c499251b
fs: Ignore inode metadata buffers in inode_lru_isolate()

There are only a few filesystems that use generic tracking of inode
metadata buffer heads. As such the logic to reclaim tracked metadata
buffer heads in inode_lru_isolate() doesn't bring a benefit big enough
to justify intertwining of inode reclaim and metadata buffer head
tracking. Just treat tracked metadata buffer heads as any other metadata
filesystem has to properly clean up on inode eviction and stop handling
it in inode_lru_isolate(). As a result filesystems using generic
tracking of metadata buffer heads may now see dirty metadata buffers in
their .evict methods more often which can slow down inode reclaim but
given these filesystems aren't used in performance demanding setups we
should be fine.

Signed-off-by: Jan Kara <jack@suse.cz>
Link: https://patch.msgid.link/20260326095354.16340-64-jack@suse.cz
Tested-by: syzbot@syzkaller.appspotmail.com
Signed-off-by: Christian Brauner <brauner@kernel.org>
fs/buffer.c
fs/inode.c
include/linux/buffer_head.h