Hay
Date
June 25, 2025, 8:08 a.m.

Environment
qemu-arm64
qemu-x86_64

[   28.707995] ==================================================================
[   28.708223] BUG: KASAN: use-after-free in mempool_uaf_helper+0x314/0x340
[   28.708489] Read of size 1 at addr fff00000c79f0000 by task kunit_try_catch/245
[   28.708540] 
[   28.708677] CPU: 0 UID: 0 PID: 245 Comm: kunit_try_catch Tainted: G    B            N  6.16.0-rc3-next-20250625 #1 PREEMPT 
[   28.708764] Tainted: [B]=BAD_PAGE, [N]=TEST
[   28.708792] Hardware name: linux,dummy-virt (DT)
[   28.708825] Call trace:
[   28.708851]  show_stack+0x20/0x38 (C)
[   28.708902]  dump_stack_lvl+0x8c/0xd0
[   28.708990]  print_report+0x118/0x608
[   28.709120]  kasan_report+0xdc/0x128
[   28.709170]  __asan_report_load1_noabort+0x20/0x30
[   28.709217]  mempool_uaf_helper+0x314/0x340
[   28.709265]  mempool_page_alloc_uaf+0xc0/0x118
[   28.709634]  kunit_try_run_case+0x170/0x3f0
[   28.709872]  kunit_generic_run_threadfn_adapter+0x88/0x100
[   28.709983]  kthread+0x328/0x630
[   28.710045]  ret_from_fork+0x10/0x20
[   28.710093] 
[   28.710117] The buggy address belongs to the physical page:
[   28.710151] page: refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x1079f0
[   28.710215] flags: 0xbfffe0000000000(node=0|zone=2|lastcpupid=0x1ffff)
[   28.710340] raw: 0bfffe0000000000 0000000000000000 dead000000000122 0000000000000000
[   28.710726] raw: 0000000000000000 0000000000000000 00000001ffffffff 0000000000000000
[   28.710966] page dumped because: kasan: bad access detected
[   28.710999] 
[   28.711019] Memory state around the buggy address:
[   28.711201]  fff00000c79eff00: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   28.711248]  fff00000c79eff80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   28.711290] >fff00000c79f0000: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   28.711327]                    ^
[   28.711354]  fff00000c79f0080: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   28.711406]  fff00000c79f0100: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   28.711444] ==================================================================
[   28.667507] ==================================================================
[   28.667569] BUG: KASAN: use-after-free in mempool_uaf_helper+0x314/0x340
[   28.667708] Read of size 1 at addr fff00000c79f0000 by task kunit_try_catch/241
[   28.667898] 
[   28.668062] CPU: 0 UID: 0 PID: 241 Comm: kunit_try_catch Tainted: G    B            N  6.16.0-rc3-next-20250625 #1 PREEMPT 
[   28.668332] Tainted: [B]=BAD_PAGE, [N]=TEST
[   28.668359] Hardware name: linux,dummy-virt (DT)
[   28.668418] Call trace:
[   28.668441]  show_stack+0x20/0x38 (C)
[   28.668490]  dump_stack_lvl+0x8c/0xd0
[   28.668537]  print_report+0x118/0x608
[   28.668583]  kasan_report+0xdc/0x128
[   28.668627]  __asan_report_load1_noabort+0x20/0x30
[   28.668674]  mempool_uaf_helper+0x314/0x340
[   28.668720]  mempool_kmalloc_large_uaf+0xc4/0x120
[   28.668768]  kunit_try_run_case+0x170/0x3f0
[   28.668817]  kunit_generic_run_threadfn_adapter+0x88/0x100
[   28.668923]  kthread+0x328/0x630
[   28.669155]  ret_from_fork+0x10/0x20
[   28.669388] 
[   28.669423] The buggy address belongs to the physical page:
[   28.669494] page: refcount:0 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x1079f0
[   28.669621] head: order:2 mapcount:0 entire_mapcount:0 nr_pages_mapped:0 pincount:0
[   28.669754] flags: 0xbfffe0000000040(head|node=0|zone=2|lastcpupid=0x1ffff)
[   28.669847] page_type: f8(unknown)
[   28.669886] raw: 0bfffe0000000040 0000000000000000 dead000000000122 0000000000000000
[   28.669940] raw: 0000000000000000 0000000000000000 00000000f8000000 0000000000000000
[   28.670068] head: 0bfffe0000000040 0000000000000000 dead000000000122 0000000000000000
[   28.670266] head: 0000000000000000 0000000000000000 00000000f8000000 0000000000000000
[   28.670429] head: 0bfffe0000000002 ffffc1ffc31e7c01 00000000ffffffff 00000000ffffffff
[   28.670476] head: ffffffffffffffff 0000000000000000 00000000ffffffff 0000000000000004
[   28.670517] page dumped because: kasan: bad access detected
[   28.670549] 
[   28.670566] Memory state around the buggy address:
[   28.670600]  fff00000c79eff00: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   28.670642]  fff00000c79eff80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   28.670684] >fff00000c79f0000: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   28.670721]                    ^
[   28.670750]  fff00000c79f0080: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   28.670791]  fff00000c79f0100: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   28.670829] ==================================================================

