Date
Feb. 5, 2025, 2:09 p.m.
Environment | |
---|---|
qemu-armv7 | |
qemu-x86_64 |
[ 147.012219] ================================================================== [ 147.013276] BUG: KASAN: slab-use-after-free in kmem_cache_double_destroy+0xd0/0x1cc [ 147.014079] Read of size 1 at addr c8919900 by task kunit_try_catch/193 [ 147.014757] [ 147.015109] CPU: 1 PID: 193 Comm: kunit_try_catch Tainted: G B N 6.6.76-rc1 #1 [ 147.016042] Hardware name: Generic DT based system [ 147.017358] unwind_backtrace from show_stack+0x18/0x1c [ 147.018069] show_stack from dump_stack_lvl+0x58/0x70 [ 147.018889] dump_stack_lvl from print_report+0x164/0x51c [ 147.019622] print_report from kasan_report+0xc8/0x104 [ 147.020236] kasan_report from __kasan_check_byte+0x34/0x3c [ 147.021147] __kasan_check_byte from kmem_cache_destroy+0x24/0x150 [ 147.021986] kmem_cache_destroy from kmem_cache_double_destroy+0xd0/0x1cc [ 147.022857] kmem_cache_double_destroy from kunit_try_run_case+0x11c/0x2e4 [ 147.023877] kunit_try_run_case from kunit_generic_run_threadfn_adapter+0x2c/0x48 [ 147.024850] kunit_generic_run_threadfn_adapter from kthread+0x184/0x1a8 [ 147.025841] kthread from ret_from_fork+0x14/0x30 [ 147.026524] Exception stack(0xfa0cbfb0 to 0xfa0cbff8) [ 147.026962] bfa0: 00000000 00000000 00000000 00000000 [ 147.028092] bfc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 [ 147.029119] bfe0: 00000000 00000000 00000000 00000000 00000013 00000000 [ 147.029757] [ 147.030045] Allocated by task 193: [ 147.030486] kasan_set_track+0x3c/0x5c [ 147.031106] __kasan_slab_alloc+0x60/0x68 [ 147.031693] kmem_cache_alloc+0x1dc/0x574 [ 147.032262] kmem_cache_create_usercopy+0x160/0x2a8 [ 147.033023] kmem_cache_create+0x28/0x30 [ 147.033572] kmem_cache_double_destroy+0xa0/0x1cc [ 147.034199] kunit_try_run_case+0x11c/0x2e4 [ 147.034666] kunit_generic_run_threadfn_adapter+0x2c/0x48 [ 147.035432] kthread+0x184/0x1a8 [ 147.036040] ret_from_fork+0x14/0x30 [ 147.036723] [ 147.036999] Freed by task 193: [ 147.037587] kasan_set_track+0x3c/0x5c [ 147.038309] kasan_save_free_info+0x30/0x3c [ 147.038936] __kasan_slab_free+0xdc/0x124 [ 147.039503] kmem_cache_free+0x170/0x41c [ 147.039957] kobject_put+0xfc/0x320 [ 147.040551] kmem_cache_double_destroy+0xbc/0x1cc [ 147.041190] kunit_try_run_case+0x11c/0x2e4 [ 147.041746] kunit_generic_run_threadfn_adapter+0x2c/0x48 [ 147.042472] kthread+0x184/0x1a8 [ 147.042948] ret_from_fork+0x14/0x30 [ 147.043461] [ 147.043717] The buggy address belongs to the object at c8919900 [ 147.043717] which belongs to the cache kmem_cache of size 132 [ 147.044962] The buggy address is located 0 bytes inside of [ 147.044962] freed 132-byte region [c8919900, c8919984) [ 147.046543] [ 147.046782] The buggy address belongs to the physical page: [ 147.047341] page:190a4671 refcount:1 mapcount:0 mapping:00000000 index:0x0 pfn:0x48919 [ 147.048256] flags: 0x800(slab|zone=0) [ 147.048742] page_type: 0xffffffff() [ 147.049200] raw: 00000800 c4801000 00000122 00000000 00000000 80100010 ffffffff 00000001 [ 147.050178] raw: 00000000 [ 147.050602] page dumped because: kasan: bad access detected [ 147.051238] [ 147.051526] Memory state around the buggy address: [ 147.052027] c8919800: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [ 147.052779] c8919880: 04 fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc [ 147.053457] >c8919900: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb [ 147.054234] ^ [ 147.054572] c8919980: fb fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc [ 147.055366] c8919a00: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc [ 147.056126] ==================================================================
[ 50.023535] ================================================================== [ 50.024623] BUG: KASAN: slab-use-after-free in kmem_cache_double_destroy+0xce/0x1d0 [ 50.025935] Read of size 1 at addr ffff888101ce1c80 by task kunit_try_catch/216 [ 50.027513] [ 50.027950] CPU: 0 PID: 216 Comm: kunit_try_catch Tainted: G B N 6.6.76-rc1 #1 [ 50.029034] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014 [ 50.030136] Call Trace: [ 50.030400] <TASK> [ 50.030813] dump_stack_lvl+0x4e/0x90 [ 50.031480] print_report+0xd2/0x660 [ 50.032119] ? __virt_addr_valid+0x156/0x1e0 [ 50.032686] ? kasan_complete_mode_report_info+0x64/0x200 [ 50.033667] kasan_report+0xff/0x140 [ 50.034270] ? kmem_cache_double_destroy+0xce/0x1d0 [ 50.035494] ? kmem_cache_double_destroy+0xce/0x1d0 [ 50.036464] ? kmem_cache_double_destroy+0xce/0x1d0 [ 50.037253] __kasan_check_byte+0x3d/0x50 [ 50.037974] kmem_cache_destroy+0x25/0x170 [ 50.038766] kmem_cache_double_destroy+0xce/0x1d0 [ 50.039348] ? __pfx_kmem_cache_double_destroy+0x10/0x10 [ 50.040035] ? __schedule+0x70b/0x1190 [ 50.041080] ? ktime_get_ts64+0x118/0x140 [ 50.041665] kunit_try_run_case+0x126/0x290 [ 50.042397] ? __pfx_kunit_try_run_case+0x10/0x10 [ 50.043163] ? __kasan_check_write+0x18/0x20 [ 50.043968] ? trace_preempt_on+0x20/0xa0 [ 50.044657] ? __kthread_parkme+0x4f/0xd0 [ 50.045366] ? preempt_count_sub+0x50/0x80 [ 50.046162] ? __pfx_kunit_try_run_case+0x10/0x10 [ 50.047082] ? __pfx_kunit_generic_run_threadfn_adapter+0x10/0x10 [ 50.047766] kunit_generic_run_threadfn_adapter+0x33/0x50 [ 50.048656] kthread+0x19e/0x1e0 [ 50.049080] ? __pfx_kthread+0x10/0x10 [ 50.049650] ret_from_fork+0x41/0x70 [ 50.050633] ? __pfx_kthread+0x10/0x10 [ 50.051504] ret_from_fork_asm+0x1b/0x30 [ 50.052278] </TASK> [ 50.052676] [ 50.052979] Allocated by task 216: [ 50.053562] kasan_save_stack+0x3c/0x60 [ 50.054119] kasan_set_track+0x29/0x40 [ 50.054788] kasan_save_alloc_info+0x22/0x30 [ 50.055522] __kasan_slab_alloc+0x91/0xa0 [ 50.056098] kmem_cache_alloc+0x180/0x3b0 [ 50.056943] kmem_cache_create_usercopy+0x13e/0x230 [ 50.057567] kmem_cache_create+0x1a/0x20 [ 50.058369] kmem_cache_double_destroy+0x97/0x1d0 [ 50.059153] kunit_try_run_case+0x126/0x290 [ 50.059616] kunit_generic_run_threadfn_adapter+0x33/0x50 [ 50.060758] kthread+0x19e/0x1e0 [ 50.061432] ret_from_fork+0x41/0x70 [ 50.062279] ret_from_fork_asm+0x1b/0x30 [ 50.062851] [ 50.063099] Freed by task 216: [ 50.064183] kasan_save_stack+0x3c/0x60 [ 50.064700] kasan_set_track+0x29/0x40 [ 50.065471] kasan_save_free_info+0x2f/0x50 [ 50.066205] ____kasan_slab_free+0x172/0x1d0 [ 50.066876] __kasan_slab_free+0x16/0x20 [ 50.067760] kmem_cache_free+0x1a7/0x4b0 [ 50.068580] slab_kmem_cache_release+0x2e/0x40 [ 50.069292] kmem_cache_release+0x16/0x20 [ 50.069790] kobject_put+0xf6/0x250 [ 50.070372] sysfs_slab_release+0x24/0x30 [ 50.071290] kmem_cache_destroy+0xd2/0x170 [ 50.072012] kmem_cache_double_destroy+0xb7/0x1d0 [ 50.072921] kunit_try_run_case+0x126/0x290 [ 50.073678] kunit_generic_run_threadfn_adapter+0x33/0x50 [ 50.074428] kthread+0x19e/0x1e0 [ 50.075414] ret_from_fork+0x41/0x70 [ 50.076223] ret_from_fork_asm+0x1b/0x30 [ 50.077017] [ 50.077297] The buggy address belongs to the object at ffff888101ce1c80 [ 50.077297] which belongs to the cache kmem_cache of size 208 [ 50.078814] The buggy address is located 0 bytes inside of [ 50.078814] freed 208-byte region [ffff888101ce1c80, ffff888101ce1d50) [ 50.080485] [ 50.081186] The buggy address belongs to the physical page: [ 50.082062] page:(____ptrval____) refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x101ce1 [ 50.083279] flags: 0x200000000000800(slab|node=0|zone=2) [ 50.084312] page_type: 0xffffffff() [ 50.084847] raw: 0200000000000800 ffff888100041000 dead000000000122 0000000000000000 [ 50.085867] raw: 0000000000000000 00000000800c000c 00000001ffffffff 0000000000000000 [ 50.086781] page dumped because: kasan: bad access detected [ 50.087412] [ 50.087669] Memory state around the buggy address: [ 50.088140] ffff888101ce1b80: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb [ 50.088797] ffff888101ce1c00: fb fb fc fc fc fc fc fc fc fc fc fc fc fc fc fc [ 50.089946] >ffff888101ce1c80: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb [ 50.090604] ^ [ 50.091166] ffff888101ce1d00: fb fb fb fb fb fb fb fb fb fb fc fc fc fc fc fc [ 50.091795] ffff888101ce1d80: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc [ 50.092660] ==================================================================