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: 1 PID: 9573 Comm: syz-executor.1 Not tainted 6.9.0-rc5-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:3926 pc : [<818a83c4>] lr : [<802ba680>] psr: 60000013 sp : e07d5d98 ip : e07d5ce0 fp : e07d5dbc r10: 81a00568 r9 : 00001000 r8 : 836b1850 r7 : dde740c0 r6 : 00000000 r5 : 00000074 r4 : 00000050 r3 : 836b5400 r2 : 00000000 r1 : 00000000 r0 : 00000066 Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment none Control: 30c5387d Table: 847c3140 DAC: 00000000 Register r0 information: non-paged memory Register r1 information: NULL pointer Register r2 information: NULL pointer Register r3 information: slab task_struct start 836b5400 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 836b1800 pointer offset 80 size 3072 Register r9 information: non-paged memory Register r10 information: non-slab/vmalloc memory Register r11 information: 2-page vmalloc region starting at 0xe07d4000 allocated at kernel_clone+0xac/0x3cc kernel/fork.c:2797 Register r12 information: 2-page vmalloc region starting at 0xe07d4000 allocated at kernel_clone+0xac/0x3cc kernel/fork.c:2797 Process syz-executor.1 (pid: 9573, stack limit = 0xe07d4000) Stack: (0xe07d5d98 to 0xe07d6000) 5d80: 81fec7d4 81fbf3d0 5da0: 81fd3a10 00000050 00000074 00001000 e07d5dec e07d5dc0 804b82c4 818a8338 5dc0: 00000074 e07d5dd0 80216314 836b1850 00000074 00000000 836b18c4 dde740c0 5de0: e07d5e24 e07d5df0 804ef468 804b81f8 00000074 200004c4 e07d5e14 836b1850 5e00: 00000074 200004c4 00000074 81a005a0 00001000 81a00568 e07d5e4c e07d5e28 5e20: 8020a0e4 804ef288 81a00568 e07d5ef4 e07d5e50 e07d5e50 8020a054 836b1800 5e40: e07d5ef4 e07d5e50 80253b88 8020a060 00000000 20002080 20002080 81a0057c 5e60: 818cc6f8 00000000 e07d5eb4 e07d5e78 8020d1c0 8020c164 80000013 00000000 5e80: 8027e644 00000000 00000000 00000000 00000000 00000000 00000000 00000000 5ea0: 00000000 836b5400 e07d5edc e07d5eb8 8027cafc 802ac79c 82e4937c ffffffff 5ec0: e07d5eec 8bfd170a 836b1800 200004c0 00004202 00000002 00000000 200004c0 5ee0: 836b5400 0000001a e07d5f6c e07d5ef8 8020a4e0 802538ac 836b1800 836b207c 5f00: e07d5f1c e07d5f10 818ccba4 8027b084 e07d5f6c e07d5f20 80280e88 818ccb80 5f20: e07d5f54 00000000 8027cafc 60000013 8187a7a4 81891b44 e07d5f54 8bfd170a 5f40: 836b1800 00004205 836b1800 8bfd170a 00004205 836b1800 00000002 00000000 5f60: e07d5fa4 e07d5f70 80253570 8020a43c 80203054 8bfd170a e07d5fac 00000000 5f80: 00000000 0014c2cc 0000001a 80200288 836b5400 0000001a 00000000 e07d5fa8 5fa0: 80200060 80253340 00000000 00000000 00004205 00000582 00000002 200004c0 5fc0: 00000000 00000000 0014c2cc 0000001a 7e91132e 7e91132f 003d0f00 76b470fc 5fe0: 76b46f08 76b46ef8 00016ab0 00050bf0 60000010 00004205 00000000 00000000 Call trace: [<818a832c>] (usercopy_abort) from [<804b82c4>] (__check_heap_object+0xd8/0xf4 mm/slub.c:5370) [<804b81ec>] (__check_heap_object) from [<804ef468>] (check_heap_object mm/usercopy.c:196 [inline]) [<804b81ec>] (__check_heap_object) from [<804ef468>] (__check_object_size mm/usercopy.c:251 [inline]) [<804b81ec>] (__check_heap_object) from [<804ef468>] (__check_object_size+0x1ec/0x30c mm/usercopy.c:213) r8:dde740c0 r7:836b18c4 r6:00000000 r5:00000074 r4:836b1850 [<804ef27c>] (__check_object_size) from [<8020a0e4>] (check_object_size include/linux/thread_info.h:215 [inline]) [<804ef27c>] (__check_object_size) from [<8020a0e4>] (__copy_from_user include/linux/uaccess.h:101 [inline]) [<804ef27c>] (__check_object_size) from [<8020a0e4>] (user_regset_copyin include/linux/regset.h:268 [inline]) [<804ef27c>] (__check_object_size) from [<8020a0e4>] (fpa_set+0x90/0xfc arch/arm/kernel/ptrace.c:587) r10:81a00568 r9:00001000 r8:81a005a0 r7:00000074 r6:200004c4 r5:00000074 r4:836b1850 [<8020a054>] (fpa_set) from [<80253b88>] (copy_regset_from_user include/linux/regset.h:337 [inline]) [<8020a054>] (fpa_set) from [<80253b88>] (ptrace_regset kernel/ptrace.c:906 [inline]) [<8020a054>] (fpa_set) from [<80253b88>] (ptrace_request+0x2e8/0x9a4 kernel/ptrace.c:1218) r5:836b1800 r4:8020a054 [<802538a0>] (ptrace_request) from [<8020a4e0>] (arch_ptrace+0xb0/0x3e4 arch/arm/kernel/ptrace.c:818) r10:0000001a r9:836b5400 r8:200004c0 r7:00000000 r6:00000002 r5:00004202 r4:200004c0 [<8020a430>] (arch_ptrace) from [<80253570>] (__do_sys_ptrace kernel/ptrace.c:1285 [inline]) [<8020a430>] (arch_ptrace) from [<80253570>] (sys_ptrace+0x23c/0x4e4 kernel/ptrace.c:1258) r7:00000000 r6:00000002 r5:836b1800 r4:00004205 [<80253334>] (sys_ptrace) from [<80200060>] (ret_fast_syscall+0x0/0x1c arch/arm/mm/proc-v7.S:66) Exception stack(0xe07d5fa8 to 0xe07d5ff0) 5fa0: 00000000 00000000 00004205 00000582 00000002 200004c0 5fc0: 00000000 00000000 0014c2cc 0000001a 7e91132e 7e91132f 003d0f00 76b470fc 5fe0: 76b46f08 76b46ef8 00016ab0 00050bf0 r10:0000001a r9:836b5400 r8:80200288 r7:0000001a r6:0014c2cc r5:00000000 r4:00000000 Code: e30c07d8 e34801fe e58dc000 ebfff359 (e7f001f2) ---[ end trace 0000000000000000 ]--- ---------------- Code disassembly (best guess): 0: e30c07d8 movw r0, #51160 @ 0xc7d8 4: e34801fe movt r0, #33278 @ 0x81fe 8: e58dc000 str ip, [sp] c: ebfff359 bl 0xffffcd78 * 10: e7f001f2 udf #18 <-- trapping instruction