Hay
Date
July 5, 2025, 11:09 a.m.

Environment
qemu-arm64
qemu-x86_64

[   21.607842] ==================================================================
[   21.607964] BUG: KASAN: use-after-free in mempool_uaf_helper+0x314/0x340
[   21.608075] Read of size 1 at addr fff00000c797c000 by task kunit_try_catch/230
[   21.608180] 
[   21.608243] CPU: 0 UID: 0 PID: 230 Comm: kunit_try_catch Tainted: G    B            N  6.16.0-rc4 #1 PREEMPT 
[   21.609153] Tainted: [B]=BAD_PAGE, [N]=TEST
[   21.609240] Hardware name: linux,dummy-virt (DT)
[   21.609717] Call trace:
[   21.609778]  show_stack+0x20/0x38 (C)
[   21.609936]  dump_stack_lvl+0x8c/0xd0
[   21.610395]  print_report+0x118/0x608
[   21.610580]  kasan_report+0xdc/0x128
[   21.610675]  __asan_report_load1_noabort+0x20/0x30
[   21.611120]  mempool_uaf_helper+0x314/0x340
[   21.611260]  mempool_kmalloc_large_uaf+0xc4/0x120
[   21.611371]  kunit_try_run_case+0x170/0x3f0
[   21.611554]  kunit_generic_run_threadfn_adapter+0x88/0x100
[   21.611738]  kthread+0x328/0x630
[   21.611843]  ret_from_fork+0x10/0x20
[   21.612012] 
[   21.612129] The buggy address belongs to the physical page:
[   21.612197] page: refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x10797c
[   21.612817] head: order:2 mapcount:0 entire_mapcount:0 nr_pages_mapped:0 pincount:0
[   21.613375] flags: 0xbfffe0000000040(head|node=0|zone=2|lastcpupid=0x1ffff)
[   21.613936] page_type: f8(unknown)
[   21.614650] raw: 0bfffe0000000040 0000000000000000 dead000000000122 0000000000000000
[   21.614819] raw: 0000000000000000 0000000000000000 00000001f8000000 0000000000000000
[   21.614940] head: 0bfffe0000000040 0000000000000000 dead000000000122 0000000000000000
[   21.615051] head: 0000000000000000 0000000000000000 00000001f8000000 0000000000000000
[   21.615159] head: 0bfffe0000000002 ffffc1ffc31e5f01 00000000ffffffff 00000000ffffffff
[   21.615274] head: ffffffffffffffff 0000000000000000 00000000ffffffff 0000000000000004
[   21.615383] page dumped because: kasan: bad access detected
[   21.615461] 
[   21.615504] Memory state around the buggy address:
[   21.615578]  fff00000c797bf00: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   21.615680]  fff00000c797bf80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   21.616944] >fff00000c797c000: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   21.617486]                    ^
[   21.617594]  fff00000c797c080: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   21.617690]  fff00000c797c100: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   21.618146] ==================================================================
[   21.680444] ==================================================================
[   21.680579] BUG: KASAN: use-after-free in mempool_uaf_helper+0x314/0x340
[   21.680704] Read of size 1 at addr fff00000c797c000 by task kunit_try_catch/234
[   21.680822] 
[   21.680892] CPU: 0 UID: 0 PID: 234 Comm: kunit_try_catch Tainted: G    B            N  6.16.0-rc4 #1 PREEMPT 
[   21.681086] Tainted: [B]=BAD_PAGE, [N]=TEST
[   21.681798] Hardware name: linux,dummy-virt (DT)
[   21.682922] Call trace:
[   21.683044]  show_stack+0x20/0x38 (C)
[   21.683244]  dump_stack_lvl+0x8c/0xd0
[   21.683388]  print_report+0x118/0x608
[   21.683500]  kasan_report+0xdc/0x128
[   21.683609]  __asan_report_load1_noabort+0x20/0x30
[   21.684405]  mempool_uaf_helper+0x314/0x340
[   21.684552]  mempool_page_alloc_uaf+0xc0/0x118
[   21.684701]  kunit_try_run_case+0x170/0x3f0
[   21.684811]  kunit_generic_run_threadfn_adapter+0x88/0x100
[   21.685456]  kthread+0x328/0x630
[   21.686026]  ret_from_fork+0x10/0x20
[   21.686248] 
[   21.686300] The buggy address belongs to the physical page:
[   21.686379] page: refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x10797c
[   21.686899] flags: 0xbfffe0000000000(node=0|zone=2|lastcpupid=0x1ffff)
[   21.687208] raw: 0bfffe0000000000 0000000000000000 dead000000000122 0000000000000000
[   21.687555] raw: 0000000000000000 0000000000000000 00000001ffffffff 0000000000000000
[   21.687863] page dumped because: kasan: bad access detected
[   21.688084] 
[   21.688304] Memory state around the buggy address:
[   21.688561]  fff00000c797bf00: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   21.688741]  fff00000c797bf80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   21.688919] >fff00000c797c000: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   21.689029]                    ^
[   21.689098]  fff00000c797c080: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   21.689449]  fff00000c797c100: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   21.690021] ==================================================================

