Date
March 19, 2025, 10:35 a.m.
Environment | |
---|---|
qemu-arm64 | |
qemu-x86_64 |
[ 37.203804] ================================================================== [ 37.204087] BUG: KASAN: slab-use-after-free in mempool_uaf_helper+0x314/0x340 [ 37.204268] Read of size 1 at addr fff00000c5da6400 by task kunit_try_catch/229 [ 37.204547] [ 37.204665] CPU: 1 UID: 0 PID: 229 Comm: kunit_try_catch Tainted: G B N 6.14.0-rc7-next-20250319 #1 PREEMPT [ 37.204951] Tainted: [B]=BAD_PAGE, [N]=TEST [ 37.205088] Hardware name: linux,dummy-virt (DT) [ 37.205242] Call trace: [ 37.205347] show_stack+0x20/0x38 (C) [ 37.205549] dump_stack_lvl+0x8c/0xd0 [ 37.205707] print_report+0x118/0x5f0 [ 37.205837] kasan_report+0xc8/0x118 [ 37.205974] __asan_report_load1_noabort+0x20/0x30 [ 37.206158] mempool_uaf_helper+0x314/0x340 [ 37.206310] mempool_kmalloc_uaf+0xbc/0x118 [ 37.206470] kunit_try_run_case+0x14c/0x3d0 [ 37.206639] kunit_generic_run_threadfn_adapter+0x88/0x100 [ 37.206821] kthread+0x318/0x618 [ 37.207043] ret_from_fork+0x10/0x20 [ 37.207226] [ 37.207286] Allocated by task 229: [ 37.207515] kasan_save_stack+0x3c/0x68 [ 37.207648] kasan_save_track+0x20/0x40 [ 37.207846] kasan_save_alloc_info+0x40/0x58 [ 37.208070] __kasan_mempool_unpoison_object+0x11c/0x180 [ 37.208226] remove_element+0x130/0x1f8 [ 37.208418] mempool_alloc_preallocated+0x58/0xc0 [ 37.208554] mempool_uaf_helper+0xa4/0x340 [ 37.209112] mempool_kmalloc_uaf+0xbc/0x118 [ 37.209369] kunit_try_run_case+0x14c/0x3d0 [ 37.209715] kunit_generic_run_threadfn_adapter+0x88/0x100 [ 37.209864] kthread+0x318/0x618 [ 37.210137] ret_from_fork+0x10/0x20 [ 37.210269] [ 37.210326] Freed by task 229: [ 37.210463] kasan_save_stack+0x3c/0x68 [ 37.210667] kasan_save_track+0x20/0x40 [ 37.210850] kasan_save_free_info+0x4c/0x78 [ 37.211021] __kasan_mempool_poison_object+0xc0/0x150 [ 37.211189] mempool_free+0x28c/0x328 [ 37.211385] mempool_uaf_helper+0x104/0x340 [ 37.211578] mempool_kmalloc_uaf+0xbc/0x118 [ 37.211787] kunit_try_run_case+0x14c/0x3d0 [ 37.211951] kunit_generic_run_threadfn_adapter+0x88/0x100 [ 37.212114] kthread+0x318/0x618 [ 37.212224] ret_from_fork+0x10/0x20 [ 37.212406] [ 37.212571] The buggy address belongs to the object at fff00000c5da6400 [ 37.212571] which belongs to the cache kmalloc-128 of size 128 [ 37.212766] The buggy address is located 0 bytes inside of [ 37.212766] freed 128-byte region [fff00000c5da6400, fff00000c5da6480) [ 37.212967] [ 37.213036] The buggy address belongs to the physical page: [ 37.213180] page: refcount:0 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x105da6 [ 37.213460] flags: 0xbfffe0000000000(node=0|zone=2|lastcpupid=0x1ffff) [ 37.213715] page_type: f5(slab) [ 37.213878] raw: 0bfffe0000000000 fff00000c0001a00 dead000000000122 0000000000000000 [ 37.214037] raw: 0000000000000000 0000000080100010 00000000f5000000 0000000000000000 [ 37.214179] page dumped because: kasan: bad access detected [ 37.214277] [ 37.214333] Memory state around the buggy address: [ 37.214439] fff00000c5da6300: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb [ 37.214624] fff00000c5da6380: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc [ 37.214852] >fff00000c5da6400: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb [ 37.215078] ^ [ 37.215165] fff00000c5da6480: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc [ 37.215358] fff00000c5da6500: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [ 37.215494] ================================================================== [ 37.312457] ================================================================== [ 37.312805] BUG: KASAN: slab-use-after-free in mempool_uaf_helper+0x314/0x340 [ 37.312969] Read of size 1 at addr fff00000c5dab240 by task kunit_try_catch/233 [ 37.313152] [ 37.313408] CPU: 1 UID: 0 PID: 233 Comm: kunit_try_catch Tainted: G B N 6.14.0-rc7-next-20250319 #1 PREEMPT [ 37.313850] Tainted: [B]=BAD_PAGE, [N]=TEST [ 37.313953] Hardware name: linux,dummy-virt (DT) [ 37.314080] Call trace: [ 37.314157] show_stack+0x20/0x38 (C) [ 37.314320] dump_stack_lvl+0x8c/0xd0 [ 37.314476] print_report+0x118/0x5f0 [ 37.314627] kasan_report+0xc8/0x118 [ 37.314772] __asan_report_load1_noabort+0x20/0x30 [ 37.314943] mempool_uaf_helper+0x314/0x340 [ 37.315611] mempool_slab_uaf+0xb8/0x110 [ 37.315805] kunit_try_run_case+0x14c/0x3d0 [ 37.315971] kunit_generic_run_threadfn_adapter+0x88/0x100 [ 37.316532] kthread+0x318/0x618 [ 37.316794] ret_from_fork+0x10/0x20 [ 37.317044] [ 37.317169] Allocated by task 233: [ 37.317294] kasan_save_stack+0x3c/0x68 [ 37.317411] kasan_save_track+0x20/0x40 [ 37.317551] kasan_save_alloc_info+0x40/0x58 [ 37.317672] __kasan_mempool_unpoison_object+0xbc/0x180 [ 37.317803] remove_element+0x16c/0x1f8 [ 37.317935] mempool_alloc_preallocated+0x58/0xc0 [ 37.318134] mempool_uaf_helper+0xa4/0x340 [ 37.318270] mempool_slab_uaf+0xb8/0x110 [ 37.318418] kunit_try_run_case+0x14c/0x3d0 [ 37.318555] kunit_generic_run_threadfn_adapter+0x88/0x100 [ 37.318713] kthread+0x318/0x618 [ 37.318891] ret_from_fork+0x10/0x20 [ 37.319035] [ 37.319143] Freed by task 233: [ 37.319227] kasan_save_stack+0x3c/0x68 [ 37.319384] kasan_save_track+0x20/0x40 [ 37.319491] kasan_save_free_info+0x4c/0x78 [ 37.319605] __kasan_mempool_poison_object+0xc0/0x150 [ 37.319740] mempool_free+0x28c/0x328 [ 37.319851] mempool_uaf_helper+0x104/0x340 [ 37.319979] mempool_slab_uaf+0xb8/0x110 [ 37.320186] kunit_try_run_case+0x14c/0x3d0 [ 37.320419] kunit_generic_run_threadfn_adapter+0x88/0x100 [ 37.320618] kthread+0x318/0x618 [ 37.320774] ret_from_fork+0x10/0x20 [ 37.320893] [ 37.320962] The buggy address belongs to the object at fff00000c5dab240 [ 37.320962] which belongs to the cache test_cache of size 123 [ 37.321184] The buggy address is located 0 bytes inside of [ 37.321184] freed 123-byte region [fff00000c5dab240, fff00000c5dab2bb) [ 37.321391] [ 37.321466] The buggy address belongs to the physical page: [ 37.321615] page: refcount:0 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x105dab [ 37.321777] flags: 0xbfffe0000000000(node=0|zone=2|lastcpupid=0x1ffff) [ 37.321928] page_type: f5(slab) [ 37.322042] raw: 0bfffe0000000000 fff00000c5d9a780 dead000000000122 0000000000000000 [ 37.322218] raw: 0000000000000000 0000000080150015 00000000f5000000 0000000000000000 [ 37.322382] page dumped because: kasan: bad access detected [ 37.322484] [ 37.322546] Memory state around the buggy address: [ 37.322645] fff00000c5dab100: fb fb fb fb fb fb fb fb fc fc fc fc fc fc fc fc [ 37.322844] fff00000c5dab180: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb [ 37.323031] >fff00000c5dab200: fc fc fc fc fc fc fc fc fa fb fb fb fb fb fb fb [ 37.323253] ^ [ 37.323434] fff00000c5dab280: fb fb fb fb fb fb fb fb fc fc fc fc fc fc fc fc [ 37.323657] fff00000c5dab300: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc [ 37.323866] ==================================================================
[ 24.188192] ================================================================== [ 24.188820] BUG: KASAN: slab-use-after-free in mempool_uaf_helper+0x392/0x400 [ 24.190942] Read of size 1 at addr ffff888103230240 by task kunit_try_catch/252 [ 24.191509] [ 24.192256] CPU: 1 UID: 0 PID: 252 Comm: kunit_try_catch Tainted: G B N 6.14.0-rc7-next-20250319 #1 PREEMPT(voluntary) [ 24.192391] Tainted: [B]=BAD_PAGE, [N]=TEST [ 24.192428] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014 [ 24.192493] Call Trace: [ 24.192526] <TASK> [ 24.192568] dump_stack_lvl+0x73/0xb0 [ 24.192649] print_report+0xd1/0x660 [ 24.192756] ? __virt_addr_valid+0x1db/0x2d0 [ 24.192877] ? kasan_complete_mode_report_info+0x64/0x200 [ 24.192920] kasan_report+0x104/0x140 [ 24.192953] ? mempool_uaf_helper+0x392/0x400 [ 24.192989] ? mempool_uaf_helper+0x392/0x400 [ 24.193032] __asan_report_load1_noabort+0x18/0x20 [ 24.193063] mempool_uaf_helper+0x392/0x400 [ 24.193097] ? __pfx_mempool_uaf_helper+0x10/0x10 [ 24.193202] ? finish_task_switch.isra.0+0x153/0x730 [ 24.193245] mempool_slab_uaf+0xad/0x100 [ 24.193280] ? __pfx_mempool_slab_uaf+0x10/0x10 [ 24.193313] ? __switch_to+0x5d9/0xf70 [ 24.193351] ? __pfx_mempool_alloc_slab+0x10/0x10 [ 24.193382] ? __pfx_mempool_free_slab+0x10/0x10 [ 24.193416] ? __pfx_read_tsc+0x10/0x10 [ 24.193446] ? ktime_get_ts64+0x86/0x240 [ 24.193484] kunit_try_run_case+0x1b2/0x490 [ 24.193521] ? __pfx_kunit_try_run_case+0x10/0x10 [ 24.193552] ? _raw_spin_lock_irqsave+0xa1/0x100 [ 24.193585] ? _raw_spin_unlock_irqrestore+0x5f/0x90 [ 24.193616] ? __kthread_parkme+0x82/0x160 [ 24.193647] ? preempt_count_sub+0x50/0x80 [ 24.193690] ? __pfx_kunit_try_run_case+0x10/0x10 [ 24.193793] kunit_generic_run_threadfn_adapter+0x85/0xf0 [ 24.193841] ? __pfx_kunit_generic_run_threadfn_adapter+0x10/0x10 [ 24.193876] kthread+0x323/0x710 [ 24.193907] ? trace_preempt_on+0x20/0xc0 [ 24.193943] ? __pfx_kthread+0x10/0x10 [ 24.193975] ? _raw_spin_unlock_irq+0x47/0x80 [ 24.194005] ? calculate_sigpending+0x7b/0xa0 [ 24.194038] ? __pfx_kthread+0x10/0x10 [ 24.194072] ret_from_fork+0x41/0x80 [ 24.194103] ? __pfx_kthread+0x10/0x10 [ 24.194185] ret_from_fork_asm+0x1a/0x30 [ 24.194236] </TASK> [ 24.194252] [ 24.212215] Allocated by task 252: [ 24.212582] kasan_save_stack+0x3d/0x60 [ 24.213205] kasan_save_track+0x18/0x40 [ 24.213494] kasan_save_alloc_info+0x3b/0x50 [ 24.214148] __kasan_mempool_unpoison_object+0x1bb/0x200 [ 24.214550] remove_element+0x11e/0x190 [ 24.215403] mempool_alloc_preallocated+0x4d/0x90 [ 24.216134] mempool_uaf_helper+0x96/0x400 [ 24.216582] mempool_slab_uaf+0xad/0x100 [ 24.217205] kunit_try_run_case+0x1b2/0x490 [ 24.217512] kunit_generic_run_threadfn_adapter+0x85/0xf0 [ 24.218175] kthread+0x323/0x710 [ 24.218542] ret_from_fork+0x41/0x80 [ 24.219134] ret_from_fork_asm+0x1a/0x30 [ 24.219562] [ 24.220300] Freed by task 252: [ 24.220614] kasan_save_stack+0x3d/0x60 [ 24.220966] kasan_save_track+0x18/0x40 [ 24.221524] kasan_save_free_info+0x3f/0x60 [ 24.222001] __kasan_mempool_poison_object+0x131/0x1d0 [ 24.222540] mempool_free+0x2ec/0x380 [ 24.223097] mempool_uaf_helper+0x11a/0x400 [ 24.223572] mempool_slab_uaf+0xad/0x100 [ 24.224053] kunit_try_run_case+0x1b2/0x490 [ 24.224472] kunit_generic_run_threadfn_adapter+0x85/0xf0 [ 24.224805] kthread+0x323/0x710 [ 24.225059] ret_from_fork+0x41/0x80 [ 24.226245] ret_from_fork_asm+0x1a/0x30 [ 24.226877] [ 24.227106] The buggy address belongs to the object at ffff888103230240 [ 24.227106] which belongs to the cache test_cache of size 123 [ 24.228353] The buggy address is located 0 bytes inside of [ 24.228353] freed 123-byte region [ffff888103230240, ffff8881032302bb) [ 24.229408] [ 24.229631] The buggy address belongs to the physical page: [ 24.230228] page: refcount:0 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x103230 [ 24.231364] flags: 0x200000000000000(node=0|zone=2) [ 24.232054] page_type: f5(slab) [ 24.232442] raw: 0200000000000000 ffff88810322e000 dead000000000122 0000000000000000 [ 24.233255] raw: 0000000000000000 0000000080150015 00000000f5000000 0000000000000000 [ 24.233988] page dumped because: kasan: bad access detected [ 24.234327] [ 24.234487] Memory state around the buggy address: [ 24.235138] ffff888103230100: fb fb fb fb fb fb fb fb fc fc fc fc fc fc fc fc [ 24.236273] ffff888103230180: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb [ 24.237093] >ffff888103230200: fc fc fc fc fc fc fc fc fa fb fb fb fb fb fb fb [ 24.237914] ^ [ 24.238412] ffff888103230280: fb fb fb fb fb fb fb fb fc fc fc fc fc fc fc fc [ 24.238978] ffff888103230300: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc [ 24.239623] ================================================================== [ 24.068141] ================================================================== [ 24.069188] BUG: KASAN: slab-use-after-free in mempool_uaf_helper+0x392/0x400 [ 24.070001] Read of size 1 at addr ffff888103210a00 by task kunit_try_catch/248 [ 24.070832] [ 24.071098] CPU: 1 UID: 0 PID: 248 Comm: kunit_try_catch Tainted: G B N 6.14.0-rc7-next-20250319 #1 PREEMPT(voluntary) [ 24.071251] Tainted: [B]=BAD_PAGE, [N]=TEST [ 24.071287] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014 [ 24.071332] Call Trace: [ 24.071352] <TASK> [ 24.071374] dump_stack_lvl+0x73/0xb0 [ 24.071422] print_report+0xd1/0x660 [ 24.071464] ? __virt_addr_valid+0x1db/0x2d0 [ 24.071553] ? kasan_complete_mode_report_info+0x64/0x200 [ 24.071603] kasan_report+0x104/0x140 [ 24.071652] ? mempool_uaf_helper+0x392/0x400 [ 24.071688] ? mempool_uaf_helper+0x392/0x400 [ 24.071876] __asan_report_load1_noabort+0x18/0x20 [ 24.071977] mempool_uaf_helper+0x392/0x400 [ 24.072047] ? __pfx_mempool_uaf_helper+0x10/0x10 [ 24.072150] ? finish_task_switch.isra.0+0x153/0x730 [ 24.072239] mempool_kmalloc_uaf+0xb2/0x100 [ 24.072306] ? __pfx_mempool_kmalloc_uaf+0x10/0x10 [ 24.072369] ? __switch_to+0x5d9/0xf70 [ 24.072441] ? __pfx_mempool_kmalloc+0x10/0x10 [ 24.072476] ? __pfx_mempool_kfree+0x10/0x10 [ 24.072512] ? __pfx_read_tsc+0x10/0x10 [ 24.072543] ? ktime_get_ts64+0x86/0x240 [ 24.072581] kunit_try_run_case+0x1b2/0x490 [ 24.072619] ? __pfx_kunit_try_run_case+0x10/0x10 [ 24.072651] ? _raw_spin_lock_irqsave+0xa1/0x100 [ 24.072684] ? _raw_spin_unlock_irqrestore+0x5f/0x90 [ 24.072751] ? __kthread_parkme+0x82/0x160 [ 24.072787] ? preempt_count_sub+0x50/0x80 [ 24.072823] ? __pfx_kunit_try_run_case+0x10/0x10 [ 24.072858] kunit_generic_run_threadfn_adapter+0x85/0xf0 [ 24.072892] ? __pfx_kunit_generic_run_threadfn_adapter+0x10/0x10 [ 24.072926] kthread+0x323/0x710 [ 24.072956] ? trace_preempt_on+0x20/0xc0 [ 24.072990] ? __pfx_kthread+0x10/0x10 [ 24.073021] ? _raw_spin_unlock_irq+0x47/0x80 [ 24.073052] ? calculate_sigpending+0x7b/0xa0 [ 24.073084] ? __pfx_kthread+0x10/0x10 [ 24.073138] ret_from_fork+0x41/0x80 [ 24.073172] ? __pfx_kthread+0x10/0x10 [ 24.073205] ret_from_fork_asm+0x1a/0x30 [ 24.073252] </TASK> [ 24.073269] [ 24.088637] Allocated by task 248: [ 24.089253] kasan_save_stack+0x3d/0x60 [ 24.089782] kasan_save_track+0x18/0x40 [ 24.090226] kasan_save_alloc_info+0x3b/0x50 [ 24.090683] __kasan_mempool_unpoison_object+0x1a9/0x200 [ 24.091357] remove_element+0x11e/0x190 [ 24.091960] mempool_alloc_preallocated+0x4d/0x90 [ 24.092485] mempool_uaf_helper+0x96/0x400 [ 24.093096] mempool_kmalloc_uaf+0xb2/0x100 [ 24.093572] kunit_try_run_case+0x1b2/0x490 [ 24.094145] kunit_generic_run_threadfn_adapter+0x85/0xf0 [ 24.094818] kthread+0x323/0x710 [ 24.095810] ret_from_fork+0x41/0x80 [ 24.096484] ret_from_fork_asm+0x1a/0x30 [ 24.096964] [ 24.097205] Freed by task 248: [ 24.097533] kasan_save_stack+0x3d/0x60 [ 24.097985] kasan_save_track+0x18/0x40 [ 24.098419] kasan_save_free_info+0x3f/0x60 [ 24.098915] __kasan_mempool_poison_object+0x131/0x1d0 [ 24.099478] mempool_free+0x2ec/0x380 [ 24.100039] mempool_uaf_helper+0x11a/0x400 [ 24.100510] mempool_kmalloc_uaf+0xb2/0x100 [ 24.101106] kunit_try_run_case+0x1b2/0x490 [ 24.101773] kunit_generic_run_threadfn_adapter+0x85/0xf0 [ 24.102562] kthread+0x323/0x710 [ 24.103002] ret_from_fork+0x41/0x80 [ 24.103509] ret_from_fork_asm+0x1a/0x30 [ 24.104300] [ 24.104527] The buggy address belongs to the object at ffff888103210a00 [ 24.104527] which belongs to the cache kmalloc-128 of size 128 [ 24.105601] The buggy address is located 0 bytes inside of [ 24.105601] freed 128-byte region [ffff888103210a00, ffff888103210a80) [ 24.106667] [ 24.106940] The buggy address belongs to the physical page: [ 24.107585] page: refcount:0 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x103210 [ 24.108098] flags: 0x200000000000000(node=0|zone=2) [ 24.108427] page_type: f5(slab) [ 24.108663] raw: 0200000000000000 ffff888100041a00 dead000000000122 0000000000000000 [ 24.109129] raw: 0000000000000000 0000000080100010 00000000f5000000 0000000000000000 [ 24.110105] page dumped because: kasan: bad access detected [ 24.110645] [ 24.111093] Memory state around the buggy address: [ 24.111622] ffff888103210900: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb [ 24.112564] ffff888103210980: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc [ 24.113460] >ffff888103210a00: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb [ 24.114160] ^ [ 24.114599] ffff888103210a80: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc [ 24.115474] ffff888103210b00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [ 24.116300] ==================================================================