Hay
Date
Feb. 5, 2025, 2:09 p.m.

Environment
qemu-armv7
qemu-x86_64

[  145.566803] ==================================================================
[  145.567984] BUG: KASAN: slab-out-of-bounds in kmalloc_memmove_invalid_size+0xe4/0x1e8
[  145.568717] Read of size 64 at addr c4fcf684 by task kunit_try_catch/155
[  145.569307] 
[  145.569640] CPU: 0 PID: 155 Comm: kunit_try_catch Tainted: G    B            N 6.6.76-rc1 #1
[  145.570685] Hardware name: Generic DT based system
[  145.571145]  unwind_backtrace from show_stack+0x18/0x1c
[  145.571945]  show_stack from dump_stack_lvl+0x58/0x70
[  145.572575]  dump_stack_lvl from print_report+0x164/0x51c
[  145.573467]  print_report from kasan_report+0xc8/0x104
[  145.574074]  kasan_report from kasan_check_range+0x14c/0x198
[  145.574944]  kasan_check_range from __asan_memmove+0x28/0x68
[  145.575753]  __asan_memmove from kmalloc_memmove_invalid_size+0xe4/0x1e8
[  145.576614]  kmalloc_memmove_invalid_size from kunit_try_run_case+0x11c/0x2e4
[  145.577638]  kunit_try_run_case from kunit_generic_run_threadfn_adapter+0x2c/0x48
[  145.578683]  kunit_generic_run_threadfn_adapter from kthread+0x184/0x1a8
[  145.579784]  kthread from ret_from_fork+0x14/0x30
[  145.580382] Exception stack(0xf9fd3fb0 to 0xf9fd3ff8)
[  145.580941] 3fa0:                                     00000000 00000000 00000000 00000000
[  145.581887] 3fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  145.582987] 3fe0: 00000000 00000000 00000000 00000000 00000013 00000000
[  145.583703] 
[  145.583953] Allocated by task 155:
[  145.584322]  kasan_set_track+0x3c/0x5c
[  145.584903]  __kasan_kmalloc+0x8c/0x94
[  145.585412]  kmalloc_memmove_invalid_size+0xa0/0x1e8
[  145.586404]  kunit_try_run_case+0x11c/0x2e4
[  145.586937]  kunit_generic_run_threadfn_adapter+0x2c/0x48
[  145.588495]  kthread+0x184/0x1a8
[  145.588901]  ret_from_fork+0x14/0x30
[  145.589408] 
[  145.589683] The buggy address belongs to the object at c4fcf680
[  145.589683]  which belongs to the cache kmalloc-64 of size 64
[  145.591000] The buggy address is located 4 bytes inside of
[  145.591000]  allocated 64-byte region [c4fcf680, c4fcf6c0)
[  145.592299] 
[  145.592539] The buggy address belongs to the physical page:
[  145.593212] page:8516b471 refcount:1 mapcount:0 mapping:00000000 index:0x0 pfn:0x44fcf
[  145.594084] flags: 0x800(slab|zone=0)
[  145.594641] page_type: 0xffffffff()
[  145.595167] raw: 00000800 c4801200 00000122 00000000 00000000 80200020 ffffffff 00000001
[  145.596109] raw: 00000000
[  145.596393] page dumped because: kasan: bad access detected
[  145.597115] 
[  145.597365] Memory state around the buggy address:
[  145.598018]  c4fcf580: fa fb fb fb fb fb fb fb fc fc fc fc fc fc fc fc
[  145.598697]  c4fcf600: 00 00 07 fc fc fc fc fc fc fc fc fc fc fc fc fc
[  145.599440] >c4fcf680: 00 00 00 00 00 00 00 00 fc fc fc fc fc fc fc fc
[  145.600247]                                    ^
[  145.600741]  c4fcf700: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
[  145.601561]  c4fcf780: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
[  145.602327] ==================================================================


