Skip to content

Commit 22f53f0

Browse files
Ye Bintytso
authored andcommitted
ext4: fix possible null-ptr-deref in mbt_kunit_exit()
There's issue as follows: # test_new_blocks_simple: failed to initialize: -12 KASAN: null-ptr-deref in range [0x0000000000000638-0x000000000000063f] Tainted: [E]=UNSIGNED_MODULE, [N]=TEST RIP: 0010:mbt_kunit_exit+0x5e/0x3e0 [ext4_test] Call Trace: <TASK> kunit_try_run_case_cleanup+0xbc/0x100 [kunit] kunit_generic_run_threadfn_adapter+0x89/0x100 [kunit] kthread+0x408/0x540 ret_from_fork+0xa76/0xdf0 ret_from_fork_asm+0x1a/0x30 If mbt_kunit_init() init testcase failed will lead to null-ptr-deref. So add test if 'sb' is inited success in mbt_kunit_exit(). Fixes: 7c9fa39 ("ext4: add first unit test for ext4_mb_new_blocks_simple in mballoc") Signed-off-by: Ye Bin <yebin10@huawei.com> Reviewed-by: Ritesh Harjani (IBM) <ritesh.list@gmail.com> Reviewed-by: Ojaswin Mujoo <ojaswin@linux.ibm.com> Link: https://patch.msgid.link/20260330133035.287842-6-yebin@huaweicloud.com Signed-off-by: Theodore Ts'o <tytso@mit.edu>
1 parent ca78c31 commit 22f53f0

1 file changed

Lines changed: 5 additions & 1 deletion

File tree

fs/ext4/mballoc-test.c

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -362,7 +362,6 @@ static int mbt_kunit_init(struct kunit *test)
362362
return ret;
363363
}
364364

365-
test->priv = sb;
366365
kunit_activate_static_stub(test,
367366
ext4_read_block_bitmap_nowait,
368367
ext4_read_block_bitmap_nowait_stub);
@@ -383,13 +382,18 @@ static int mbt_kunit_init(struct kunit *test)
383382
return -ENOMEM;
384383
}
385384

385+
test->priv = sb;
386+
386387
return 0;
387388
}
388389

389390
static void mbt_kunit_exit(struct kunit *test)
390391
{
391392
struct super_block *sb = (struct super_block *)test->priv;
392393

394+
if (!sb)
395+
return;
396+
393397
mbt_mb_release(sb);
394398
mbt_ctx_release(sb);
395399
mbt_ext4_free_super_block(sb);

0 commit comments

Comments
 (0)