[   15.325110] ==================================================================
[   15.326295] BUG: KASAN: use-after-free in mempool_uaf_helper+0x392/0x400
[   15.326592] Read of size 1 at addr ffff8881039f8000 by task kunit_try_catch/247
[   15.326977] 
[   15.327114] CPU: 1 UID: 0 PID: 247 Comm: kunit_try_catch Tainted: G    B            N  6.16.0-rc4 #1 PREEMPT(voluntary) 
[   15.327173] Tainted: [B]=BAD_PAGE, [N]=TEST
[   15.327189] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014
[   15.327218] Call Trace:
[   15.327236]  <TASK>
[   15.327258]  dump_stack_lvl+0x73/0xb0
[   15.327295]  print_report+0xd1/0x650
[   15.327324]  ? __virt_addr_valid+0x1db/0x2d0
[   15.327354]  ? mempool_uaf_helper+0x392/0x400
[   15.327382]  ? kasan_addr_to_slab+0x11/0xa0
[   15.327408]  ? mempool_uaf_helper+0x392/0x400
[   15.327436]  kasan_report+0x141/0x180
[   15.327464]  ? mempool_uaf_helper+0x392/0x400
[   15.327497]  __asan_report_load1_noabort+0x18/0x20
[   15.327527]  mempool_uaf_helper+0x392/0x400
[   15.327555]  ? __pfx_mempool_uaf_helper+0x10/0x10
[   15.327585]  ? __pfx_sched_clock_cpu+0x10/0x10
[   15.327614]  ? finish_task_switch.isra.0+0x153/0x700
[   15.327645]  mempool_kmalloc_large_uaf+0xef/0x140
[   15.327691]  ? __pfx_mempool_kmalloc_large_uaf+0x10/0x10
[   15.327721]  ? __kasan_check_write+0x18/0x20
[   15.327748]  ? __pfx_mempool_kmalloc+0x10/0x10
[   15.327777]  ? __pfx_mempool_kfree+0x10/0x10
[   15.327808]  ? __pfx_read_tsc+0x10/0x10
[   15.327835]  ? ktime_get_ts64+0x86/0x230
[   15.327862]  ? sysvec_apic_timer_interrupt+0x50/0x90
[   15.327894]  kunit_try_run_case+0x1a5/0x480
[   15.327927]  ? __pfx_kunit_try_run_case+0x10/0x10
[   15.327956]  ? queued_spin_lock_slowpath+0x116/0xb40
[   15.327987]  ? __kthread_parkme+0x82/0x180
[   15.328067]  ? preempt_count_sub+0x50/0x80
[   15.328100]  ? __pfx_kunit_try_run_case+0x10/0x10
[   15.328129]  kunit_generic_run_threadfn_adapter+0x85/0xf0
[   15.328157]  ? __pfx_kunit_generic_run_threadfn_adapter+0x10/0x10
[   15.328185]  kthread+0x337/0x6f0
[   15.328209]  ? trace_preempt_on+0x20/0xc0
[   15.328239]  ? __pfx_kthread+0x10/0x10
[   15.328265]  ? _raw_spin_unlock_irq+0x47/0x80
[   15.328290]  ? calculate_sigpending+0x7b/0xa0
[   15.328319]  ? __pfx_kthread+0x10/0x10
[   15.328346]  ret_from_fork+0x116/0x1d0
[   15.328369]  ? __pfx_kthread+0x10/0x10
[   15.328394]  ret_from_fork_asm+0x1a/0x30
[   15.328432]  </TASK>
[   15.328447] 
[   15.338393] The buggy address belongs to the physical page:
[   15.338733] page: refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x1039f8
[   15.339228] head: order:2 mapcount:0 entire_mapcount:0 nr_pages_mapped:0 pincount:0
[   15.339625] flags: 0x200000000000040(head|node=0|zone=2)
[   15.339904] page_type: f8(unknown)
[   15.340063] raw: 0200000000000040 0000000000000000 dead000000000122 0000000000000000
[   15.340482] raw: 0000000000000000 0000000000000000 00000001f8000000 0000000000000000
[   15.341122] head: 0200000000000040 0000000000000000 dead000000000122 0000000000000000
[   15.341498] head: 0000000000000000 0000000000000000 00000001f8000000 0000000000000000
[   15.342137] head: 0200000000000002 ffffea00040e7e01 00000000ffffffff 00000000ffffffff
[   15.342520] head: ffffffffffffffff 0000000000000000 00000000ffffffff 0000000000000004
[   15.343082] page dumped because: kasan: bad access detected
[   15.343301] 
[   15.343389] Memory state around the buggy address:
[   15.343582]  ffff8881039f7f00: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   15.344135]  ffff8881039f7f80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   15.344534] >ffff8881039f8000: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   15.344948]                    ^
[   15.345112]  ffff8881039f8080: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   15.345485]  ffff8881039f8100: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   15.345780] ==================================================================
[   15.393053] ==================================================================
[   15.393574] BUG: KASAN: use-after-free in mempool_uaf_helper+0x392/0x400
[   15.394784] Read of size 1 at addr ffff8881039f8000 by task kunit_try_catch/251
[   15.395694] 
[   15.396094] CPU: 1 UID: 0 PID: 251 Comm: kunit_try_catch Tainted: G    B            N  6.16.0-rc4 #1 PREEMPT(voluntary) 
[   15.396160] Tainted: [B]=BAD_PAGE, [N]=TEST
[   15.396178] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014
[   15.396208] Call Trace:
[   15.396225]  <TASK>
[   15.396250]  dump_stack_lvl+0x73/0xb0
[   15.396293]  print_report+0xd1/0x650
[   15.396322]  ? __virt_addr_valid+0x1db/0x2d0
[   15.396351]  ? mempool_uaf_helper+0x392/0x400
[   15.396378]  ? kasan_addr_to_slab+0x11/0xa0
[   15.396402]  ? mempool_uaf_helper+0x392/0x400
[   15.396429]  kasan_report+0x141/0x180
[   15.396455]  ? mempool_uaf_helper+0x392/0x400
[   15.396487]  __asan_report_load1_noabort+0x18/0x20
[   15.396516]  mempool_uaf_helper+0x392/0x400
[   15.396542]  ? __pfx_mempool_uaf_helper+0x10/0x10
[   15.396571]  ? __pfx_sched_clock_cpu+0x10/0x10
[   15.396598]  ? finish_task_switch.isra.0+0x153/0x700
[   15.396627]  mempool_page_alloc_uaf+0xed/0x140
[   15.396670]  ? __pfx_mempool_page_alloc_uaf+0x10/0x10
[   15.396702]  ? __pfx_mempool_alloc_pages+0x10/0x10
[   15.396725]  ? __pfx_mempool_free_pages+0x10/0x10
[   15.396751]  ? __pfx_read_tsc+0x10/0x10
[   15.396785]  ? ktime_get_ts64+0x86/0x230
[   15.396814]  kunit_try_run_case+0x1a5/0x480
[   15.396844]  ? __pfx_kunit_try_run_case+0x10/0x10
[   15.396870]  ? _raw_spin_lock_irqsave+0xa1/0x100
[   15.396899]  ? _raw_spin_unlock_irqrestore+0x5f/0x90
[   15.396925]  ? __kthread_parkme+0x82/0x180
[   15.396951]  ? preempt_count_sub+0x50/0x80
[   15.396977]  ? __pfx_kunit_try_run_case+0x10/0x10
[   15.397004]  kunit_generic_run_threadfn_adapter+0x85/0xf0
[   15.397031]  ? __pfx_kunit_generic_run_threadfn_adapter+0x10/0x10
[   15.397057]  kthread+0x337/0x6f0
[   15.397081]  ? trace_preempt_on+0x20/0xc0
[   15.397108]  ? __pfx_kthread+0x10/0x10
[   15.397132]  ? _raw_spin_unlock_irq+0x47/0x80
[   15.397156]  ? calculate_sigpending+0x7b/0xa0
[   15.397187]  ? __pfx_kthread+0x10/0x10
[   15.397211]  ret_from_fork+0x116/0x1d0
[   15.397233]  ? __pfx_kthread+0x10/0x10
[   15.397256]  ret_from_fork_asm+0x1a/0x30
[   15.397294]  </TASK>
[   15.397307] 
[   15.412520] The buggy address belongs to the physical page:
[   15.413152] page: refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x1039f8
[   15.414009] flags: 0x200000000000000(node=0|zone=2)
[   15.414555] raw: 0200000000000000 0000000000000000 dead000000000122 0000000000000000
[   15.415365] raw: 0000000000000000 0000000000000000 00000001ffffffff 0000000000000000
[   15.416161] page dumped because: kasan: bad access detected
[   15.416486] 
[   15.416573] Memory state around the buggy address:
[   15.417011]  ffff8881039f7f00: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   15.417722]  ffff8881039f7f80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   15.418439] >ffff8881039f8000: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   15.418708]                    ^
[   15.419043]  ffff8881039f8080: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   15.419788]  ffff8881039f8100: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   15.420490] ==================================================================