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: 18978 Comm: syz.0.3759 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:4525 pc : [<819be580>] lr : [<802be434>] psr: 60000013 sp : dfca1e38 ip : dfca1d78 fp : dfca1e5c r10: 0000001a r9 : 849cc800 r8 : 849ca450 r7 : dde9f020 r6 : 00000000 r5 : 00000074 r4 : 00000050 r3 : 849cc800 r2 : 00000000 r1 : 00000000 r0 : 00000066 Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user Control: 30c5387d Table: 84792b00 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 849cc800 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 849ca400 pointer offset 80 size 3072 Register r9 information: slab task_struct start 849cc800 pointer offset 0 size 3072 Register r10 information: non-paged memory Register r11 information: 2-page vmalloc region starting at 0xdfca0000 allocated at kernel_clone+0xac/0x3e4 kernel/fork.c:2787 Register r12 information: 2-page vmalloc region starting at 0xdfca0000 allocated at kernel_clone+0xac/0x3e4 kernel/fork.c:2787 Process syz.0.3759 (pid: 18978, stack limit = 0xdfca0000) Stack: (0xdfca1e38 to 0xdfca2000) 1e20: 8205f678 82030fcc 1e40: 820464dc 00000050 00000074 849cc800 dfca1e8c dfca1e60 804d5d54 819be4f4 1e60: 00000074 dfca1e70 80214800 849ca450 00000074 00000000 849ca4c4 dde9f020 1e80: dfca1ec4 dfca1e90 80514b34 804d5c88 00000074 00000000 dfca1eb4 849ca450 1ea0: 00000074 00000000 00000000 00000000 849cc800 0000001a dfca1ef4 dfca1ec8 1ec0: 80209db4 805148b8 849ca400 dddd0180 dfca1ef4 dfca1ee0 819e37e4 00000000 1ee0: 0000000c 00000000 dfca1f6c dfca1ef8 8020a468 80209d30 00000000 00000000 1f00: dfca1f1c dfca1f10 819e36b0 8027c778 dfca1f6c dfca1f20 802813ec 819e368c 1f20: dfca1f54 00000000 8027e354 60000013 81990410 819a7694 dfca1f54 f3cc0925 1f40: 0000000f 849ca400 0000000f f3cc0925 849ca400 0000000f 00000000 00000000 1f60: dfca1fa4 dfca1f70 80252fdc 8020a140 80202cc0 f3cc0925 dfca1fac 00000000 1f80: 00000000 002862f4 0000001a 8020029c 849cc800 0000001a 00000000 dfca1fa8 1fa0: 80200060 80252db0 00000000 00000000 0000000f 00000615 00000000 00000000 1fc0: 00000000 00000000 002862f4 0000001a 00000000 00006364 003d0f00 76b090bc 1fe0: 76b08ec0 76b08eb0 00018af0 00133450 60000010 0000000f 00000000 00000000 Call trace: [<819be4e8>] (usercopy_abort) from [<804d5d54>] (__check_heap_object+0xd8/0xf4 mm/slub.c:5651) [<804d5c7c>] (__check_heap_object) from [<80514b34>] (check_heap_object mm/usercopy.c:196 [inline]) [<804d5c7c>] (__check_heap_object) from [<80514b34>] (__check_object_size mm/usercopy.c:251 [inline]) [<804d5c7c>] (__check_heap_object) from [<80514b34>] (__check_object_size+0x288/0x304 mm/usercopy.c:213) r8:dde9f020 r7:849ca4c4 r6:00000000 r5:00000074 r4:849ca450 [<805148ac>] (__check_object_size) from [<80209db4>] (check_object_size include/linux/thread_info.h:228 [inline]) [<805148ac>] (__check_object_size) from [<80209db4>] (__copy_from_user include/linux/uaccess.h:110 [inline]) [<805148ac>] (__check_object_size) from [<80209db4>] (user_regset_copyin include/linux/regset.h:268 [inline]) [<805148ac>] (__check_object_size) from [<80209db4>] (fpa_set+0x90/0x118 arch/arm/kernel/ptrace.c:587) r10:0000001a r9:849cc800 r8:00000000 r7:00000000 r6:00000000 r5:00000074 r4:849ca450 [<80209d24>] (fpa_set) from [<8020a468>] (copy_regset_from_user include/linux/regset.h:337 [inline]) [<80209d24>] (fpa_set) from [<8020a468>] (arch_ptrace+0x334/0x424 arch/arm/kernel/ptrace.c:762) r6:00000000 r5:0000000c r4:00000000 [<8020a134>] (arch_ptrace) from [<80252fdc>] (__do_sys_ptrace kernel/ptrace.c:1285 [inline]) [<8020a134>] (arch_ptrace) from [<80252fdc>] (sys_ptrace+0x238/0x4dc kernel/ptrace.c:1258) r7:00000000 r6:00000000 r5:0000000f r4:849ca400 [<80252da4>] (sys_ptrace) from [<80200060>] (ret_fast_syscall+0x0/0x1c arch/arm/mm/proc-v7.S:67) Exception stack(0xdfca1fa8 to 0xdfca1ff0) 1fa0: 00000000 00000000 0000000f 00000615 00000000 00000000 1fc0: 00000000 00000000 002862f4 0000001a 00000000 00006364 003d0f00 76b090bc 1fe0: 76b08ec0 76b08eb0 00018af0 00133450 r10:0000001a r9:849cc800 r8:8020029c r7:0000001a r6:002862f4 r5:00000000 r4:00000000 Code: e30f067c e3480205 e58dc000 ebfff265 (e7f001f2) ---[ end trace 0000000000000000 ]--- ---------------- Code disassembly (best guess): 0: e30f067c movw r0, #63100 @ 0xf67c 4: e3480205 movt r0, #33285 @ 0x8205 8: e58dc000 str ip, [sp] c: ebfff265 bl 0xffffc9a8 * 10: e7f001f2 udf #18 <-- trapping instruction