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 UID: 0 PID: 4312 Comm: syz.1.155 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 : [<819ab1c8>] lr : [<802bcb54>] psr: 60000013 sp : dfcf9d90 ip : dfcf9cd0 fp : dfcf9db4 r10: 81a00568 r9 : 00000500 r8 : 84a94850 r7 : ddea0c40 r6 : 00000000 r5 : 00000074 r4 : 00000050 r3 : 84a93000 r2 : 00000000 r1 : 00000000 r0 : 00000066 Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment none Control: 30c5387d Table: 846f0e00 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 84a93000 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 84a94800 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 0xdfcf8000 allocated at kernel_clone+0xac/0x3e4 kernel/fork.c:2786 Register r12 information: 2-page vmalloc region starting at 0xdfcf8000 allocated at kernel_clone+0xac/0x3e4 kernel/fork.c:2786 Process syz.1.155 (pid: 4312, stack limit = 0xdfcf8000) Stack: (0xdfcf9d90 to 0xdfcfa000) 9d80: 8205d6cc 8202efb0 820445d4 00000050 9da0: 00000074 00000500 dfcf9de4 dfcf9db8 804d0190 819ab13c 00000074 dfcf9dc8 9dc0: 802147e0 84a94850 00000074 00000000 84a948c4 ddea0c40 dfcf9e1c dfcf9de8 9de0: 8050ef5c 804d00c4 00000074 20000084 dfcf9e0c 84a94850 00000074 20000084 9e00: 00000074 81a005a0 00000500 81a00568 dfcf9e4c dfcf9e20 80209d94 8050ece0 9e20: dfcf9e44 82e58fc0 00000064 dfcf9e2c dfcf9e2c 80209d04 84a94800 20000084 9e40: dfcf9ef4 dfcf9e50 80252ebc 80209d10 00000000 00000000 00000000 81a0057c 9e60: 819cfd24 00000000 dfcf9eb4 dfcf9e78 8020d0ac 8020c014 824bc400 00000000 9e80: 8027ec14 00000000 00000000 00000000 00000000 00000000 00000000 00000000 9ea0: 00000000 84a93000 dfcf9edc dfcf9eb8 8027d444 802ae68c 00000000 00000000 9ec0: dfcf9eec 0f0349fd 84a94800 20000080 00004202 00000002 00000000 20000080 9ee0: 84a93000 0000001a dfcf9f6c dfcf9ef8 8020a1c4 80252bb4 84a94800 84a95084 9f00: dfcf9f1c dfcf9f10 819d01d0 8027b9c0 dfcf9f6c dfcf9f20 802805d4 819d01ac 9f20: dfcf9f54 00000000 8027d444 60000013 8197d090 81994314 dfcf9f54 0f0349fd 9f40: 84a94800 00004205 84a94800 0f0349fd 00004205 84a94800 00000002 00000000 9f60: dfcf9fa4 dfcf9f70 80252860 8020a120 80202cc0 0f0349fd dfcf9fac 00000000 9f80: 00000000 002862f4 0000001a 8020029c 84a93000 0000001a 00000000 dfcf9fa8 9fa0: 80200060 80252634 00000000 00000000 00004205 000000d3 00000002 20000080 9fc0: 00000000 00000000 002862f4 0000001a 00000000 00006364 003d0f00 76b7b0bc 9fe0: 76b7aec0 76b7aeb0 00018af0 00133450 60000010 00004205 00000000 00000000 Call trace: [<819ab130>] (usercopy_abort) from [<804d0190>] (__check_heap_object+0xd8/0xf4 mm/slub.c:5651) [<804d00b8>] (__check_heap_object) from [<8050ef5c>] (check_heap_object mm/usercopy.c:196 [inline]) [<804d00b8>] (__check_heap_object) from [<8050ef5c>] (__check_object_size mm/usercopy.c:251 [inline]) [<804d00b8>] (__check_heap_object) from [<8050ef5c>] (__check_object_size+0x288/0x304 mm/usercopy.c:213) r8:ddea0c40 r7:84a948c4 r6:00000000 r5:00000074 r4:84a94850 [<8050ecd4>] (__check_object_size) from [<80209d94>] (check_object_size include/linux/thread_info.h:215 [inline]) [<8050ecd4>] (__check_object_size) from [<80209d94>] (__copy_from_user include/linux/uaccess.h:110 [inline]) [<8050ecd4>] (__check_object_size) from [<80209d94>] (user_regset_copyin include/linux/regset.h:268 [inline]) [<8050ecd4>] (__check_object_size) from [<80209d94>] (fpa_set+0x90/0x118 arch/arm/kernel/ptrace.c:587) r10:81a00568 r9:00000500 r8:81a005a0 r7:00000074 r6:20000084 r5:00000074 r4:84a94850 [<80209d04>] (fpa_set) from [<80252ebc>] (copy_regset_from_user include/linux/regset.h:337 [inline]) [<80209d04>] (fpa_set) from [<80252ebc>] (ptrace_regset kernel/ptrace.c:906 [inline]) [<80209d04>] (fpa_set) from [<80252ebc>] (ptrace_request+0x314/0xa78 kernel/ptrace.c:1218) r6:20000084 r5:84a94800 r4:80209d04 [<80252ba8>] (ptrace_request) from [<8020a1c4>] (arch_ptrace+0xb0/0x424 arch/arm/kernel/ptrace.c:818) r10:0000001a r9:84a93000 r8:20000080 r7:00000000 r6:00000002 r5:00004202 r4:20000080 [<8020a114>] (arch_ptrace) from [<80252860>] (__do_sys_ptrace kernel/ptrace.c:1285 [inline]) [<8020a114>] (arch_ptrace) from [<80252860>] (sys_ptrace+0x238/0x4e0 kernel/ptrace.c:1258) r7:00000000 r6:00000002 r5:84a94800 r4:00004205 [<80252628>] (sys_ptrace) from [<80200060>] (ret_fast_syscall+0x0/0x1c arch/arm/mm/proc-v7.S:67) Exception stack(0xdfcf9fa8 to 0xdfcf9ff0) 9fa0: 00000000 00000000 00004205 000000d3 00000002 20000080 9fc0: 00000000 00000000 002862f4 0000001a 00000000 00006364 003d0f00 76b7b0bc 9fe0: 76b7aec0 76b7aeb0 00018af0 00133450 r10:0000001a r9:84a93000 r8:8020029c r7:0000001a r6:002862f4 r5:00000000 r4:00000000 Code: e30d06d0 e3480205 e58dc000 ebfff273 (e7f001f2) ---[ end trace 0000000000000000 ]--- ---------------- Code disassembly (best guess): 0: e30d06d0 movw r0, #54992 @ 0xd6d0 4: e3480205 movt r0, #33285 @ 0x8205 8: e58dc000 str ip, [sp] c: ebfff273 bl 0xffffc9e0 * 10: e7f001f2 udf #18 <-- trapping instruction