INFO: task hung in usb_gadget_probe_driver

Status: upstream: reported on 2026/08/05 08:02
Reported-by: syzbot+bad78dfc8668f656e0b6@syzkaller.appspotmail.com
First crash: 17h20m, last: 17h20m

Sample crash report:
INFO: task syz.2.290:5248 blocked for more than 144 seconds.
      Not tainted syzkaller #0
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
task:syz.2.290       state:D stack:27760 pid: 5248 ppid:  4189 flags:0x00004004
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5049 [inline]
 __schedule+0x11c3/0x4350 kernel/sched/core.c:6395
 schedule+0x11b/0x1e0 kernel/sched/core.c:6478
 schedule_preempt_disabled+0xf/0x20 kernel/sched/core.c:6537
 __mutex_lock_common+0xdf5/0x2400 kernel/locking/mutex.c:669
 __mutex_lock kernel/locking/mutex.c:729 [inline]
 mutex_lock_nested+0x17/0x20 kernel/locking/mutex.c:743
 usb_gadget_probe_driver+0x7b/0x380 drivers/usb/gadget/udc/core.c:1604
 raw_ioctl_run drivers/usb/gadget/legacy/raw_gadget.c:549 [inline]
 raw_ioctl+0x115e/0x3750 drivers/usb/gadget/legacy/raw_gadget.c:1256
 vfs_ioctl fs/ioctl.c:51 [inline]
 __do_sys_ioctl fs/ioctl.c:874 [inline]
 __se_sys_ioctl+0xfa/0x170 fs/ioctl.c:860
 do_syscall_x64 arch/x86/entry/common.c:50 [inline]
 do_syscall_64+0x4c/0xa0 arch/x86/entry/common.c:80
 entry_SYSCALL_64_after_hwframe+0x66/0xd0
RIP: 0033:0x7f62557b5cab
RSP: 002b:00007f6253a0bf00 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 0000000000000008 RCX: 00007f62557b5cab
RDX: 0000000000000000 RSI: 0000000000005501 RDI: 0000000000000008
RBP: 00007f6253a0cfd0 R08: 0000000000000001 R09: 00000000ffffffff
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 0000200000000040 R14: 0000000000000000 R15: 0000000000000868
 </TASK>
INFO: task syz.0.301:5281 blocked for more than 144 seconds.
      Not tainted syzkaller #0
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
task:syz.0.301       state:D stack:25680 pid: 5281 ppid:  4186 flags:0x00004004
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5049 [inline]
 __schedule+0x11c3/0x4350 kernel/sched/core.c:6395
 schedule+0x11b/0x1e0 kernel/sched/core.c:6478
 schedule_preempt_disabled+0xf/0x20 kernel/sched/core.c:6537
 __mutex_lock_common+0xdf5/0x2400 kernel/locking/mutex.c:669
 __mutex_lock kernel/locking/mutex.c:729 [inline]
 mutex_lock_nested+0x17/0x20 kernel/locking/mutex.c:743
 snd_seq_midisynth_remove+0x68/0x4e0 sound/core/seq/seq_midi.c:432
 __device_release_driver drivers/base/dd.c:1249 [inline]
 device_release_driver_internal+0x487/0x710 drivers/base/dd.c:1282
 bus_remove_device+0x2dd/0x400 drivers/base/bus.c:531
 device_del+0x63f/0xa80 drivers/base/core.c:3615
 snd_seq_device_dev_disconnect+0x39/0x40 sound/core/seq_device.c:182
 __snd_device_disconnect sound/core/device.c:63 [inline]
 snd_device_disconnect_all+0xcf/0x200 sound/core/device.c:215
 snd_card_disconnect+0x385/0x7d0 sound/core/init.c:528
 snd_card_free_when_closed+0x13/0x50 sound/core/init.c:617
 f_midi_unbind+0x99/0xf0 drivers/usb/gadget/function/f_midi.c:1291
 purge_configs_funcs+0x241/0x3a0 drivers/usb/gadget/configfs.c:1282
 configfs_composite_unbind+0xa0/0x1c0 drivers/usb/gadget/configfs.c:1461
 usb_gadget_remove_driver+0x15c/0x350 drivers/usb/gadget/udc/core.c:1495
 usb_gadget_unregister_driver+0x15d/0x4c0 drivers/usb/gadget/udc/core.c:1654
 unregister_gadget drivers/usb/gadget/configfs.c:252 [inline]
 gadget_dev_desc_UDC_store+0x174/0x2e0 drivers/usb/gadget/configfs.c:279
 flush_write_buffer fs/configfs/file.c:207 [inline]
 configfs_write_iter+0x30b/0x400 fs/configfs/file.c:229
 call_write_iter include/linux/fs.h:2173 [inline]
 new_sync_write fs/read_write.c:507 [inline]
 vfs_write+0x748/0xd70 fs/read_write.c:594
 ksys_write+0x153/0x260 fs/read_write.c:647
 do_syscall_x64 arch/x86/entry/common.c:50 [inline]
 do_syscall_64+0x4c/0xa0 arch/x86/entry/common.c:80
 entry_SYSCALL_64_after_hwframe+0x66/0xd0
