Hay
Date
April 20, 2025, 11:09 p.m.

Environment
qemu-x86_64
rk3399-rock-pi-4b

[   11.832913] ==================================================================
[   11.833829] BUG: KASAN: slab-use-after-free in kmalloc_double_kzfree+0x19c/0x350
[   11.834309] Read of size 1 at addr ffff8881023f82e0 by task kunit_try_catch/212
[   11.834814] 
[   11.835108] CPU: 0 UID: 0 PID: 212 Comm: kunit_try_catch Tainted: G    B            N  6.15.0-rc3 #1 PREEMPT(voluntary) 
[   11.835158] Tainted: [B]=BAD_PAGE, [N]=TEST
[   11.835171] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014
[   11.835198] Call Trace:
[   11.835210]  <TASK>
[   11.835226]  dump_stack_lvl+0x73/0xb0
[   11.835254]  print_report+0xd1/0x650
[   11.835278]  ? __virt_addr_valid+0x1db/0x2d0
[   11.835300]  ? kmalloc_double_kzfree+0x19c/0x350
[   11.835336]  ? kasan_complete_mode_report_info+0x64/0x200
[   11.835359]  ? kmalloc_double_kzfree+0x19c/0x350
[   11.835383]  kasan_report+0x141/0x180
[   11.835579]  ? kmalloc_double_kzfree+0x19c/0x350
[   11.835613]  ? kmalloc_double_kzfree+0x19c/0x350
[   11.835636]  __kasan_check_byte+0x3d/0x50
[   11.835660]  kfree_sensitive+0x22/0x90
[   11.835684]  kmalloc_double_kzfree+0x19c/0x350
[   11.835707]  ? __pfx_kmalloc_double_kzfree+0x10/0x10
[   11.835731]  ? __schedule+0x10cc/0x2b30
[   11.835755]  ? __pfx_read_tsc+0x10/0x10
[   11.835775]  ? ktime_get_ts64+0x86/0x230
[   11.835802]  kunit_try_run_case+0x1a5/0x480
[   11.835825]  ? __pfx_kunit_try_run_case+0x10/0x10
[   11.835846]  ? _raw_spin_lock_irqsave+0xa1/0x100
[   11.835869]  ? _raw_spin_unlock_irqrestore+0x5f/0x90
[   11.835893]  ? __kthread_parkme+0x82/0x180
[   11.835913]  ? preempt_count_sub+0x50/0x80
[   11.835937]  ? __pfx_kunit_try_run_case+0x10/0x10
[   11.835961]  kunit_generic_run_threadfn_adapter+0x85/0xf0
[   11.835983]  ? __pfx_kunit_generic_run_threadfn_adapter+0x10/0x10
[   11.836005]  kthread+0x337/0x6f0
[   11.836025]  ? trace_preempt_on+0x20/0xc0
[   11.836049]  ? __pfx_kthread+0x10/0x10
[   11.836070]  ? _raw_spin_unlock_irq+0x47/0x80
[   11.836091]  ? calculate_sigpending+0x7b/0xa0
[   11.836113]  ? __pfx_kthread+0x10/0x10
[   11.836143]  ret_from_fork+0x41/0x80
[   11.836163]  ? __pfx_kthread+0x10/0x10
[   11.836185]  ret_from_fork_asm+0x1a/0x30
[   11.836215]  </TASK>
[   11.836226] 
[   11.846169] Allocated by task 212:
[   11.846391]  kasan_save_stack+0x45/0x70
[   11.846543]  kasan_save_track+0x18/0x40
[   11.846737]  kasan_save_alloc_info+0x3b/0x50
[   11.846940]  __kasan_kmalloc+0xb7/0xc0
[   11.847103]  __kmalloc_cache_noprof+0x189/0x420
[   11.847352]  kmalloc_double_kzfree+0xa9/0x350
[   11.847503]  kunit_try_run_case+0x1a5/0x480
[   11.847671]  kunit_generic_run_threadfn_adapter+0x85/0xf0
[   11.847924]  kthread+0x337/0x6f0
[   11.848094]  ret_from_fork+0x41/0x80
[   11.848273]  ret_from_fork_asm+0x1a/0x30
[   11.848433] 
[   11.848503] Freed by task 212:
[   11.848721]  kasan_save_stack+0x45/0x70
[   11.848923]  kasan_save_track+0x18/0x40
[   11.849117]  kasan_save_free_info+0x3f/0x60
[   11.849342]  __kasan_slab_free+0x56/0x70
[   11.849592]  kfree+0x222/0x3f0
[   11.849780]  kfree_sensitive+0x67/0x90
[   11.849979]  kmalloc_double_kzfree+0x12b/0x350
[   11.850177]  kunit_try_run_case+0x1a5/0x480
[   11.850577]  kunit_generic_run_threadfn_adapter+0x85/0xf0
[   11.850810]  kthread+0x337/0x6f0
[   11.850933]  ret_from_fork+0x41/0x80
[   11.851063]  ret_from_fork_asm+0x1a/0x30
[   11.851202] 
[   11.851299] The buggy address belongs to the object at ffff8881023f82e0
[   11.851299]  which belongs to the cache kmalloc-16 of size 16
[   11.851908] The buggy address is located 0 bytes inside of
[   11.851908]  freed 16-byte region [ffff8881023f82e0, ffff8881023f82f0)
[   11.852502] 
[   11.852604] The buggy address belongs to the physical page:
[   11.852836] page: refcount:0 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x1023f8
[   11.853168] flags: 0x200000000000000(node=0|zone=2)
[   11.853377] page_type: f5(slab)
[   11.853554] raw: 0200000000000000 ffff888100041640 dead000000000122 0000000000000000
[   11.853845] raw: 0000000000000000 0000000080800080 00000000f5000000 0000000000000000
[   11.854207] page dumped because: kasan: bad access detected
[   11.854566] 
[   11.854652] Memory state around the buggy address:
[   11.854848]  ffff8881023f8180: 00 02 fc fc 00 02 fc fc 00 06 fc fc 00 06 fc fc
[   11.855142]  ffff8881023f8200: fa fb fc fc fa fb fc fc fa fb fc fc fa fb fc fc
[   11.855613] >ffff8881023f8280: fa fb fc fc fa fb fc fc fa fb fc fc fa fb fc fc
[   11.855887]                                                        ^
[   11.856164]  ffff8881023f8300: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
[   11.856389]  ffff8881023f8380: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
[   11.856600] ==================================================================

