usercopy: Kernel memory overwrite attempt detected to SLUB object 'task_struct' (offset 80, size 116)! ------------[ cut here ]------------ kernel BUG at mm/usercopy.c:102! Internal error: Oops - BUG: 0 [#1] PREEMPT SMP ARM Modules linked in: CPU: 0 UID: 0 PID: 10279 Comm: syz.1.1762 Not tainted 6.12.0-syzkaller #0 Hardware name: ARM-Versatile Express PC is at usercopy_abort+0x98/0x9c mm/usercopy.c:102 LR is at __wake_up_klogd.part.0+0x7c/0xac kernel/printk/printk.c:4495 pc : [<819a3a08>] lr : [<802bcaa4>] psr: 60000013 sp : eb015e38 ip : eb015d78 fp : eb015e5c r10: 0000001a r9 : 83dce000 r8 : 841ec850 r7 : dde8d4a0 r6 : 00000000 r5 : 00000074 r4 : 00000050 r3 : 83dce000 r2 : 00000000 r1 : 00000000 r0 : 00000066 Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user Control: 30c5387d Table: 853d0c00 DAC: fffffffd Register r0 information: non-paged memory Register r1 information: NULL pointer Register r2 information: NULL pointer Register r3 information: slab task_struct start 83dce000 pointer offset 0 size 3072 Register r4 information: non-paged memory Register r5 information: non-paged memory Register r6 information: NULL pointer Register r7 information: non-slab/vmalloc memory Register r8 information: slab task_struct start 841ec800 pointer offset 80 size 3072 Register r9 information: slab task_struct start 83dce000 pointer offset 0 size 3072 Register r10 information: non-paged memory Register r11 information: 2-page vmalloc region starting at 0xeb014000 allocated at kernel_clone+0xac/0x3e4 kernel/fork.c:2786 Register r12 information: 2-page vmalloc region starting at 0xeb014000 allocated at kernel_clone+0xac/0x3e4 kernel/fork.c:2786 Process syz.1.1762 (pid: 10279, stack limit = 0xeb014000) Stack: (0xeb015e38 to 0xeb016000) 5e20: 8205bffc 8202d9f4 5e40: 82043040 00000050 00000074 83dce000 eb015e8c eb015e60 804cf8f8 819a397c 5e60: 00000074 eb015e70 802147e0 841ec850 00000074 00000000 841ec8c4 dde8d4a0 5e80: eb015ec4 eb015e90 8050e7bc 804cf82c 00000074 00000002 eb015eb4 841ec850 5ea0: 00000074 00000002 00000000 00000000 83dce000 0000001a eb015ef4 eb015ec8 5ec0: 80209d94 8050e540 841ec800 ddde4400 eb015ef4 eb015ee0 819c8f1c 00000000 5ee0: 0000000c 00000002 eb015f6c eb015ef8 8020a448 80209d10 00000000 00000000 5f00: eb015f1c eb015f10 819c8de8 8027b950 eb015f6c eb015f20 80280564 819c8dc4 5f20: eb015f54 00000000 8027d3d4 60000013 819758d0 8198cb54 eb015f54 77aca8ec 5f40: 841ec800 0000000f 841ec800 77aca8ec 0000000f 841ec800 00000002 00000000 5f60: eb015fa4 eb015f70 80252874 8020a120 80202cc0 77aca8ec eb015fac 00000000 5f80: 00000000 002862f4 0000001a 8020029c 83dce000 0000001a 00000000 eb015fa8 5fa0: 80200060 80252648 00000000 00000000 0000000f 0000030f 00000002 00000000 5fc0: 00000000 00000000 002862f4 0000001a 00000000 00006364 003d0f00 76b710bc 5fe0: 76b70ec0 76b70eb0 00018af0 00133450 60000010 0000000f 00000000 00000000 Call trace: [<819a3970>] (usercopy_abort) from [<804cf8f8>] (__check_heap_object+0xd8/0xf4 mm/slub.c:5651) [<804cf820>] (__check_heap_object) from [<8050e7bc>] (check_heap_object mm/usercopy.c:196 [inline]) [<804cf820>] (__check_heap_object) from [<8050e7bc>] (__check_object_size mm/usercopy.c:251 [inline]) [<804cf820>] (__check_heap_object) from [<8050e7bc>] (__check_object_size+0x288/0x304 mm/usercopy.c:213) r8:dde8d4a0 r7:841ec8c4 r6:00000000 r5:00000074 r4:841ec850 [<8050e534>] (__check_object_size) from [<80209d94>] (check_object_size include/linux/thread_info.h:215 [inline]) [<8050e534>] (__check_object_size) from [<80209d94>] (__copy_from_user include/linux/uaccess.h:110 [inline]) [<8050e534>] (__check_object_size) from [<80209d94>] (user_regset_copyin include/linux/regset.h:268 [inline]) [<8050e534>] (__check_object_size) from [<80209d94>] (fpa_set+0x90/0x118 arch/arm/kernel/ptrace.c:587) r10:0000001a r9:83dce000 r8:00000000 r7:00000000 r6:00000002 r5:00000074 r4:841ec850 [<80209d04>] (fpa_set) from [<8020a448>] (copy_regset_from_user include/linux/regset.h:337 [inline]) [<80209d04>] (fpa_set) from [<8020a448>] (arch_ptrace+0x334/0x424 arch/arm/kernel/ptrace.c:762) r6:00000002 r5:0000000c r4:00000000 [<8020a114>] (arch_ptrace) from [<80252874>] (__do_sys_ptrace kernel/ptrace.c:1285 [inline]) [<8020a114>] (arch_ptrace) from [<80252874>] (sys_ptrace+0x238/0x4e0 kernel/ptrace.c:1258) r7:00000000 r6:00000002 r5:841ec800 r4:0000000f [<8025263c>] (sys_ptrace) from [<80200060>] (ret_fast_syscall+0x0/0x1c arch/arm/mm/proc-v7.S:67) Exception stack(0xeb015fa8 to 0xeb015ff0) 5fa0: 00000000 00000000 0000000f 0000030f 00000002 00000000 5fc0: 00000000 00000000 002862f4 0000001a 00000000 00006364 003d0f00 76b710bc 5fe0: 76b70ec0 76b70eb0 00018af0 00133450 r10:0000001a r9:83dce000 r8:8020029c r7:0000001a r6:002862f4 r5:00000000 r4:00000000 Code: e30c0000 e3480205 e58dc000 ebfff273 (e7f001f2) ---[ end trace 0000000000000000 ]--- ---------------- Code disassembly (best guess): 0: e30c0000 movw r0, #49152 @ 0xc000 4: e3480205 movt r0, #33285 @ 0x8205 8: e58dc000 str ip, [sp] c: ebfff273 bl 0xffffc9e0 * 10: e7f001f2 udf #18 <-- trapping instruction