RIP: 0033:0x7f4d99885019
RSP: 002b:00007f4d97add028 EFLAGS: 00000246 ORIG_RAX: 0000000000000001
RAX: ffffffffffffffda RBX: 00007f4d99b0cfa0 RCX: 00007f4d99885019
RDX: 0000000000000001 RSI: 00002000000004c0 RDI: 0000000000000003
RBP: 00007f4d9991c00c R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007f4d99b0d038 R14: 00007f4d99b0cfa0 R15: 00007fffa45cf848
 </TASK>
INFO: task syz.4.349:5420 blocked for more than 145 seconds.
      Not tainted syzkaller #0
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
task:syz.4.349       state:D stack:27888 pid: 5420 ppid:  4187 flags:0x00004004
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5049 [inline]
 __schedule+0x11c3/0x4350 kernel/sched/core.c:6395
 schedule+0x11b/0x1e0 kernel/sched/core.c:6478
 schedule_preempt_disabled+0xf/0x20 kernel/sched/core.c:6537
 __mutex_lock_common+0xdf5/0x2400 kernel/locking/mutex.c:669
 __mutex_lock kernel/locking/mutex.c:729 [inline]
 mutex_lock_nested+0x17/0x20 kernel/locking/mutex.c:743
 usb_gadget_probe_driver+0x7b/0x380 drivers/usb/gadget/udc/core.c:1604
 raw_ioctl_run drivers/usb/gadget/legacy/raw_gadget.c:549 [inline]
 raw_ioctl+0x115e/0x3750 drivers/usb/gadget/legacy/raw_gadget.c:1256
 vfs_ioctl fs/ioctl.c:51 [inline]
 __do_sys_ioctl fs/ioctl.c:874 [inline]
 __se_sys_ioctl+0xfa/0x170 fs/ioctl.c:860
 do_syscall_x64 arch/x86/entry/common.c:50 [inline]
 do_syscall_64+0x4c/0xa0 arch/x86/entry/common.c:80
 entry_SYSCALL_64_after_hwframe+0x66/0xd0
RIP: 0033:0x7f74dbc30cab
RSP: 002b:00007f74d9e86f00 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 0000000000000003 RCX: 00007f74dbc30cab
RDX: 0000000000000000 RSI: 0000000000005501 RDI: 0000000000000003
RBP: 00007f74d9e87fd0 R08: 0000000000000001 R09: 00000000ffffffff
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 0000200000000000 R14: 0000000000000003 R15: 0000000000000000
 </TASK>

Showing all locks held in the system:
1 lock held by khungtaskd/27:
 #0: ffffffff8c31ef60 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire+0x0/0x30
2 locks held by getty/3942:
 #0: ffff88814d39d098 (&tty->ldisc_sem){++++}-{0:0}, at: tty_ldisc_ref_wait+0x21/0x70 drivers/tty/tty_ldisc.c:252
 #1: ffffc900025e62e8 (&ldata->atomic_read_lock){+.+.}-{3:3}, at: n_tty_read+0x594/0x1a50 drivers/tty/n_tty.c:2158
