gfs2: Always check inode size of inline inodes
stable inclusion from stable-v5.10.177 commit 7c414f6f06e9a3934901b6edc3177ae5a1e07094 category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/I88YNP Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=7c414f6f06e9a3934901b6edc3177ae5a1e07094 -------------------------------- commit 70376c7f upstream. Check if the inode size of stuffed (inline) inodes is within the allowed range when reading inodes from disk (gfs2_dinode_in()). This prevents us from on-disk corruption. The two checks in stuffed_readpage() and gfs2_unstuffer_page() that just truncate inline data to the maximum allowed size don't actually make sense, and they can be removed now as well. Reported-by:<syzbot+7bb81dfa9cda07d9cd9d@syzkaller.appspotmail.com> Signed-off-by:
Andreas Gruenbacher <agruenba@redhat.com> [pchelkin@ispras.ru: adjust the inode variable inside gfs2_dinode_in with the format used before upstream commit 7db35444 ("gfs2: Cosmetic gfs2_dinode_{in,out} cleanup")] Signed-off-by:
Fedor Pchelkin <pchelkin@ispras.ru> Signed-off-by:
Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by:
sanglipeng <sanglipeng1@jd.com>
Loading
Please sign in to comment