fs/jfs: fix shift exponent db_agl2size negative
authorLiu Shixin via Jfs-discussion <jfs-discussion@lists.sourceforge.net>
Thu, 3 Nov 2022 03:01:59 +0000 (11:01 +0800)
committerDave Kleikamp <dave.kleikamp@oracle.com>
Tue, 3 Jan 2023 16:43:37 +0000 (10:43 -0600)
commitfad376fce0af58deebc5075b8539dc05bf639af3
treeba76dc74298fa11094b794c8d637b0e7500c063a
parent69b41ac87e4a664de78a395ff97166f0b2943210
fs/jfs: fix shift exponent db_agl2size negative

As a shift exponent, db_agl2size can not be less than 0. Add the missing
check to fix the shift-out-of-bounds bug reported by syzkaller:

 UBSAN: shift-out-of-bounds in fs/jfs/jfs_dmap.c:2227:15
 shift exponent -744642816 is negative

Reported-by: syzbot+0be96567042453c0c820@syzkaller.appspotmail.com
Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2")
Signed-off-by: Liu Shixin <liushixin2@huawei.com>
Signed-off-by: Dave Kleikamp <dave.kleikamp@oracle.com>
fs/jfs/jfs_dmap.c