8 locks held by kworker/1:6/4234:
 #0: ffff88801bed8138 ((wq_completion)usb_hub_wq){+.+.}-{0:0}, at: process_one_work+0x75c/0xff0 kernel/workqueue.c:-1
 #1: ffffc900031ffd00 ((work_completion)(&hub->events)){+.+.}-{0:0}, at: process_one_work+0x79e/0xff0 kernel/workqueue.c:2285
 #2: ffff8881481e3220 (&dev->mutex){....}-{3:3}, at: device_lock include/linux/device.h:809 [inline]
 #2: ffff8881481e3220 (&dev->mutex){....}-{3:3}, at: hub_event+0x178/0x5260 drivers/usb/core/hub.c:5827
 #3: ffff888077ecd220 (&dev->mutex){....}-{3:3}, at: device_lock include/linux/device.h:809 [inline]
 #3: ffff888077ecd220 (&dev->mutex){....}-{3:3}, at: usb_disconnect+0xf8/0x8a0 drivers/usb/core/hub.c:2278
 #4: ffff888077ece1a8 (&dev->mutex){....}-{3:3}, at: device_lock include/linux/device.h:809 [inline]
 #4: ffff888077ece1a8 (&dev->mutex){....}-{3:3}, at: __device_driver_lock drivers/base/dd.c:1064 [inline]
 #4: ffff888077ece1a8 (&dev->mutex){....}-{3:3}, at: device_release_driver_internal+0xa1/0x710 drivers/base/dd.c:1279
 #5: ffffffff8d3f5e88 (register_mutex#6){+.+.}-{3:3}, at: usb_audio_disconnect+0xd0/0x6f0 sound/usb/card.c:960
 #6: ffff888141fe7200 (&dev->mutex){....}-{3:3}, at: device_lock include/linux/device.h:809 [inline]
 #6: ffff888141fe7200 (&dev->mutex){....}-{3:3}, at: __device_driver_lock drivers/base/dd.c:1064 [inline]
 #6: ffff888141fe7200 (&dev->mutex){....}-{3:3}, at: device_release_driver_internal+0xa1/0x710 drivers/base/dd.c:1279
 #7: ffffffff8d3bd028 (register_mutex#7){+.+.}-{3:3}, at: snd_seq_midisynth_remove+0x68/0x4e0 sound/core/seq/seq_midi.c:432
2 locks held by kworker/u4:17/4937:
1 lock held by syz.2.290/5248:
 #0: ffffffff8ced1ba8 (udc_lock){+.+.}-{3:3}, at: usb_gadget_probe_driver+0x7b/0x380 drivers/usb/gadget/udc/core.c:1604
8 locks held by syz.0.301/5281:
 #0: ffff8880786c94f0 (&f->f_pos_lock){+.+.}-{3:3}, at: __fdget_pos+0x2bf/0x370 fs/file.c:1056
 #1: ffff88801da82460 (sb_writers#20){.+.+}-{0:0}, at: vfs_write+0x296/0xd70 fs/read_write.c:590
 #2: ffff88807758b688 (&buffer->mutex#2){+.+.}-{3:3}, at: configfs_write_iter+0x7d/0x400 fs/configfs/file.c:226
 #3: ffff88805306ad78 (&p->frag_sem){.+.+}-{3:3}, at: flush_write_buffer fs/configfs/file.c:205 [inline]
 #3: ffff88805306ad78 (&p->frag_sem){.+.+}-{3:3}, at: configfs_write_iter+0x20e/0x400 fs/configfs/file.c:229
 #4: ffff88805deca310 (&gi->lock){+.+.}-{3:3}, at: gadget_dev_desc_UDC_store+0xed/0x2e0 drivers/usb/gadget/configfs.c:276
 #5: ffffffff8ced1ba8 (udc_lock){+.+.}-{3:3}, at: usb_gadget_unregister_driver+0x56/0x4c0 drivers/usb/gadget/udc/core.c:1651
 #6: ffff888077ecf200 (&dev->mutex){....}-{3:3}, at: device_lock include/linux/device.h:809 [inline]
 #6: ffff888077ecf200 (&dev->mutex){....}-{3:3}, at: __device_driver_lock drivers/base/dd.c:1064 [inline]
 #6: ffff888077ecf200 (&dev->mutex){....}-{3:3}, at: device_release_driver_internal+0xa1/0x710 drivers/base/dd.c:1279
 #7: ffffffff8d3bd028 (register_mutex#7){+.+.}-{3:3}, at: snd_seq_midisynth_remove+0x68/0x4e0 sound/core/seq/seq_midi.c:432
1 lock held by syz.4.349/5420:
 #0: ffffffff8ced1ba8 (udc_lock){+.+.}-{3:3}, at: usb_gadget_probe_driver+0x7b/0x380 drivers/usb/gadget/udc/core.c:1604
1 lock held by kworker/1:14/5560:
 #0: ffff8880b913a358 (&rq->__lock){-.-.}-{2:2}, at: raw_spin_rq_lock_nested+0x25/0x130 kernel/sched/core.c:475
1 lock held by syz.3.380/5585:
 #0: ffffffff8ced1ba8 (udc_lock){+.+.}-{3:3}, at: usb_gadget_probe_driver+0x7b/0x380 drivers/usb/gadget/udc/core.c:1604
