audit: type=1804 audit(1629732062.890:451): pid=22745 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.1" name="/root/syzkaller-testdir733572712/syzkaller.2J4OT7/327/file0" dev="sda1" ino=14990 res=1 usb usb9: usbfs: process 22745 (syz-executor.1) did not claim interface 0 before use ================================================================== BUG: KASAN: slab-out-of-bounds in memcpy include/linux/string.h:377 [inline] BUG: KASAN: slab-out-of-bounds in usb_hcd_poll_rh_status+0x387/0x6f0 drivers/usb/core/hcd.c:771 Write of size 2 at addr ffff888099b8d580 by task syz-executor.3/21015 CPU: 0 PID: 21015 Comm: syz-executor.3 Not tainted 4.19.204-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:77 [inline] dump_stack+0x1fc/0x2ef lib/dump_stack.c:118 print_address_description.cold+0x54/0x219 mm/kasan/report.c:256 kasan_report_error.cold+0x8a/0x1b9 mm/kasan/report.c:354 kasan_report+0x8f/0xa0 mm/kasan/report.c:412 memcpy+0x35/0x50 mm/kasan/kasan.c:303 memcpy include/linux/string.h:377 [inline] usb_hcd_poll_rh_status+0x387/0x6f0 drivers/usb/core/hcd.c:771 call_timer_fn+0x177/0x700 kernel/time/timer.c:1338 expire_timers+0x243/0x4e0 kernel/time/timer.c:1375 __run_timers kernel/time/timer.c:1696 [inline] run_timer_softirq+0x21c/0x670 kernel/time/timer.c:1709 __do_softirq+0x265/0x980 kernel/softirq.c:292 invoke_softirq kernel/softirq.c:372 [inline] irq_exit+0x215/0x260 kernel/softirq.c:412 exiting_irq arch/x86/include/asm/apic.h:536 [inline] smp_apic_timer_interrupt+0x136/0x550 arch/x86/kernel/apic/apic.c:1098 apic_timer_interrupt+0xf/0x20 arch/x86/entry/entry_64.S:894 RIP: 0010:__x64_sys_clock_nanosleep+0x1/0xf0 kernel/time/posix-timers.c:1209 Code: 48 8b 7b 70 48 83 c4 08 5b e9 3b d1 ff ff e8 86 36 42 00 eb cc 48 89 34 24 e8 7b 36 42 00 48 8b 34 24 eb dc 0f 1f 44 00 00 53 <48> 89 fb 48 83 ec 18 e8 d3 61 0c 00 48 8d 7b 38 48 b8 00 00 00 00 RSP: 0018:ffff88809e3d7f18 EFLAGS: 00000246 ORIG_RAX: ffffffffffffff13 RAX: dffffc0000000000 RBX: 00000000000000e6 RCX: ffffffff810076d1 RDX: 1ffffffff10c09e6 RSI: ffffffff810076df RDI: ffff88809e3d7f58 RBP: ffff88809e3d7f58 R08: 0000000000000000 R09: 0000000000000223 R10: 0000000000000007 R11: 0000000000000000 R12: 0000000000000000 R13: ffffffff89f182d8 R14: 0000000000000000 R15: 0000000000000000 do_syscall_64+0xf9/0x620 arch/x86/entry/common.c:293 entry_SYSCALL_64_after_hwframe+0x49/0xbe RIP: 0033:0x48a7b1 Code: 24 0c 89 3c 24 48 89 4c 24 18 e8 aa e7 ff ff 4c 8b 54 24 18 48 8b 54 24 10 41 89 c0 8b 74 24 0c 8b 3c 24 b8 e6 00 00 00 0f 05 <44> 89 c7 48 89 04 24 e8 e3 e7 ff ff 48 8b 04 24 eb 97 66 2e 0f 1f RSP: 002b:00007ffdfa6f0f30 EFLAGS: 00000293 ORIG_RAX: 00000000000000e6 RAX: ffffffffffffffda RBX: 000000000000008e RCX: 000000000048a7b1 RDX: 00007ffdfa6f0f70 RSI: 0000000000000000 RDI: 0000000000000000 RBP: 00007ffdfa6f100c R08: 0000000000000000 R09: 00000091db67be77 R10: 0000000000000000 R11: 0000000000000293 R12: 0000000000000032 R13: 00000000000841e7 R14: 0000000000000003 R15: 00007ffdfa6f1070 Allocated by task 22745: __do_kmalloc mm/slab.c:3727 [inline] __kmalloc+0x15a/0x3c0 mm/slab.c:3736 kmalloc include/linux/slab.h:520 [inline] proc_do_submiturb+0x2d08/0x3af0 drivers/usb/core/devio.c:1673 proc_submiturb drivers/usb/core/devio.c:1827 [inline] usbdev_do_ioctl+0x773/0x3030 drivers/usb/core/devio.c:2481 usbdev_ioctl+0x21/0x30 drivers/usb/core/devio.c:2585 vfs_ioctl fs/ioctl.c:46 [inline] file_ioctl fs/ioctl.c:501 [inline] do_vfs_ioctl+0xcdb/0x12e0 fs/ioctl.c:688 ksys_ioctl+0x9b/0xc0 fs/ioctl.c:705 __do_sys_ioctl fs/ioctl.c:712 [inline] __se_sys_ioctl fs/ioctl.c:710 [inline] __x64_sys_ioctl+0x6f/0xb0 fs/ioctl.c:710 do_syscall_64+0xf9/0x620 arch/x86/entry/common.c:293 entry_SYSCALL_64_after_hwframe+0x49/0xbe Freed by task 21784: __cache_free mm/slab.c:3503 [inline] kfree+0xcc/0x210 mm/slab.c:3822 tipc_dest_pop+0x240/0x300 net/tipc/name_table.c:1022 tipc_sk_mcast_rcv+0x4f6/0xf20 net/tipc/socket.c:1177 tipc_mcast_xmit+0x5e5/0x7b0 net/tipc/bcast.c:319 tipc_sendmcast+0xa1f/0xba0 net/tipc/socket.c:808 __tipc_sendmsg+0xe82/0x1320 net/tipc/socket.c:1345 tipc_sendmsg+0x4c/0x70 net/tipc/socket.c:1279 sock_sendmsg_nosec net/socket.c:651 [inline] sock_sendmsg+0xc3/0x120 net/socket.c:661 sock_no_sendpage+0xf5/0x140 net/core/sock.c:2668 kernel_sendpage net/socket.c:3581 [inline] sock_sendpage+0xdf/0x140 net/socket.c:912 pipe_to_sendpage+0x268/0x330 fs/splice.c:452 splice_from_pipe_feed fs/splice.c:503 [inline] __splice_from_pipe+0x389/0x800 fs/splice.c:627 splice_from_pipe fs/splice.c:662 [inline] generic_splice_sendpage+0xd4/0x140 fs/splice.c:833 do_splice_from fs/splice.c:852 [inline] direct_splice_actor+0x115/0x160 fs/splice.c:1025 splice_direct_to_actor+0x33f/0x8d0 fs/splice.c:980 do_splice_direct+0x1a7/0x270 fs/splice.c:1068 do_sendfile+0x550/0xc30 fs/read_write.c:1447 __do_sys_sendfile64 fs/read_write.c:1508 [inline] __se_sys_sendfile64+0x147/0x160 fs/read_write.c:1494 do_syscall_64+0xf9/0x620 arch/x86/entry/common.c:293 entry_SYSCALL_64_after_hwframe+0x49/0xbe The buggy address belongs to the object at ffff888099b8d580 which belongs to the cache kmalloc-32 of size 32 The buggy address is located 0 bytes inside of 32-byte region [ffff888099b8d580, ffff888099b8d5a0) The buggy address belongs to the page: page:ffffea000266e340 count:1 mapcount:0 mapping:ffff88813bff01c0 index:0xffff888099b8dfc1 flags: 0xfff00000000100(slab) raw: 00fff00000000100 ffffea0002d24688 ffffea00025bcec8 ffff88813bff01c0 raw: ffff888099b8dfc1 ffff888099b8d000 0000000100000039 0000000000000000 page dumped because: kasan: bad access detected Memory state around the buggy address: ffff888099b8d480: 00 00 00 00 fc fc fc fc fb fb fb fb fc fc fc fc ffff888099b8d500: fb fb fb fb fc fc fc fc fb fb fb fb fc fc fc fc >ffff888099b8d580: 01 fc fc fc fc fc fc fc fb fb fb fb fc fc fc fc ^ ffff888099b8d600: fb fb fb fb fc fc fc fc fb fb fb fb fc fc fc fc ffff888099b8d680: fb fb fb fb fc fc fc fc fb fb fb fb fc fc fc fc ================================================================== ---------------- Code disassembly (best guess): 0: 48 8b 7b 70 mov 0x70(%rbx),%rdi 4: 48 83 c4 08 add $0x8,%rsp 8: 5b pop %rbx 9: e9 3b d1 ff ff jmpq 0xffffd149 e: e8 86 36 42 00 callq 0x423699 13: eb cc jmp 0xffffffe1 15: 48 89 34 24 mov %rsi,(%rsp) 19: e8 7b 36 42 00 callq 0x423699 1e: 48 8b 34 24 mov (%rsp),%rsi 22: eb dc jmp 0x0 24: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1) 29: 53 push %rbx * 2a: 48 89 fb mov %rdi,%rbx <-- trapping instruction 2d: 48 83 ec 18 sub $0x18,%rsp 31: e8 d3 61 0c 00 callq 0xc6209 36: 48 8d 7b 38 lea 0x38(%rbx),%rdi 3a: 48 rex.W 3b: b8 00 00 00 00 mov $0x0,%eax