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: 3117 Comm: syz-executor362 Not tainted 6.12.0-rc2-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 : [<8199f388>] lr : [<802bc97c>] psr: 60000013 sp : df971d90 ip : df971cd0 fp : df971db4 r10: 81a0056c r9 : 00000078 r8 : 83e7d450 r7 : dde858e0 r6 : 00000000 r5 : 00000074 r4 : 00000050 r3 : 83e78c00 r2 : 00000000 r1 : 00000000 r0 : 00000066 Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user Control: 30c5387d Table: 842c2b00 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 83e78c00 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 83e7d400 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 0xdf970000 allocated at kernel_clone+0xac/0x3e4 kernel/fork.c:2784 Register r12 information: 2-page vmalloc region starting at 0xdf970000 allocated at kernel_clone+0xac/0x3e4 kernel/fork.c:2784 Process syz-executor362 (pid: 3117, stack limit = 0xdf970000) Stack: (0xdf971d90 to 0xdf972000) 1d80: 8205b3b8 8202ce48 8204248c 00000050 1da0: 00000074 00000078 df971de4 df971db8 804cec50 8199f2fc 00000074 df971dc8 1dc0: 802147c0 83e7d450 00000074 00000000 83e7d4c4 dde858e0 df971e1c df971de8 1de0: 8050d758 804ceb84 00000074 20000084 df971e0c 83e7d450 00000074 20000084 1e00: 00000074 81a005a4 00000078 81a0056c df971e4c df971e20 80209d94 8050d4dc 1e20: 804f4750 819b8988 df971e54 df971e38 8048c544 80209d04 83e7d400 20000084 1e40: df971ef4 df971e50 80252e9c 80209d10 00000000 20000000 20000000 81a00580 1e60: 819c4264 00000000 df971eb4 df971e78 8020d090 8020c014 8020c02c 00000000 1e80: 8027eb28 00000000 00000000 00000000 00000000 00000000 00000000 00000000 1ea0: 00000000 83e78c00 df971edc df971eb8 8027d354 802ae4b4 8028035c 00000000 1ec0: 00000000 8e27da55 83e7d400 20000080 00004202 00000002 00000000 20000080 1ee0: 83e78c00 0000001a df971f6c df971ef8 8020a1c4 80252b94 83e7d400 83e7dc84 1f00: df971f1c df971f10 819c4710 8027b8d0 df971f6c df971f20 802804bc 819c46ec 1f20: df971f54 00000000 8027d354 60000013 81971270 819884d4 df971f54 8e27da55 1f40: 83e7d400 00004205 83e7d400 8e27da55 00004205 83e7d400 00000002 00000000 1f60: df971fa4 df971f70 80252840 8020a120 80214688 8e27da55 00000000 00000000 1f80: 00000000 0008e050 0000001a 8020029c 83e78c00 0000001a 00000000 df971fa8 1fa0: 80200060 80252614 00000000 00000000 00004205 00000c2e 00000002 20000080 1fc0: 00000000 00000000 0008e050 0000001a 7eedfe0c 00000000 00000001 00000000 1fe0: 7eedfc70 7eedfc60 00010650 0002e7a0 00000010 00004205 00000000 00000000 Call trace: [<8199f2f0>] (usercopy_abort) from [<804cec50>] (__check_heap_object+0xd8/0xf4 mm/slub.c:5651) [<804ceb78>] (__check_heap_object) from [<8050d758>] (check_heap_object mm/usercopy.c:196 [inline]) [<804ceb78>] (__check_heap_object) from [<8050d758>] (__check_object_size mm/usercopy.c:251 [inline]) [<804ceb78>] (__check_heap_object) from [<8050d758>] (__check_object_size+0x288/0x304 mm/usercopy.c:213) r8:dde858e0 r7:83e7d4c4 r6:00000000 r5:00000074 r4:83e7d450 [<8050d4d0>] (__check_object_size) from [<80209d94>] (check_object_size include/linux/thread_info.h:215 [inline]) [<8050d4d0>] (__check_object_size) from [<80209d94>] (__copy_from_user include/linux/uaccess.h:109 [inline]) [<8050d4d0>] (__check_object_size) from [<80209d94>] (user_regset_copyin include/linux/regset.h:268 [inline]) [<8050d4d0>] (__check_object_size) from [<80209d94>] (fpa_set+0x90/0x118 arch/arm/kernel/ptrace.c:587) r10:81a0056c r9:00000078 r8:81a005a4 r7:00000074 r6:20000084 r5:00000074 r4:83e7d450 [<80209d04>] (fpa_set) from [<80252e9c>] (copy_regset_from_user include/linux/regset.h:337 [inline]) [<80209d04>] (fpa_set) from [<80252e9c>] (ptrace_regset kernel/ptrace.c:906 [inline]) [<80209d04>] (fpa_set) from [<80252e9c>] (ptrace_request+0x314/0xa70 kernel/ptrace.c:1218) r6:20000084 r5:83e7d400 r4:80209d04 [<80252b88>] (ptrace_request) from [<8020a1c4>] (arch_ptrace+0xb0/0x424 arch/arm/kernel/ptrace.c:818) r10:0000001a r9:83e78c00 r8:20000080 r7:00000000 r6:00000002 r5:00004202 r4:20000080 [<8020a114>] (arch_ptrace) from [<80252840>] (__do_sys_ptrace kernel/ptrace.c:1285 [inline]) [<8020a114>] (arch_ptrace) from [<80252840>] (sys_ptrace+0x238/0x4e0 kernel/ptrace.c:1258) r7:00000000 r6:00000002 r5:83e7d400 r4:00004205 [<80252608>] (sys_ptrace) from [<80200060>] (ret_fast_syscall+0x0/0x1c arch/arm/mm/proc-v7.S:67) Exception stack(0xdf971fa8 to 0xdf971ff0) 1fa0: 00000000 00000000 00004205 00000c2e 00000002 20000080 1fc0: 00000000 00000000 0008e050 0000001a 7eedfe0c 00000000 00000001 00000000 1fe0: 7eedfc70 7eedfc60 00010650 0002e7a0 r10:0000001a r9:83e78c00 r8:8020029c r7:0000001a r6:0008e050 r5:00000000 r4:00000000 Code: e30b03bc e3480205 e58dc000 ebfff273 (e7f001f2) ---[ end trace 0000000000000000 ]--- ---------------- Code disassembly (best guess): 0: e30b03bc movw r0, #46012 @ 0xb3bc 4: e3480205 movt r0, #33285 @ 0x8205 8: e58dc000 str ip, [sp] c: ebfff273 bl 0xffffc9e0 * 10: e7f001f2 udf #18 <-- trapping instruction