1 lock held by syz.7.451/5867:
 #0: ffffffff8ced1ba8 (udc_lock){+.+.}-{3:3}, at: usb_gadget_probe_driver+0x7b/0x380 drivers/usb/gadget/udc/core.c:1604
2 locks held by syz-executor/6037:
 #0: ffff888020339118 (&disk->open_mutex){+.+.}-{3:3}, at: blkdev_put+0xf1/0x780 block/bdev.c:911
 #1: ffff888020399468 (&lo->lo_mutex){+.+.}-{3:3}, at: __loop_clr_fd+0xa9/0xb50 drivers/block/loop.c:1366
3 locks held by syz.8.613/6425:
 #0: ffff88801da82460 (sb_writers#20){.+.+}-{0:0}, at: mnt_want_write+0x3d/0x90 fs/namespace.c:386
 #1: ffff88805ec30660 (&sb->s_type->i_mutex_key#27){++++}-{3:3}, at: inode_lock include/linux/fs.h:787 [inline]
 #1: ffff88805ec30660 (&sb->s_type->i_mutex_key#27){++++}-{3:3}, at: configfs_symlink+0x47b/0x13b0 fs/configfs/symlink.c:192
 #2: ffff88805deca310 (&gi->lock){+.+.}-{3:3}, at: config_usb_cfg_link+0x55/0x250 drivers/usb/gadget/configfs.c:428
2 locks held by syz-executor/6615:
 #0: ffff88801fec4518 (&disk->open_mutex){+.+.}-{3:3}, at: blkdev_put+0xf1/0x780 block/bdev.c:911
 #1: ffff888147552468 (&lo->lo_mutex){+.+.}-{3:3}, at: __loop_clr_fd+0xa9/0xb50 drivers/block/loop.c:1366
5 locks held by kworker/0:19/6837:
 #0: ffff88801bed8138 ((wq_completion)usb_hub_wq){+.+.}-{0:0}, at: process_one_work+0x75c/0xff0 kernel/workqueue.c:-1
 #1: ffffc9000458fd00 ((work_completion)(&hub->events)){+.+.}-{0:0}, at: process_one_work+0x79e/0xff0 kernel/workqueue.c:2285
 #2: ffff888024b87220 (&dev->mutex){....}-{3:3}, at: device_lock include/linux/device.h:809 [inline]
 #2: ffff888024b87220 (&dev->mutex){....}-{3:3}, at: hub_event+0x178/0x5260 drivers/usb/core/hub.c:5827
 #3: ffff888024ce35c8 (&port_dev->status_lock){+.+.}-{3:3}, at: usb_lock_port drivers/usb/core/hub.c:3168 [inline]
 #3: ffff888024ce35c8 (&port_dev->status_lock){+.+.}-{3:3}, at: hub_port_connect drivers/usb/core/hub.c:5393 [inline]
 #3: ffff888024ce35c8 (&port_dev->status_lock){+.+.}-{3:3}, at: hub_port_connect_change drivers/usb/core/hub.c:5637 [inline]
 #3: ffff888024ce35c8 (&port_dev->status_lock){+.+.}-{3:3}, at: port_event drivers/usb/core/hub.c:5799 [inline]
 #3: ffff888024ce35c8 (&port_dev->status_lock){+.+.}-{3:3}, at: hub_event+0x20a7/0x5260 drivers/usb/core/hub.c:5881
 #4: ffff888024c85268 (hcd->address0_mutex){+.+.}-{3:3}, at: hub_port_connect drivers/usb/core/hub.c:5394 [inline]
 #4: ffff888024c85268 (hcd->address0_mutex){+.+.}-{3:3}, at: hub_port_connect_change drivers/usb/core/hub.c:5637 [inline]
 #4: ffff888024c85268 (hcd->address0_mutex){+.+.}-{3:3}, at: port_event drivers/usb/core/hub.c:5799 [inline]
 #4: ffff888024c85268 (hcd->address0_mutex){+.+.}-{3:3}, at: hub_event+0x20d1/0x5260 drivers/usb/core/hub.c:5881
2 locks held by syz.5.774/7040:
 #0: ffff88801da82460 (sb_writers#20){.+.+}-{0:0}, at: mnt_want_write+0x3d/0x90 fs/namespace.c:386
 #1: ffff88805ec30660 (&sb->s_type->i_mutex_key#7/1){+.+.}-{3:3}, at: inode_lock_nested include/linux/fs.h:822 [inline]
 #1: ffff88805ec30660 (&sb->s_type->i_mutex_key#7/1){+.+.}-{3:3}, at: filename_create+0x20b/0x450 fs/namei.c:3843
