syzbot


BUG: corrupted list in usb_hcd_link_urb_to_ep (4)

Status: upstream: reported syz repro on 2025/02/20 05:36
Subsystems: usb
[Documentation on labels]
Reported-by: syzbot+a2e67807a84a561c08fb@syzkaller.appspotmail.com
First crash: 261d, last: 53d
Discussions (1)
Title Replies (including bot) Last reply
[syzbot] [usb?] BUG: corrupted list in usb_hcd_link_urb_to_ep (4) 1 (3) 2025/04/16 11:59
Similar bugs (3)
Kernel Title Rank 🛈 Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream BUG: corrupted list in usb_hcd_link_urb_to_ep usb 8 1 1829d 1829d 0/29 auto-closed as invalid on 2020/11/11 04:30
upstream BUG: corrupted list in usb_hcd_link_urb_to_ep (2) usb 8 C error error 2 601d 1269d 0/29 auto-obsoleted due to no activity on 2024/03/02 17:43
upstream BUG: corrupted list in usb_hcd_link_urb_to_ep (3) usb 8 1 409d 405d 0/29 auto-obsoleted due to no activity on 2024/08/31 17:07
Last patch testing requests (3)
Created Duration User Patch Repo Result
2025/06/25 12:22 17m retest repro upstream OK log
2025/04/16 11:43 14m n.zhandarovich@fintech.ru upstream report log
2025/03/06 05:49 19m retest repro upstream report log

