WARNING in add_taint/usb_submit_urb

From: syzbot
Date: Tue Apr 07 2020 - 10:35:22 EST


Hello,

syzbot found the following crash on:

HEAD commit: 0fa84af8 Merge tag 'usb-serial-5.7-rc1' of https://git.ker..
git tree: https://github.com/google/kasan.git usb-fuzzer
console output: https://syzkaller.appspot.com/x/log.txt?x=11cce12be00000
kernel config: https://syzkaller.appspot.com/x/.config?x=6b9c154b0c23aecf
dashboard link: https://syzkaller.appspot.com/bug?extid=f44561cfce4cc0e75b89
compiler: gcc (GCC) 9.0.0 20181231 (experimental)
syz repro: https://syzkaller.appspot.com/x/repro.syz?x=17a8312be00000
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=14e35d8fe00000

IMPORTANT: if you fix the bug, please add the following tag to the commit:
Reported-by: syzbot+f44561cfce4cc0e75b89@xxxxxxxxxxxxxxxxxxxxxxxxx

------------[ cut here ]------------
usb 1-1: BOGUS urb xfer, pipe 1 != type 3
WARNING: CPU: 1 PID: 384 at drivers/usb/core/urb.c:478 usb_submit_urb+0x1188/0x1460 drivers/usb/core/urb.c:478
Kernel panic - not syncing: panic_on_warn set ...
CPU: 1 PID: 384 Comm: systemd-udevd Not tainted 5.6.0-rc7-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+0xef/0x16e lib/dump_stack.c:118
usb_submit_urb+0x10b0/0x1460 drivers/usb/core/urb.c:363
panic+0x2aa/0x6e1 kernel/panic.c:221
add_taint.cold+0x16/0x16 kernel/panic.c:434
set_bit include/asm-generic/bitops/instrumented-atomic.h:28 [inline]
set_ti_thread_flag include/linux/thread_info.h:55 [inline]
set_fs arch/x86/include/asm/uaccess.h:33 [inline]
__probe_kernel_read+0x188/0x1d0 mm/maccess.c:67
__warn.cold+0x14/0x30 kernel/panic.c:581
__warn+0xd5/0x1c8 kernel/panic.c:574
usb_submit_urb+0x1188/0x1460 drivers/usb/core/urb.c:478
__warn.cold+0x2f/0x30 kernel/panic.c:582
usb_submit_urb+0x1188/0x1460 drivers/usb/core/urb.c:478
report_bug+0x27b/0x2f0 lib/bug.c:195
fixup_bug arch/x86/kernel/traps.c:174 [inline]
fixup_bug arch/x86/kernel/traps.c:169 [inline]
do_error_trap+0x12b/0x1e0 arch/x86/kernel/traps.c:267
usb_submit_urb+0x1188/0x1460 drivers/usb/core/urb.c:478
do_invalid_op+0x32/0x40 arch/x86/kernel/traps.c:286
usb_submit_urb+0x1188/0x1460 drivers/usb/core/urb.c:478
invalid_op+0x23/0x30 arch/x86/entry/entry_64.S:1027
RIP: 0010:usb_submit_urb+0x1188/0x1460 drivers/usb/core/urb.c:478
Code: 4d 85 e


---
This bug is generated by a bot. It may contain errors.
See https://goo.gl/tpsmEJ for more information about syzbot.
syzbot engineers can be reached at syzkaller@xxxxxxxxxxxxxxxxx

syzbot will keep track of this bug report. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.
syzbot can test patches for this bug, for details see:
https://goo.gl/tpsmEJ#testing-patches