5 locks held by syz.5.774/7041:
 #0: ffff8880784e25f0 (&f->f_pos_lock){+.+.}-{3:3}, at: __fdget_pos+0x2bf/0x370 fs/file.c:1056
 #1: ffff88801da82460 (sb_writers#20){.+.+}-{0:0}, at: vfs_write+0x296/0xd70 fs/read_write.c:590
 #2: ffff888046455688 (&buffer->mutex#2){+.+.}-{3:3}, at: configfs_write_iter+0x7d/0x400 fs/configfs/file.c:226
 #3: ffff88805306ad78 (&p->frag_sem){.+.+}-{3:3}, at: flush_write_buffer fs/configfs/file.c:205 [inline]
 #3: ffff88805306ad78 (&p->frag_sem){.+.+}-{3:3}, at: configfs_write_iter+0x20e/0x400 fs/configfs/file.c:229
 #4: ffff88805deca310 (&gi->lock){+.+.}-{3:3}, at: gadget_dev_desc_UDC_store+0xed/0x2e0 drivers/usb/gadget/configfs.c:276

=============================================

NMI backtrace for cpu 0
CPU: 0 PID: 27 Comm: khungtaskd Not tainted syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026
Call Trace:
 <TASK>
 dump_stack_lvl+0x188/0x250 lib/dump_stack.c:106
 nmi_cpu_backtrace+0x3a2/0x3d0 lib/nmi_backtrace.c:111
 nmi_trigger_cpumask_backtrace+0x163/0x280 lib/nmi_backtrace.c:62
 trigger_all_cpu_backtrace include/linux/nmi.h:148 [inline]
 check_hung_uninterruptible_tasks kernel/hung_task.c:212 [inline]
 watchdog+0xe1b/0xe60 kernel/hung_task.c:369
 kthread+0x42e/0x520 kernel/kthread.c:334
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:287
 </TASK>
Sending NMI from CPU 0 to CPUs 1:
NMI backtrace for cpu 1
CPU: 1 PID: 572 Comm: kworker/u4:3 Not tainted syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026
Workqueue: bat_events batadv_nc_worker
RIP: 0010:check_preemption_disabled+0x37/0x110 lib/smp_processor_id.c:55
Code: 04 25 28 00 00 00 48 89 44 24 08 65 8b 05 99 f0 41 76 65 8b 0d 02 4b 42 76 f7 c1 ff ff ff 7f 74 1f 65 48 8b 0c 25 28 00 00 00 <48> 3b 4c 24 08 0f 85 c4 00 00 00 48 83 c4 10 5b 41 5e 41 5f 5d c3
RSP: 0018:ffffc9000363f9e8 EFLAGS: 00000002
RAX: 0000000000000001 RBX: ffff88801f0d0000 RCX: be3878ed2dbe6e00
RDX: 0000000000000000 RSI: ffffffff8a2b39e0 RDI: ffffffff8a7a4200
RBP: ffffc9000363fb28 R08: ffffffff8d8b0def R09: 1ffffffff1b161bd
R10: dffffc0000000000 R11: fffffbfff1b161be R12: 1ffff920006c7f50
R13: dffffc0000000000 R14: ffff88801f0d0aec R15: 0000000000000246
FS:  0000000000000000(0000) GS:ffff8880b9100000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f53c44e42f8 CR3: 000000007939a000 CR4: 00000000003506e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <TASK>
 lockdep_recursion_inc kernel/locking/lockdep.c:431 [inline]
 lock_release+0x15d/0x8a0 kernel/locking/lockdep.c:5642
 __raw_spin_unlock_bh include/linux/spinlock_api_smp.h:174 [inline]
 _raw_spin_unlock_bh+0x17/0x30 kernel/locking/spinlock.c:210
 spin_unlock_bh include/linux/spinlock.h:409 [inline]
 batadv_nc_purge_paths+0x305/0x3a0 net/batman-adv/network-coding.c:475
 batadv_nc_worker+0x321/0x5c0 net/batman-adv/network-coding.c:726
 process_one_work+0x867/0xff0 kernel/workqueue.c:2310
 worker_thread+0xad7/0x12a0 kernel/workqueue.c:2457
 kthread+0x42e/0x520 kernel/kthread.c:334
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:287
 </TASK>

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2026/08/05 08:02 linux-5.15.y 6e2fd6534337 52aa2820 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-5-15-kasan INFO: task hung in usb_gadget_probe_driver
* Struck through repros no longer work on HEAD.