$ git bisect bad 0a46ef234756dca04623b7591e8ebb3440622f0b is the first bad commit commit 0a46ef234756dca04623b7591e8ebb3440622f0b (HEAD) Author: Jan Kara <j...@suse.cz> Date: Thu Mar 21 17:26:50 2024 +0100
ext4: do not create EA inode under buffer lock ext4_xattr_set_entry() creates new EA inodes while holding buffer lock on the external xattr block. This is problematic as it nests all the allocation locking (which acquires locks on other buffers) under the buffer lock. This can even deadlock when the filesystem is corrupted and e.g. quota file is setup to contain xattr block as data block. Move the allocation of EA inode out of ext4_xattr_set_entry() into the callers. Reported-by: syzbot+a43d4f48b8397d0e4...@syzkaller.appspotmail.com Signed-off-by: Jan Kara <j...@suse.cz> Link: https://lore.kernel.org/r/20240321162657.27420-2-j...@suse.cz Signed-off-by: Theodore Ts'o <ty...@mit.edu> fs/ext4/xattr.c | 113 ++++++++++++++++++++++++++++++++++--------------------------------------- 1 file changed, 53 insertions(+), 60 deletions(-) -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/2080853 Title: oracular 6.11 kernel regression with ext4 and ea_inode mount flags and exercising xattrs To manage notifications about this bug go to: https://bugs.launchpad.net/linux/+bug/2080853/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs