Hay
Date
May 26, 2025, 9:10 a.m.

Environment
qemu-arm64
qemu-x86_64

[   19.881307] ==================================================================
[   19.881645] BUG: KASAN: use-after-free in mempool_uaf_helper+0x314/0x340
[   19.881778] Read of size 1 at addr fff00000c797c000 by task kunit_try_catch/229
[   19.881885] 
[   19.881964] CPU: 0 UID: 0 PID: 229 Comm: kunit_try_catch Tainted: G    B            N  6.15.0-rc7-next-20250526 #1 PREEMPT 
[   19.882226] Tainted: [B]=BAD_PAGE, [N]=TEST
[   19.882288] Hardware name: linux,dummy-virt (DT)
[   19.882374] Call trace:
[   19.882430]  show_stack+0x20/0x38 (C)
[   19.882551]  dump_stack_lvl+0x8c/0xd0
[   19.882680]  print_report+0x118/0x608
[   19.882820]  kasan_report+0xdc/0x128
[   19.882970]  __asan_report_load1_noabort+0x20/0x30
[   19.883123]  mempool_uaf_helper+0x314/0x340
[   19.883238]  mempool_kmalloc_large_uaf+0xc4/0x120
[   19.883332]  kunit_try_run_case+0x170/0x3f0
[   19.883420]  kunit_generic_run_threadfn_adapter+0x88/0x100
[   19.883525]  kthread+0x328/0x630
[   19.883632]  ret_from_fork+0x10/0x20
[   19.883732] 
[   19.883777] The buggy address belongs to the physical page:
[   19.883946] page: refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x10797c
[   19.884219] head: order:2 mapcount:0 entire_mapcount:0 nr_pages_mapped:0 pincount:0
[   19.884393] flags: 0xbfffe0000000040(head|node=0|zone=2|lastcpupid=0x1ffff)
[   19.884546] page_type: f8(unknown)
[   19.884641] raw: 0bfffe0000000040 0000000000000000 dead000000000122 0000000000000000
[   19.884740] raw: 0000000000000000 0000000000000000 00000001f8000000 0000000000000000
[   19.884848] head: 0bfffe0000000040 0000000000000000 dead000000000122 0000000000000000
[   19.885170] head: 0000000000000000 0000000000000000 00000001f8000000 0000000000000000
[   19.885387] head: 0bfffe0000000002 ffffc1ffc31e5f01 00000000ffffffff 00000000ffffffff
[   19.885571] head: ffffffffffffffff 0000000000000000 00000000ffffffff 0000000000000004
[   19.885675] page dumped because: kasan: bad access detected
[   19.885749] 
[   19.885787] Memory state around the buggy address:
[   19.886371]  fff00000c797bf00: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   19.886813]  fff00000c797bf80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   19.886916] >fff00000c797c000: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   19.887126]                    ^
[   19.887197]  fff00000c797c080: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   19.887420]  fff00000c797c100: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   19.887523] ==================================================================
[   19.960628] ==================================================================
[   19.960819] BUG: KASAN: use-after-free in mempool_uaf_helper+0x314/0x340
[   19.960969] Read of size 1 at addr fff00000c797c000 by task kunit_try_catch/233
[   19.961086] 
[   19.961195] CPU: 0 UID: 0 PID: 233 Comm: kunit_try_catch Tainted: G    B            N  6.15.0-rc7-next-20250526 #1 PREEMPT 
[   19.961476] Tainted: [B]=BAD_PAGE, [N]=TEST
[   19.961577] Hardware name: linux,dummy-virt (DT)
[   19.961682] Call trace:
[   19.961769]  show_stack+0x20/0x38 (C)
[   19.961887]  dump_stack_lvl+0x8c/0xd0
[   19.962050]  print_report+0x118/0x608
[   19.962188]  kasan_report+0xdc/0x128
[   19.962309]  __asan_report_load1_noabort+0x20/0x30
[   19.962422]  mempool_uaf_helper+0x314/0x340
[   19.962520]  mempool_page_alloc_uaf+0xc0/0x118
[   19.962632]  kunit_try_run_case+0x170/0x3f0
[   19.962808]  kunit_generic_run_threadfn_adapter+0x88/0x100
[   19.962934]  kthread+0x328/0x630
[   19.963047]  ret_from_fork+0x10/0x20
[   19.963162] 
[   19.963214] The buggy address belongs to the physical page:
[   19.963286] page: refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x10797c
[   19.963439] flags: 0xbfffe0000000000(node=0|zone=2|lastcpupid=0x1ffff)
[   19.963638] raw: 0bfffe0000000000 0000000000000000 dead000000000122 0000000000000000
[   19.963793] raw: 0000000000000000 0000000000000000 00000001ffffffff 0000000000000000
[   19.963906] page dumped because: kasan: bad access detected
[   19.964028] 
[   19.964072] Memory state around the buggy address:
[   19.964361]  fff00000c797bf00: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   19.964626]  fff00000c797bf80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   19.964814] >fff00000c797c000: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   19.964896]                    ^
[   19.964952]  fff00000c797c080: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   19.965050]  fff00000c797c100: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   19.965649] ==================================================================