[   48.413924] ==================================================================
[   48.415039] BUG: KASAN: slab-out-of-bounds in kmalloc_memmove_invalid_size+0xea/0x1f0
[   48.415863] Read of size 64 at addr ffff8881028cfa04 by task kunit_try_catch/178
[   48.416726] 
[   48.417077] CPU: 1 PID: 178 Comm: kunit_try_catch Tainted: G    B            N 6.6.76-rc1 #1
[   48.417888] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014
[   48.418906] Call Trace:
[   48.419387]  <TASK>
[   48.419842]  dump_stack_lvl+0x4e/0x90
[   48.420432]  print_report+0xd2/0x660
[   48.421016]  ? __virt_addr_valid+0x156/0x1e0
[   48.421303]  ? kasan_complete_mode_report_info+0x2a/0x200
[   48.421606]  kasan_report+0xff/0x140
[   48.422162]  ? kmalloc_memmove_invalid_size+0xea/0x1f0
[   48.423379]  ? kmalloc_memmove_invalid_size+0xea/0x1f0
[   48.424198]  kasan_check_range+0x10c/0x1c0
[   48.424795]  __asan_memmove+0x27/0x70
[   48.425259]  kmalloc_memmove_invalid_size+0xea/0x1f0
[   48.425926]  ? __pfx_kmalloc_memmove_invalid_size+0x10/0x10
[   48.426499]  ? __schedule+0x70b/0x1190
[   48.427184]  ? ktime_get_ts64+0x118/0x140
[   48.427813]  kunit_try_run_case+0x126/0x290
[   48.428534]  ? __pfx_kunit_try_run_case+0x10/0x10
[   48.429257]  ? __kasan_check_write+0x18/0x20
[   48.429989]  ? trace_preempt_on+0x20/0xa0
[   48.430563]  ? __kthread_parkme+0x4f/0xd0
[   48.431296]  ? preempt_count_sub+0x50/0x80
[   48.431863]  ? __pfx_kunit_try_run_case+0x10/0x10
[   48.432458]  ? __pfx_kunit_generic_run_threadfn_adapter+0x10/0x10
[   48.433266]  kunit_generic_run_threadfn_adapter+0x33/0x50
[   48.433968]  kthread+0x19e/0x1e0
[   48.434519]  ? __pfx_kthread+0x10/0x10
[   48.435096]  ret_from_fork+0x41/0x70
[   48.435731]  ? __pfx_kthread+0x10/0x10
[   48.436346]  ret_from_fork_asm+0x1b/0x30
[   48.436942]  </TASK>
[   48.437288] 
[   48.437624] Allocated by task 178:
[   48.438224]  kasan_save_stack+0x3c/0x60
[   48.438800]  kasan_set_track+0x29/0x40
[   48.439314]  kasan_save_alloc_info+0x22/0x30
[   48.439908]  __kasan_kmalloc+0xb7/0xc0
[   48.440439]  kmalloc_trace+0x4c/0xb0
[   48.441000]  kmalloc_memmove_invalid_size+0x9f/0x1f0
[   48.441646]  kunit_try_run_case+0x126/0x290
[   48.442269]  kunit_generic_run_threadfn_adapter+0x33/0x50
[   48.443048]  kthread+0x19e/0x1e0
[   48.443548]  ret_from_fork+0x41/0x70
[   48.444172]  ret_from_fork_asm+0x1b/0x30
[   48.444775] 
[   48.445059] The buggy address belongs to the object at ffff8881028cfa00
[   48.445059]  which belongs to the cache kmalloc-64 of size 64
[   48.446587] The buggy address is located 4 bytes inside of
[   48.446587]  allocated 64-byte region [ffff8881028cfa00, ffff8881028cfa40)
[   48.447347] 
[   48.447542] The buggy address belongs to the physical page:
[   48.448768] page:(____ptrval____) refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x1028cf
[   48.450381] flags: 0x200000000000800(slab|node=0|zone=2)
[   48.450873] page_type: 0xffffffff()
[   48.451365] raw: 0200000000000800 ffff888100041640 dead000000000122 0000000000000000
[   48.452184] raw: 0000000000000000 0000000080200020 00000001ffffffff 0000000000000000
[   48.452684] page dumped because: kasan: bad access detected
[   48.453143] 
[   48.453344] Memory state around the buggy address:
[   48.453782]  ffff8881028cf900: fa fb fb fb fb fb fb fb fc fc fc fc fc fc fc fc
[   48.454323]  ffff8881028cf980: fa fb fb fb fb fb fb fb fc fc fc fc fc fc fc fc
[   48.456199] >ffff8881028cfa00: 00 00 00 00 00 00 00 00 fc fc fc fc fc fc fc fc
[   48.456992]                                            ^
[   48.457610]  ffff8881028cfa80: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
[   48.458477]  ffff8881028cfb00: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
[   48.459286] ==================================================================