Sample crash report:
usb 3-1: config 0 descriptor??
cm109 3-1:0.8: invalid payload size 0, expected 4
input: CM109 USB driver as /devices/platform/dummy_hcd.2/usb3/3-1/3-1:0.8/input/input38
list_add double add: new=ffff88806ae1c518, prev=ffff88806ae1c518, next=ffff88806b1b2078.
------------[ cut here ]------------
kernel BUG at lib/list_debug.c:35!
Oops: invalid opcode: 0000 [#1] SMP KASAN NOPTI
CPU: 1 UID: 0 PID: 24 Comm: kworker/1:0 Not tainted 6.15.0-rc7-syzkaller-00144-gb1427432d3b6 #0 PREEMPT(full) 
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/07/2025
Workqueue: usb_hub_wq hub_event
RIP: 0010:__list_add_valid_or_report+0x143/0x190 lib/list_debug.c:35
Code: 89 f1 48 c7 c7 20 a7 f4 8b 48 89 ee e8 16 0e c4 fc 90 0f 0b 48 89 f2 48 89 e9 4c 89 e6 48 c7 c7 a0 a7 f4 8b e8 fe 0d c4 fc 90 <0f> 0b 48 89 f7 48 89 34 24 e8 cf 3f 4a fd 48 8b 34 24 e9 07 ff ff
RSP: 0018:ffffc900001e6d68 EFLAGS: 00010086
RAX: 0000000000000058 RBX: ffff88806ae1c500 RCX: ffffc9001a57d000
RDX: 0000000000000000 RSI: ffffffff819b2466 RDI: 0000000000000005
RBP: ffff88806b1b2078 R08: 0000000000000005 R09: 0000000000000000
R10: 0000000080000002 R11: 0000000000000001 R12: ffff88806ae1c518
R13: ffff88806b1b2080 R14: 0000000000000000 R15: ffff88806ae1c518
FS:  0000000000000000(0000) GS:ffff888124ada000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007fc1a68182d8 CR3: 0000000078977000 CR4: 00000000003526f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <TASK>
 __list_add_valid include/linux/list.h:88 [inline]
 __list_add include/linux/list.h:150 [inline]
 list_add_tail include/linux/list.h:183 [inline]
 usb_hcd_link_urb_to_ep+0x220/0x3a0 drivers/usb/core/hcd.c:1158
 dummy_urb_enqueue+0x2a7/0x920 drivers/usb/gadget/udc/dummy_hcd.c:1288
 usb_hcd_submit_urb+0x258/0x1c60 drivers/usb/core/hcd.c:1533
 usb_submit_urb+0x87c/0x1730 drivers/usb/core/urb.c:581
 cm109_input_open+0x271/0x480 drivers/input/misc/cm109.c:566
 input_open_device+0x230/0x390 drivers/input/input.c:600
 kbd_connect+0x103/0x160 drivers/tty/vt/keyboard.c:1591
 input_attach_handler.isra.0+0x184/0x260 drivers/input/input.c:993
 input_register_device+0xa84/0x1130 drivers/input/input.c:2412
 cm109_usb_probe+0x122f/0x17c0 drivers/input/misc/cm109.c:797
 usb_probe_interface+0x300/0x9c0 drivers/usb/core/driver.c:396
 call_driver_probe drivers/base/dd.c:579 [inline]
 really_probe+0x23e/0xa90 drivers/base/dd.c:657
 __driver_probe_device+0x1de/0x440 drivers/base/dd.c:799
 driver_probe_device+0x4c/0x1b0 drivers/base/dd.c:829
 __device_attach_driver+0x1df/0x310 drivers/base/dd.c:957
 bus_for_each_drv+0x156/0x1e0 drivers/base/bus.c:462
 __device_attach+0x1e4/0x4b0 drivers/base/dd.c:1029
 bus_probe_device+0x17f/0x1c0 drivers/base/bus.c:537
 device_add+0x1148/0x1a70 drivers/base/core.c:3692
 usb_set_configuration+0x1187/0x1e20 drivers/usb/core/message.c:2210
 usb_generic_driver_probe+0xb1/0x110 drivers/usb/core/generic.c:250
 usb_probe_device+0xec/0x3e0 drivers/usb/core/driver.c:291
 call_driver_probe drivers/base/dd.c:579 [inline]
 really_probe+0x23e/0xa90 drivers/base/dd.c:657
 __driver_probe_device+0x1de/0x440 drivers/base/dd.c:799
 driver_probe_device+0x4c/0x1b0 drivers/base/dd.c:829
 __device_attach_driver+0x1df/0x310 drivers/base/dd.c:957
 bus_for_each_drv+0x156/0x1e0 drivers/base/bus.c:462
 __device_attach+0x1e4/0x4b0 drivers/base/dd.c:1029
 bus_probe_device+0x17f/0x1c0 drivers/base/bus.c:537
 device_add+0x1148/0x1a70 drivers/base/core.c:3692
 usb_new_device+0xd07/0x1a20 drivers/usb/core/hub.c:2663
 hub_port_connect drivers/usb/core/hub.c:5531 [inline]
 hub_port_connect_change drivers/usb/core/hub.c:5671 [inline]
 port_event drivers/usb/core/hub.c:5831 [inline]
 hub_event+0x2eb7/0x4fa0 drivers/usb/core/hub.c:5913
 process_one_work+0x9cf/0x1b70 kernel/workqueue.c:3238
 process_scheduled_works kernel/workqueue.c:3319 [inline]
 worker_thread+0x6c8/0xf10 kernel/workqueue.c:3400
 kthread+0x3c2/0x780 kernel/kthread.c:464
 ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:153
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245
 </TASK>
Modules linked in:
---[ end trace 0000000000000000 ]---
RIP: 0010:__list_add_valid_or_report+0x143/0x190 lib/list_debug.c:35
Code: 89 f1 48 c7 c7 20 a7 f4 8b 48 89 ee e8 16 0e c4 fc 90 0f 0b 48 89 f2 48 89 e9 4c 89 e6 48 c7 c7 a0 a7 f4 8b e8 fe 0d c4 fc 90 <0f> 0b 48 89 f7 48 89 34 24 e8 cf 3f 4a fd 48 8b 34 24 e9 07 ff ff
RSP: 0018:ffffc900001e6d68 EFLAGS: 00010086
RAX: 0000000000000058 RBX: ffff88806ae1c500 RCX: ffffc9001a57d000
RDX: 0000000000000000 RSI: ffffffff819b2466 RDI: 0000000000000005
RBP: ffff88806b1b2078 R08: 0000000000000005 R09: 0000000000000000
R10: 0000000080000002 R11: 0000000000000001 R12: ffff88806ae1c518
R13: ffff88806b1b2080 R14: 0000000000000000 R15: ffff88806ae1c518
FS:  0000000000000000(0000) GS:ffff888124ada000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007fc1a68182d8 CR3: 0000000078977000 CR4: 00000000003526f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400

Crashes (7):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/05/25 03:20 upstream b1427432d3b6 ed351ea7 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root BUG: corrupted list in usb_hcd_link_urb_to_ep
2024/12/16 01:12 upstream dccbe2047a5b 7cbfbb3a .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root BUG: corrupted list in usb_hcd_link_urb_to_ep
2024/11/26 17:49 upstream 7eef7e306d3c 11dbc254 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root BUG: corrupted list in usb_hcd_link_urb_to_ep
2024/11/05 09:29 upstream 557329bcecc2 509da429 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-smack-root BUG: corrupted list in usb_hcd_link_urb_to_ep
2025/05/12 22:18 upstream 627277ba7c23 f6671af7 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-386 BUG: corrupted list in usb_hcd_link_urb_to_ep
2025/02/20 05:35 upstream 87a132e73910 50668798 .config console log report syz / log [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu-upstream BUG: corrupted list in usb_hcd_link_urb_to_ep
2024/10/28 23:12 upstream e42b1a9a2557 5fe1d0f5 .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu-upstream BUG: corrupted list in usb_hcd_link_urb_to_ep
* Struck through repros no longer work on HEAD.