[   12.532517] ==================================================================
[   12.533560] BUG: KASAN: use-after-free in mempool_uaf_helper+0x392/0x400
[   12.534080] Read of size 1 at addr ffff8881039f4000 by task kunit_try_catch/247
[   12.534918] 
[   12.535125] CPU: 1 UID: 0 PID: 247 Comm: kunit_try_catch Tainted: G    B            N  6.15.0-rc7-next-20250526 #1 PREEMPT(voluntary) 
[   12.535185] Tainted: [B]=BAD_PAGE, [N]=TEST
[   12.535198] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014
[   12.535237] Call Trace:
[   12.535250]  <TASK>
[   12.535294]  dump_stack_lvl+0x73/0xb0
[   12.535325]  print_report+0xd1/0x650
[   12.535348]  ? __virt_addr_valid+0x1db/0x2d0
[   12.535392]  ? mempool_uaf_helper+0x392/0x400
[   12.535415]  ? kasan_addr_to_slab+0x11/0xa0
[   12.535435]  ? mempool_uaf_helper+0x392/0x400
[   12.535459]  kasan_report+0x141/0x180
[   12.535481]  ? mempool_uaf_helper+0x392/0x400
[   12.535509]  __asan_report_load1_noabort+0x18/0x20
[   12.535529]  mempool_uaf_helper+0x392/0x400
[   12.535552]  ? __pfx_mempool_uaf_helper+0x10/0x10
[   12.535579]  ? finish_task_switch.isra.0+0x153/0x700
[   12.535605]  mempool_kmalloc_large_uaf+0xef/0x140
[   12.535629]  ? __pfx_mempool_kmalloc_large_uaf+0x10/0x10
[   12.535656]  ? __pfx_mempool_kmalloc+0x10/0x10
[   12.535676]  ? __pfx_mempool_kfree+0x10/0x10
[   12.535715]  ? __pfx_read_tsc+0x10/0x10
[   12.535737]  ? ktime_get_ts64+0x86/0x230
[   12.535763]  kunit_try_run_case+0x1a5/0x480
[   12.535785]  ? __pfx_kunit_try_run_case+0x10/0x10
[   12.535805]  ? _raw_spin_lock_irqsave+0xa1/0x100
[   12.535831]  ? _raw_spin_unlock_irqrestore+0x5f/0x90
[   12.535857]  ? __kthread_parkme+0x82/0x180
[   12.535878]  ? preempt_count_sub+0x50/0x80
[   12.535900]  ? __pfx_kunit_try_run_case+0x10/0x10
[   12.535921]  kunit_generic_run_threadfn_adapter+0x85/0xf0
[   12.535945]  ? __pfx_kunit_generic_run_threadfn_adapter+0x10/0x10
[   12.535971]  kthread+0x337/0x6f0
[   12.536008]  ? trace_preempt_on+0x20/0xc0
[   12.536034]  ? __pfx_kthread+0x10/0x10
[   12.536055]  ? _raw_spin_unlock_irq+0x47/0x80
[   12.536079]  ? calculate_sigpending+0x7b/0xa0
[   12.536105]  ? __pfx_kthread+0x10/0x10
[   12.536126]  ret_from_fork+0x116/0x1d0
[   12.536145]  ? __pfx_kthread+0x10/0x10
[   12.536166]  ret_from_fork_asm+0x1a/0x30
[   12.536197]  </TASK>
[   12.536207] 
[   12.544717] The buggy address belongs to the physical page:
[   12.544933] page: refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x1039f4
[   12.545232] head: order:2 mapcount:0 entire_mapcount:0 nr_pages_mapped:0 pincount:0
[   12.545568] flags: 0x200000000000040(head|node=0|zone=2)
[   12.545926] page_type: f8(unknown)
[   12.546141] raw: 0200000000000040 0000000000000000 dead000000000122 0000000000000000
[   12.546565] raw: 0000000000000000 0000000000000000 00000001f8000000 0000000000000000
[   12.547016] head: 0200000000000040 0000000000000000 dead000000000122 0000000000000000
[   12.547408] head: 0000000000000000 0000000000000000 00000001f8000000 0000000000000000
[   12.547909] head: 0200000000000002 ffffea00040e7d01 00000000ffffffff 00000000ffffffff
[   12.548317] head: ffffffffffffffff 0000000000000000 00000000ffffffff 0000000000000004
[   12.548558] page dumped because: kasan: bad access detected
[   12.548757] 
[   12.548829] Memory state around the buggy address:
[   12.549117]  ffff8881039f3f00: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   12.549491]  ffff8881039f3f80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   12.549919] >ffff8881039f4000: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   12.550637]                    ^
[   12.550828]  ffff8881039f4080: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   12.551277]  ffff8881039f4100: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   12.551647] ==================================================================
[   12.601788] ==================================================================
[   12.602609] BUG: KASAN: use-after-free in mempool_uaf_helper+0x392/0x400
[   12.603053] Read of size 1 at addr ffff888103a30000 by task kunit_try_catch/251
[   12.603591] 
[   12.603891] CPU: 1 UID: 0 PID: 251 Comm: kunit_try_catch Tainted: G    B            N  6.15.0-rc7-next-20250526 #1 PREEMPT(voluntary) 
[   12.603940] Tainted: [B]=BAD_PAGE, [N]=TEST
[   12.603953] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014
[   12.603976] Call Trace:
[   12.603988]  <TASK>
[   12.604005]  dump_stack_lvl+0x73/0xb0
[   12.604036]  print_report+0xd1/0x650
[   12.604060]  ? __virt_addr_valid+0x1db/0x2d0
[   12.604120]  ? mempool_uaf_helper+0x392/0x400
[   12.604156]  ? kasan_addr_to_slab+0x11/0xa0
[   12.604177]  ? mempool_uaf_helper+0x392/0x400
[   12.604211]  kasan_report+0x141/0x180
[   12.604235]  ? mempool_uaf_helper+0x392/0x400
[   12.604263]  __asan_report_load1_noabort+0x18/0x20
[   12.604285]  mempool_uaf_helper+0x392/0x400
[   12.604308]  ? __pfx_mempool_uaf_helper+0x10/0x10
[   12.604332]  ? __kasan_check_write+0x18/0x20
[   12.604352]  ? __pfx_sched_clock_cpu+0x10/0x10
[   12.604386]  ? finish_task_switch.isra.0+0x153/0x700
[   12.604412]  mempool_page_alloc_uaf+0xed/0x140
[   12.604437]  ? __pfx_mempool_page_alloc_uaf+0x10/0x10
[   12.604464]  ? __pfx_mempool_alloc_pages+0x10/0x10
[   12.604485]  ? __pfx_mempool_free_pages+0x10/0x10
[   12.604508]  ? __pfx_read_tsc+0x10/0x10
[   12.604529]  ? ktime_get_ts64+0x86/0x230
[   12.604553]  kunit_try_run_case+0x1a5/0x480
[   12.604575]  ? __pfx_kunit_try_run_case+0x10/0x10
[   12.604595]  ? _raw_spin_lock_irqsave+0xa1/0x100
[   12.604621]  ? _raw_spin_unlock_irqrestore+0x5f/0x90
[   12.604647]  ? __kthread_parkme+0x82/0x180
[   12.604666]  ? preempt_count_sub+0x50/0x80
[   12.604689]  ? __pfx_kunit_try_run_case+0x10/0x10
[   12.604727]  kunit_generic_run_threadfn_adapter+0x85/0xf0
[   12.604751]  ? __pfx_kunit_generic_run_threadfn_adapter+0x10/0x10
[   12.604775]  kthread+0x337/0x6f0
[   12.604795]  ? trace_preempt_on+0x20/0xc0
[   12.604820]  ? __pfx_kthread+0x10/0x10
[   12.604841]  ? _raw_spin_unlock_irq+0x47/0x80
[   12.604863]  ? calculate_sigpending+0x7b/0xa0
[   12.604889]  ? __pfx_kthread+0x10/0x10
[   12.604910]  ret_from_fork+0x116/0x1d0
[   12.604929]  ? __pfx_kthread+0x10/0x10
[   12.604949]  ret_from_fork_asm+0x1a/0x30
[   12.604979]  </TASK>
[   12.605004] 
[   12.618179] The buggy address belongs to the physical page:
[   12.618365] page: refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x103a30
[   12.619339] flags: 0x200000000000000(node=0|zone=2)
[   12.619846] raw: 0200000000000000 0000000000000000 dead000000000122 0000000000000000
[   12.620837] raw: 0000000000000000 0000000000000000 00000001ffffffff 0000000000000000
[   12.621721] page dumped because: kasan: bad access detected
[   12.622331] 
[   12.622523] Memory state around the buggy address:
[   12.623039]  ffff888103a2ff00: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   12.623688]  ffff888103a2ff80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   12.624535] >ffff888103a30000: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   12.625210]                    ^
[   12.625581]  ffff888103a30080: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   12.626314]  ffff888103a30100: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   12.627221] ==================================================================