[   21.735942] ==================================================================
[   21.737265] BUG: KASAN: slab-use-after-free in kmalloc_double_kzfree+0x168/0x308
[   21.737972] Read of size 1 at addr ffff0000015a8c60 by task kunit_try_catch/246
[   21.738656] 
[   21.738830] CPU: 1 UID: 0 PID: 246 Comm: kunit_try_catch Tainted: G    B            N  6.15.0-rc3 #1 PREEMPT 
[   21.738891] Tainted: [B]=BAD_PAGE, [N]=TEST
[   21.738909] Hardware name: Radxa ROCK Pi 4B (DT)
[   21.738931] Call trace:
[   21.738945]  show_stack+0x20/0x38 (C)
[   21.738987]  dump_stack_lvl+0x8c/0xd0
[   21.739024]  print_report+0x118/0x608
[   21.739062]  kasan_report+0xdc/0x128
[   21.739096]  __kasan_check_byte+0x54/0x70
[   21.739133]  kfree_sensitive+0x30/0xb0
[   21.739169]  kmalloc_double_kzfree+0x168/0x308
[   21.739213]  kunit_try_run_case+0x170/0x3f0
[   21.739257]  kunit_generic_run_threadfn_adapter+0x88/0x100
[   21.739305]  kthread+0x328/0x630
[   21.739346]  ret_from_fork+0x10/0x20
[   21.739387] 
[   21.745297] Allocated by task 246:
[   21.745630]  kasan_save_stack+0x3c/0x68
[   21.746014]  kasan_save_track+0x20/0x40
[   21.746395]  kasan_save_alloc_info+0x40/0x58
[   21.746817]  __kasan_kmalloc+0xd4/0xd8
[   21.747190]  __kmalloc_cache_noprof+0x15c/0x3c0
[   21.747644]  kmalloc_double_kzfree+0xb8/0x308
[   21.748081]  kunit_try_run_case+0x170/0x3f0
[   21.748500]  kunit_generic_run_threadfn_adapter+0x88/0x100
[   21.749034]  kthread+0x328/0x630
[   21.749368]  ret_from_fork+0x10/0x20
[   21.749728] 
[   21.749888] Freed by task 246:
[   21.750190]  kasan_save_stack+0x3c/0x68
[   21.750571]  kasan_save_track+0x20/0x40
[   21.750951]  kasan_save_free_info+0x4c/0x78
[   21.751366]  __kasan_slab_free+0x6c/0x98
[   21.751755]  kfree+0x214/0x3c8
[   21.752073]  kfree_sensitive+0x80/0xb0
[   21.752446]  kmalloc_double_kzfree+0x11c/0x308
[   21.752889]  kunit_try_run_case+0x170/0x3f0
[   21.753305]  kunit_generic_run_threadfn_adapter+0x88/0x100
[   21.753841]  kthread+0x328/0x630
[   21.754176]  ret_from_fork+0x10/0x20
[   21.754537] 
[   21.754696] The buggy address belongs to the object at ffff0000015a8c60
[   21.754696]  which belongs to the cache kmalloc-16 of size 16
[   21.755825] The buggy address is located 0 bytes inside of
[   21.755825]  freed 16-byte region [ffff0000015a8c60, ffff0000015a8c70)
[   21.756903] 
[   21.757051] The buggy address belongs to the physical page:
[   21.757559] page: refcount:0 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x15a8
[   21.758272] flags: 0x3fffe0000000000(node=0|zone=0|lastcpupid=0x1ffff)
[   21.758872] page_type: f5(slab)
[   21.759176] raw: 03fffe0000000000 ffff000000402640 dead000000000122 0000000000000000
[   21.759880] raw: 0000000000000000 0000000080800080 00000000f5000000 0000000000000000
[   21.760578] page dumped because: kasan: bad access detected
[   21.761084] 
[   21.761231] Memory state around the buggy address:
[   21.761670]  ffff0000015a8b00: fa fb fc fc fa fb fc fc fa fb fc fc fa fb fc fc
[   21.762326]  ffff0000015a8b80: fa fb fc fc fa fb fc fc fa fb fc fc fa fb fc fc
[   21.762980] >ffff0000015a8c00: fa fb fc fc fa fb fc fc fa fb fc fc fa fb fc fc
[   21.763632]                                                        ^
[   21.764209]  ffff0000015a8c80: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
[   21.764864]  ffff0000015a8d00: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
[   21.765515] ==================================================================