[   23.398459] ==================================================================
[   23.399418] BUG: KASAN: use-after-free in mempool_uaf_helper+0x392/0x400
[   23.400565] Read of size 1 at addr ffff888103964000 by task kunit_try_catch/258
[   23.401295] 
[   23.401580] CPU: 1 UID: 0 PID: 258 Comm: kunit_try_catch Tainted: G    B            N  6.16.0-rc3-next-20250625 #1 PREEMPT(voluntary) 
[   23.401635] Tainted: [B]=BAD_PAGE, [N]=TEST
[   23.401649] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014
[   23.401671] Call Trace:
[   23.401686]  <TASK>
[   23.401704]  dump_stack_lvl+0x73/0xb0
[   23.401735]  print_report+0xd1/0x650
[   23.401755]  ? __virt_addr_valid+0x1db/0x2d0
[   23.401778]  ? mempool_uaf_helper+0x392/0x400
[   23.401798]  ? kasan_addr_to_slab+0x11/0xa0
[   23.401910]  ? mempool_uaf_helper+0x392/0x400
[   23.401956]  kasan_report+0x141/0x180
[   23.401978]  ? mempool_uaf_helper+0x392/0x400
[   23.402003]  __asan_report_load1_noabort+0x18/0x20
[   23.402026]  mempool_uaf_helper+0x392/0x400
[   23.402048]  ? __pfx_mempool_uaf_helper+0x10/0x10
[   23.402104]  ? __kasan_check_write+0x18/0x20
[   23.402127]  ? __pfx_sched_clock_cpu+0x10/0x10
[   23.402150]  ? finish_task_switch.isra.0+0x153/0x700
[   23.402175]  mempool_kmalloc_large_uaf+0xef/0x140
[   23.402196]  ? __pfx_mempool_kmalloc_large_uaf+0x10/0x10
[   23.402220]  ? __pfx_mempool_kmalloc+0x10/0x10
[   23.402243]  ? __pfx_mempool_kfree+0x10/0x10
[   23.402266]  ? __pfx_read_tsc+0x10/0x10
[   23.402288]  ? ktime_get_ts64+0x86/0x230
[   23.402312]  kunit_try_run_case+0x1a5/0x480
[   23.402336]  ? __pfx_kunit_try_run_case+0x10/0x10
[   23.402358]  ? _raw_spin_lock_irqsave+0xa1/0x100
[   23.402379]  ? _raw_spin_unlock_irqrestore+0x5f/0x90
[   23.402404]  ? __kthread_parkme+0x82/0x180
[   23.402423]  ? preempt_count_sub+0x50/0x80
[   23.402444]  ? __pfx_kunit_try_run_case+0x10/0x10
[   23.402468]  kunit_generic_run_threadfn_adapter+0x85/0xf0
[   23.402489]  ? __pfx_kunit_generic_run_threadfn_adapter+0x10/0x10
[   23.402512]  kthread+0x337/0x6f0
[   23.402529]  ? trace_preempt_on+0x20/0xc0
[   23.402552]  ? __pfx_kthread+0x10/0x10
[   23.402571]  ? _raw_spin_unlock_irq+0x47/0x80
[   23.402592]  ? calculate_sigpending+0x7b/0xa0
[   23.402615]  ? __pfx_kthread+0x10/0x10
[   23.402637]  ret_from_fork+0x116/0x1d0
[   23.402655]  ? __pfx_kthread+0x10/0x10
[   23.402674]  ret_from_fork_asm+0x1a/0x30
[   23.402704]  </TASK>
[   23.402715] 
[   23.417975] The buggy address belongs to the physical page:
[   23.418162] page: refcount:0 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x103964
[   23.418402] head: order:2 mapcount:0 entire_mapcount:0 nr_pages_mapped:0 pincount:0
[   23.418627] flags: 0x200000000000040(head|node=0|zone=2)
[   23.418798] page_type: f8(unknown)
[   23.418924] raw: 0200000000000040 0000000000000000 dead000000000122 0000000000000000
[   23.419184] raw: 0000000000000000 0000000000000000 00000000f8000000 0000000000000000
[   23.419661] head: 0200000000000040 0000000000000000 dead000000000122 0000000000000000
[   23.420095] head: 0000000000000000 0000000000000000 00000000f8000000 0000000000000000
[   23.420494] head: 0200000000000002 ffffea00040e5901 00000000ffffffff 00000000ffffffff
[   23.420789] head: ffffffffffffffff 0000000000000000 00000000ffffffff 0000000000000004
[   23.421246] page dumped because: kasan: bad access detected
[   23.421480] 
[   23.421567] Memory state around the buggy address:
[   23.421767]  ffff888103963f00: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   23.421996]  ffff888103963f80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   23.422285] >ffff888103964000: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   23.422648]                    ^
[   23.422763]  ffff888103964080: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   23.423343]  ffff888103964100: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   23.423635] ==================================================================
[   23.458627] ==================================================================
[   23.460176] BUG: KASAN: use-after-free in mempool_uaf_helper+0x392/0x400
[   23.460990] Read of size 1 at addr ffff888102bec000 by task kunit_try_catch/262
[   23.461275] 
[   23.461387] CPU: 0 UID: 0 PID: 262 Comm: kunit_try_catch Tainted: G    B            N  6.16.0-rc3-next-20250625 #1 PREEMPT(voluntary) 
[   23.461450] Tainted: [B]=BAD_PAGE, [N]=TEST
[   23.461464] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014
[   23.461486] Call Trace:
[   23.461501]  <TASK>
[   23.461519]  dump_stack_lvl+0x73/0xb0
[   23.461547]  print_report+0xd1/0x650
[   23.461567]  ? __virt_addr_valid+0x1db/0x2d0
[   23.461593]  ? mempool_uaf_helper+0x392/0x400
[   23.461613]  ? kasan_addr_to_slab+0x11/0xa0
[   23.461633]  ? mempool_uaf_helper+0x392/0x400
[   23.461654]  kasan_report+0x141/0x180
[   23.461674]  ? mempool_uaf_helper+0x392/0x400
[   23.461699]  __asan_report_load1_noabort+0x18/0x20
[   23.461722]  mempool_uaf_helper+0x392/0x400
[   23.461743]  ? __pfx_mempool_uaf_helper+0x10/0x10
[   23.461767]  ? __kasan_check_write+0x18/0x20
[   23.461789]  ? __pfx_sched_clock_cpu+0x10/0x10
[   23.461812]  ? finish_task_switch.isra.0+0x153/0x700
[   23.461838]  mempool_page_alloc_uaf+0xed/0x140
[   23.461860]  ? __pfx_mempool_page_alloc_uaf+0x10/0x10
[   23.461885]  ? __pfx_mempool_alloc_pages+0x10/0x10
[   23.461909]  ? __pfx_mempool_free_pages+0x10/0x10
[   23.461933]  ? __pfx_read_tsc+0x10/0x10
[   23.462012]  ? ktime_get_ts64+0x86/0x230
[   23.462042]  kunit_try_run_case+0x1a5/0x480
[   23.462069]  ? __pfx_kunit_try_run_case+0x10/0x10
[   23.462091]  ? _raw_spin_lock_irqsave+0xa1/0x100
[   23.462112]  ? _raw_spin_unlock_irqrestore+0x5f/0x90
[   23.462144]  ? __kthread_parkme+0x82/0x180
[   23.462163]  ? preempt_count_sub+0x50/0x80
[   23.462184]  ? __pfx_kunit_try_run_case+0x10/0x10
[   23.462209]  kunit_generic_run_threadfn_adapter+0x85/0xf0
[   23.462232]  ? __pfx_kunit_generic_run_threadfn_adapter+0x10/0x10
[   23.462254]  kthread+0x337/0x6f0
[   23.462273]  ? trace_preempt_on+0x20/0xc0
[   23.462296]  ? __pfx_kthread+0x10/0x10
[   23.462315]  ? _raw_spin_unlock_irq+0x47/0x80
[   23.462337]  ? calculate_sigpending+0x7b/0xa0
[   23.462360]  ? __pfx_kthread+0x10/0x10
[   23.462381]  ret_from_fork+0x116/0x1d0
[   23.462400]  ? __pfx_kthread+0x10/0x10
[   23.462420]  ret_from_fork_asm+0x1a/0x30
[   23.462450]  </TASK>
[   23.462461] 
[   23.476100] The buggy address belongs to the physical page:
[   23.476383] page: refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x102bec
[   23.476997] flags: 0x200000000000000(node=0|zone=2)
[   23.477287] raw: 0200000000000000 0000000000000000 dead000000000122 0000000000000000
[   23.477955] raw: 0000000000000000 0000000000000000 00000001ffffffff 0000000000000000
[   23.478253] page dumped because: kasan: bad access detected
[   23.478727] 
[   23.478907] Memory state around the buggy address:
[   23.479487]  ffff888102bebf00: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   23.479750]  ffff888102bebf80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   23.480088] >ffff888102bec000: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   23.480715]                    ^
[   23.481060]  ffff888102bec080: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   23.481692]  ffff888102bec100: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   23.482324] ==================================================================