]> git.baikalelectronics.ru Git - kernel.git/commit
ext4: optimize ea_inode block expansion
authorJun Nie <jun.nie@linaro.org>
Tue, 3 Jan 2023 01:45:16 +0000 (09:45 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 10 Mar 2023 08:34:20 +0000 (09:34 +0100)
commit29e3c1430ebfaf3118f69dd3c4db5548c55e2ee5
tree6ed6d698ec709ac20c93f2173ba5730c14a4ab5d
parent3f30d440ad5af2cdabaad9602aef7423de85137d
ext4: optimize ea_inode block expansion

commit f784802b6e4472181a1ba00277168b108dc90e1d upstream.

Copy ea data from inode entry when expanding ea block if possible.
Then remove the ea entry if expansion success. Thus memcpy to a
temporary buffer may be avoided.

If the expansion fails, we do not need to recovery the removed ea
entry neither in this way.

Reported-by: syzbot+2dacb8f015bf1420155f@syzkaller.appspotmail.com
Link: https://syzkaller.appspot.com/bug?id=3613786cb88c93aa1c6a279b1df6a7b201347d08
Link: https://lore.kernel.org/r/20230103014517.495275-2-jun.nie@linaro.org
Cc: stable@kernel.org
Signed-off-by: Jun Nie <jun.nie@linaro.org>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/ext4/xattr.c