Date
June 7, 2025, 10:40 a.m.
Environment | |
---|---|
qemu-arm64 | |
qemu-x86_64 |
[ 23.205637] ================================================================== [ 23.207001] BUG: KASAN: slab-use-after-free in kmalloc_double_kzfree+0x168/0x308 [ 23.207818] Read of size 1 at addr fff00000c596b720 by task kunit_try_catch/181 [ 23.208484] [ 23.208823] CPU: 0 UID: 0 PID: 181 Comm: kunit_try_catch Tainted: G B N 6.14.11-rc1 #1 [ 23.209846] Tainted: [B]=BAD_PAGE, [N]=TEST [ 23.209929] Hardware name: linux,dummy-virt (DT) [ 23.209972] Call trace: [ 23.210001] show_stack+0x20/0x38 (C) [ 23.210065] dump_stack_lvl+0x8c/0xd0 [ 23.210124] print_report+0x118/0x608 [ 23.210193] kasan_report+0xdc/0x128 [ 23.210250] __kasan_check_byte+0x54/0x70 [ 23.210308] kfree_sensitive+0x30/0xb0 [ 23.210367] kmalloc_double_kzfree+0x168/0x308 [ 23.210423] kunit_try_run_case+0x170/0x3f0 [ 23.210480] kunit_generic_run_threadfn_adapter+0x88/0x100 [ 23.210543] kthread+0x318/0x620 [ 23.210596] ret_from_fork+0x10/0x20 [ 23.210656] [ 23.217804] Allocated by task 181: [ 23.218594] kasan_save_stack+0x3c/0x68 [ 23.219158] kasan_save_track+0x20/0x40 [ 23.219732] kasan_save_alloc_info+0x40/0x58 [ 23.220415] __kasan_kmalloc+0xd4/0xd8 [ 23.220958] __kmalloc_cache_noprof+0x16c/0x3c0 [ 23.222629] kmalloc_double_kzfree+0xb8/0x308 [ 23.223337] kunit_try_run_case+0x170/0x3f0 [ 23.224467] kunit_generic_run_threadfn_adapter+0x88/0x100 [ 23.225507] kthread+0x318/0x620 [ 23.226053] ret_from_fork+0x10/0x20 [ 23.226697] [ 23.226935] Freed by task 181: [ 23.227239] kasan_save_stack+0x3c/0x68 [ 23.227797] kasan_save_track+0x20/0x40 [ 23.228386] kasan_save_free_info+0x4c/0x78 [ 23.228956] __kasan_slab_free+0x6c/0x98 [ 23.230424] kfree+0x214/0x3c8 [ 23.230868] kfree_sensitive+0x80/0xb0 [ 23.231377] kmalloc_double_kzfree+0x11c/0x308 [ 23.232002] kunit_try_run_case+0x170/0x3f0 [ 23.232818] kunit_generic_run_threadfn_adapter+0x88/0x100 [ 23.233921] kthread+0x318/0x620 [ 23.234700] ret_from_fork+0x10/0x20 [ 23.235200] [ 23.235491] The buggy address belongs to the object at fff00000c596b720 [ 23.235491] which belongs to the cache kmalloc-16 of size 16 [ 23.236501] The buggy address is located 0 bytes inside of [ 23.236501] freed 16-byte region [fff00000c596b720, fff00000c596b730) [ 23.238246] [ 23.238545] The buggy address belongs to the physical page: [ 23.239131] page: refcount:0 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x10596b [ 23.240247] flags: 0xbfffe0000000000(node=0|zone=2|lastcpupid=0x1ffff) [ 23.240993] page_type: f5(slab) [ 23.241467] raw: 0bfffe0000000000 fff00000c0001640 dead000000000122 0000000000000000 [ 23.242255] raw: 0000000000000000 0000000080800080 00000000f5000000 0000000000000000 [ 23.243608] page dumped because: kasan: bad access detected [ 23.244086] [ 23.244334] Memory state around the buggy address: [ 23.244792] fff00000c596b600: fa fb fc fc 00 02 fc fc fa fb fc fc fa fb fc fc [ 23.245906] fff00000c596b680: fa fb fc fc fa fb fc fc fa fb fc fc 00 04 fc fc [ 23.246554] >fff00000c596b700: fa fb fc fc fa fb fc fc fc fc fc fc fc fc fc fc [ 23.248337] ^ [ 23.248873] fff00000c596b780: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc [ 23.249593] fff00000c596b800: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc [ 23.250348] ==================================================================
[ 18.062894] ================================================================== [ 18.063820] BUG: KASAN: slab-use-after-free in kmalloc_double_kzfree+0x19d/0x360 [ 18.064413] Read of size 1 at addr ffff8881025fedc0 by task kunit_try_catch/200 [ 18.065189] [ 18.065685] CPU: 1 UID: 0 PID: 200 Comm: kunit_try_catch Tainted: G B N 6.14.11-rc1 #1 [ 18.065819] Tainted: [B]=BAD_PAGE, [N]=TEST [ 18.065847] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014 [ 18.065906] Call Trace: [ 18.065932] <TASK> [ 18.065964] dump_stack_lvl+0x73/0xb0 [ 18.066031] print_report+0xd1/0x650 [ 18.066080] ? __virt_addr_valid+0x1db/0x2d0 [ 18.066133] ? kmalloc_double_kzfree+0x19d/0x360 [ 18.066179] ? kasan_complete_mode_report_info+0x64/0x200 [ 18.066232] ? kmalloc_double_kzfree+0x19d/0x360 [ 18.066283] kasan_report+0x140/0x180 [ 18.066334] ? kmalloc_double_kzfree+0x19d/0x360 [ 18.066391] ? kmalloc_double_kzfree+0x19d/0x360 [ 18.066443] __kasan_check_byte+0x3d/0x50 [ 18.066507] kfree_sensitive+0x22/0x90 [ 18.066581] kmalloc_double_kzfree+0x19d/0x360 [ 18.066633] ? __pfx_kmalloc_double_kzfree+0x10/0x10 [ 18.066683] ? __schedule+0xce8/0x2840 [ 18.066735] ? __pfx_read_tsc+0x10/0x10 [ 18.066783] ? ktime_get_ts64+0x86/0x230 [ 18.066847] kunit_try_run_case+0x1a6/0x480 [ 18.066925] ? __pfx_kunit_try_run_case+0x10/0x10 [ 18.066971] ? _raw_spin_lock_irqsave+0xa2/0x110 [ 18.067034] ? _raw_spin_unlock_irqrestore+0x5f/0x90 [ 18.067147] ? __kthread_parkme+0x82/0x160 [ 18.067211] ? preempt_count_sub+0x50/0x80 [ 18.067273] ? __pfx_kunit_try_run_case+0x10/0x10 [ 18.067321] kunit_generic_run_threadfn_adapter+0x85/0xf0 [ 18.067364] ? __pfx_kunit_generic_run_threadfn_adapter+0x10/0x10 [ 18.067397] kthread+0x324/0x6e0 [ 18.067427] ? trace_preempt_on+0x20/0xc0 [ 18.067479] ? __pfx_kthread+0x10/0x10 [ 18.067525] ? _raw_spin_unlock_irq+0x47/0x80 [ 18.067567] ? calculate_sigpending+0x7b/0xa0 [ 18.067617] ? __pfx_kthread+0x10/0x10 [ 18.067658] ret_from_fork+0x41/0x80 [ 18.067685] ? __pfx_kthread+0x10/0x10 [ 18.067722] ret_from_fork_asm+0x1a/0x30 [ 18.067764] </TASK> [ 18.067779] [ 18.083248] Allocated by task 200: [ 18.083505] kasan_save_stack+0x45/0x70 [ 18.083780] kasan_save_track+0x18/0x40 [ 18.084190] kasan_save_alloc_info+0x3b/0x50 [ 18.084601] __kasan_kmalloc+0xb7/0xc0 [ 18.085584] __kmalloc_cache_noprof+0x18a/0x420 [ 18.086276] kmalloc_double_kzfree+0xaa/0x360 [ 18.087135] kunit_try_run_case+0x1a6/0x480 [ 18.087407] kunit_generic_run_threadfn_adapter+0x85/0xf0 [ 18.087809] kthread+0x324/0x6e0 [ 18.088195] ret_from_fork+0x41/0x80 [ 18.089276] ret_from_fork_asm+0x1a/0x30 [ 18.089847] [ 18.090085] Freed by task 200: [ 18.090286] kasan_save_stack+0x45/0x70 [ 18.090524] kasan_save_track+0x18/0x40 [ 18.091048] kasan_save_free_info+0x3f/0x60 [ 18.091489] __kasan_slab_free+0x56/0x70 [ 18.092066] kfree+0x224/0x3f0 [ 18.092432] kfree_sensitive+0x67/0x90 [ 18.093153] kmalloc_double_kzfree+0x12c/0x360 [ 18.093826] kunit_try_run_case+0x1a6/0x480 [ 18.094234] kunit_generic_run_threadfn_adapter+0x85/0xf0 [ 18.094877] kthread+0x324/0x6e0 [ 18.095191] ret_from_fork+0x41/0x80 [ 18.095762] ret_from_fork_asm+0x1a/0x30 [ 18.096174] [ 18.096425] The buggy address belongs to the object at ffff8881025fedc0 [ 18.096425] which belongs to the cache kmalloc-16 of size 16 [ 18.097808] The buggy address is located 0 bytes inside of [ 18.097808] freed 16-byte region [ffff8881025fedc0, ffff8881025fedd0) [ 18.098794] [ 18.099177] The buggy address belongs to the physical page: [ 18.099718] page: refcount:0 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x1025fe [ 18.100675] flags: 0x200000000000000(node=0|zone=2) [ 18.101053] page_type: f5(slab) [ 18.101711] raw: 0200000000000000 ffff888100041640 dead000000000122 0000000000000000 [ 18.102569] raw: 0000000000000000 0000000080800080 00000000f5000000 0000000000000000 [ 18.103216] page dumped because: kasan: bad access detected [ 18.103671] [ 18.103893] Memory state around the buggy address: [ 18.104218] ffff8881025fec80: 00 02 fc fc 00 05 fc fc 00 02 fc fc 00 02 fc fc [ 18.104772] ffff8881025fed00: 00 02 fc fc 00 02 fc fc fa fb fc fc fa fb fc fc [ 18.105334] >ffff8881025fed80: fa fb fc fc 00 05 fc fc fa fb fc fc fc fc fc fc [ 18.105843] ^ [ 18.106541] ffff8881025fee00: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc [ 18.106893] ffff8881025fee80: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc [ 18.107754] ==================================================================