Hay
Date
May 29, 2025, 7:10 a.m.

Environment
qemu-arm64
qemu-x86_64

[   21.079826] ==================================================================
[   21.080015] BUG: KASAN: use-after-free in kmalloc_large_uaf+0x2cc/0x2f8
[   21.080164] Read of size 1 at addr fff00000c7894000 by task kunit_try_catch/148
[   21.080281] 
[   21.081471] CPU: 0 UID: 0 PID: 148 Comm: kunit_try_catch Tainted: G    B            N  6.15.0-next-20250529 #1 PREEMPT 
[   21.082321] Tainted: [B]=BAD_PAGE, [N]=TEST
[   21.082523] Hardware name: linux,dummy-virt (DT)
[   21.082781] Call trace:
[   21.083004]  show_stack+0x20/0x38 (C)
[   21.083409]  dump_stack_lvl+0x8c/0xd0
[   21.083645]  print_report+0x118/0x608
[   21.084262]  kasan_report+0xdc/0x128
[   21.084914]  __asan_report_load1_noabort+0x20/0x30
[   21.085362]  kmalloc_large_uaf+0x2cc/0x2f8
[   21.085703]  kunit_try_run_case+0x170/0x3f0
[   21.085958]  kunit_generic_run_threadfn_adapter+0x88/0x100
[   21.086521]  kthread+0x328/0x630
[   21.086620]  ret_from_fork+0x10/0x20
[   21.086713] 
[   21.086756] The buggy address belongs to the physical page:
[   21.086833] page: refcount:0 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x107894
[   21.087976] flags: 0xbfffe0000000000(node=0|zone=2|lastcpupid=0x1ffff)
[   21.088307] raw: 0bfffe0000000000 ffffc1ffc31e2608 fff00000da448c40 0000000000000000
[   21.088497] raw: 0000000000000000 0000000000000000 00000000ffffffff 0000000000000000
[   21.088605] page dumped because: kasan: bad access detected
[   21.089153] 
[   21.089341] Memory state around the buggy address:
[   21.089728]  fff00000c7893f00: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
[   21.089868]  fff00000c7893f80: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
[   21.091206] >fff00000c7894000: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   21.091314]                    ^
[   21.091431]  fff00000c7894080: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   21.091541]  fff00000c7894100: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   21.091758] ==================================================================


[   10.423366] ==================================================================
[   10.424112] BUG: KASAN: use-after-free in kmalloc_large_uaf+0x2f1/0x340
[   10.424439] Read of size 1 at addr ffff8881024c0000 by task kunit_try_catch/165
[   10.424792] 
[   10.424892] CPU: 0 UID: 0 PID: 165 Comm: kunit_try_catch Tainted: G    B            N  6.15.0-next-20250529 #1 PREEMPT(voluntary) 
[   10.424937] Tainted: [B]=BAD_PAGE, [N]=TEST
[   10.424949] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014
[   10.424968] Call Trace:
[   10.424980]  <TASK>
[   10.424996]  dump_stack_lvl+0x73/0xb0
[   10.425021]  print_report+0xd1/0x650
[   10.425044]  ? __virt_addr_valid+0x1db/0x2d0
[   10.425067]  ? kmalloc_large_uaf+0x2f1/0x340
[   10.425087]  ? kasan_addr_to_slab+0x11/0xa0
[   10.425108]  ? kmalloc_large_uaf+0x2f1/0x340
[   10.425129]  kasan_report+0x141/0x180
[   10.425151]  ? kmalloc_large_uaf+0x2f1/0x340
[   10.425177]  __asan_report_load1_noabort+0x18/0x20
[   10.425197]  kmalloc_large_uaf+0x2f1/0x340
[   10.425265]  ? __pfx_kmalloc_large_uaf+0x10/0x10
[   10.425299]  ? __schedule+0x10cc/0x2b60
[   10.425323]  ? __pfx_read_tsc+0x10/0x10
[   10.425343]  ? ktime_get_ts64+0x86/0x230
[   10.425368]  kunit_try_run_case+0x1a5/0x480
[   10.425389]  ? __pfx_kunit_try_run_case+0x10/0x10
[   10.425408]  ? _raw_spin_lock_irqsave+0xa1/0x100
[   10.425431]  ? _raw_spin_unlock_irqrestore+0x5f/0x90
[   10.425455]  ? __kthread_parkme+0x82/0x180
[   10.425475]  ? preempt_count_sub+0x50/0x80
[   10.425498]  ? __pfx_kunit_try_run_case+0x10/0x10
[   10.425518]  kunit_generic_run_threadfn_adapter+0x85/0xf0
[   10.425542]  ? __pfx_kunit_generic_run_threadfn_adapter+0x10/0x10
[   10.425566]  kthread+0x337/0x6f0
[   10.425585]  ? trace_preempt_on+0x20/0xc0
[   10.425618]  ? __pfx_kthread+0x10/0x10
[   10.425639]  ? _raw_spin_unlock_irq+0x47/0x80
[   10.425660]  ? calculate_sigpending+0x7b/0xa0
[   10.425684]  ? __pfx_kthread+0x10/0x10
[   10.425705]  ret_from_fork+0x116/0x1d0
[   10.425723]  ? __pfx_kthread+0x10/0x10
[   10.425743]  ret_from_fork_asm+0x1a/0x30
[   10.425773]  </TASK>
[   10.425796] 
[   10.437208] The buggy address belongs to the physical page:
[   10.437735] page: refcount:0 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x1024c0
[   10.438539] flags: 0x200000000000000(node=0|zone=2)
[   10.439169] raw: 0200000000000000 ffff888154639f80 ffff888154639f80 0000000000000000
[   10.439929] raw: 0000000000000000 0000000000000000 00000000ffffffff 0000000000000000
[   10.440432] page dumped because: kasan: bad access detected
[   10.440622] 
[   10.440696] Memory state around the buggy address:
[   10.440972]  ffff8881024bff00: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
[   10.441754]  ffff8881024bff80: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
[   10.442531] >ffff8881024c0000: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   10.443268]                    ^
[   10.443646]  ffff8881024c0080: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   10.444191]  ffff8881024c0100: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   10.444420] ==================================================================