syzbot


INFO: task hung in usb_deregister_dev

Status: upstream: reported on 2020/07/06 15:22
Reported-by: syzbot+4189d5cde8630463053f@syzkaller.appspotmail.com
First crash: 1208d, last: 10d

Sample crash report:
INFO: task kworker/0:1:14 blocked for more than 143 seconds.
      Not tainted 5.19.0-syzkaller-02972-g200e340f2196 #0
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
task:kworker/0:1     state:D stack:19872 pid:   14 ppid:     2 flags:0x00004000
Workqueue: usb_hub_wq hub_event
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5178 [inline]
 __schedule+0x957/0xe20 kernel/sched/core.c:6490
 schedule+0xcb/0x190 kernel/sched/core.c:6566
 rwsem_down_write_slowpath+0xe1c/0x1390 kernel/locking/rwsem.c:1182
 __down_write_common kernel/locking/rwsem.c:1297 [inline]
 __down_write kernel/locking/rwsem.c:1306 [inline]
 down_write+0x163/0x170 kernel/locking/rwsem.c:1553
 usb_deregister_dev+0x9e/0x2f0 drivers/usb/core/file.c:239
 sisusb_disconnect+0x56/0x210 drivers/usb/misc/sisusbvga/sisusb.c:3166
 usb_unbind_interface+0x1f2/0x860 drivers/usb/core/driver.c:458
 device_remove drivers/base/dd.c:545 [inline]
 __device_release_driver drivers/base/dd.c:1222 [inline]
 device_release_driver_internal+0x5bc/0x8a0 drivers/base/dd.c:1248
 bus_remove_device+0x2fd/0x410 drivers/base/bus.c:529
 device_del+0x6ec/0xbe0 drivers/base/core.c:3615
 usb_disable_device+0x3dd/0x820 drivers/usb/core/message.c:1419
 usb_disconnect+0x346/0x890 drivers/usb/core/hub.c:2228
 hub_port_connect+0x2a2/0x2930 drivers/usb/core/hub.c:5207
 hub_port_connect_change+0x619/0xbe0 drivers/usb/core/hub.c:5507
 port_event+0xeb7/0x1390 drivers/usb/core/hub.c:5663
 hub_event+0x5be/0xd70 drivers/usb/core/hub.c:5745
 process_one_work+0x81c/0xd10 kernel/workqueue.c:2289
 process_scheduled_works kernel/workqueue.c:2352 [inline]
 worker_thread+0xe16/0x1330 kernel/workqueue.c:2438
 kthread+0x266/0x300 kernel/kthread.c:376
 ret_from_fork+0x1f/0x30
 </TASK>

Showing all locks held in the system:
1 lock held by rcu_tasks_kthre/12:
 #0: ffffffff8cb1f030 (rcu_tasks.tasks_gp_mutex){+.+.}-{3:3}, at: rcu_tasks_one_gp+0x30/0xd00 kernel/rcu/tasks.h:507
1 lock held by rcu_tasks_trace/13:
 #0: ffffffff8cb1f830 (rcu_tasks_trace.tasks_gp_mutex){+.+.}-{3:3}, at: rcu_tasks_one_gp+0x30/0xd00 kernel/rcu/tasks.h:507
6 locks held by kworker/0:1/14:
 #0: ffff888145ab1138 ((wq_completion)usb_hub_wq){+.+.}-{0:0}, at: process_one_work+0x796/0xd10 kernel/workqueue.c:2262
 #1: ffffc90000137d00 ((work_completion)(&hub->events)){+.+.}-{0:0}, at: process_one_work+0x7d0/0xd10 kernel/workqueue.c:2264
 #2: ffff8880212ca190 (&dev->mutex){....}-{3:3}, at: device_lock include/linux/device.h:835 [inline]
 #2: ffff8880212ca190 (&dev->mutex){....}-{3:3}, at: hub_event+0x1bf/0xd70 drivers/usb/core/hub.c:5691
 #3: ffff88807e5f8190 (&dev->mutex){....}-{3:3}, at: device_lock include/linux/device.h:835 [inline]
 #3: ffff88807e5f8190 (&dev->mutex){....}-{3:3}, at: usb_disconnect+0xff/0x890 drivers/usb/core/hub.c:2219
 #4: ffff8880770b6118 (&dev->mutex){....}-{3:3}, at: device_lock include/linux/device.h:835 [inline]
 #4: ffff8880770b6118 (&dev->mutex){....}-{3:3}, at: __device_driver_lock drivers/base/dd.c:1054 [inline]
 #4: ffff8880770b6118 (&dev->mutex){....}-{3:3}, at: device_release_driver_internal+0xb5/0x8a0 drivers/base/dd.c:1245
 #5: ffffffff8d564330 (minor_rwsem#2){++++}-{3:3}, at: usb_deregister_dev+0x9e/0x2f0 drivers/usb/core/file.c:239
1 lock held by khungtaskd/28:
 #0: ffffffff8cb1ee60 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire+0x0/0x30
1 lock held by klogd/2958:
 #0: ffff8880b9a39b98 (&rq->__lock){-.-.}-{2:2}, at: raw_spin_rq_lock_nested+0x25/0x110 kernel/sched/core.c:544
2 locks held by getty/3288:
 #0: ffff888026ecd098 (&tty->ldisc_sem){++++}-{0:0}, at: tty_ldisc_ref_wait+0x21/0x70 drivers/tty/tty_ldisc.c:244
 #1: ffffc90002d162e8 (&ldata->atomic_read_lock){+.+.}-{3:3}, at: n_tty_read+0x6e8/0x1e50 drivers/tty/n_tty.c:2124
3 locks held by kworker/u4:12/4491:
5 locks held by kworker/u4:1/11052:
3 locks held by udevd/14182:
 #0: ffff88807f1c3488 (&of->mutex){+.+.}-{3:3}, at: kernfs_file_read_iter fs/kernfs/file.c:197 [inline]
 #0: ffff88807f1c3488 (&of->mutex){+.+.}-{3:3}, at: kernfs_fop_read_iter+0x19b/0x570 fs/kernfs/file.c:236
 #1: ffff888021058cb8 (kn->active#86){++++}-{0:0}, at: kernfs_file_read_iter fs/kernfs/file.c:198 [inline]
 #1: ffff888021058cb8 (kn->active#86){++++}-{0:0}, at: kernfs_fop_read_iter+0x1b3/0x570 fs/kernfs/file.c:236
 #2: ffff88807e5f8190 (&dev->mutex){....}-{3:3}, at: device_lock_interruptible include/linux/device.h:840 [inline]
 #2: ffff88807e5f8190 (&dev->mutex){....}-{3:3}, at: read_descriptors+0x30/0x390 drivers/usb/core/sysfs.c:873
2 locks held by syz-executor.3/20597:
 #0: ffffffff8d564330 (minor_rwsem#2){++++}-{3:3}, at: usb_open+0x2c/0x2f0 drivers/usb/core/file.c:39
 #1: ffff8880269378d0 (&(sisusb->lock)){+.+.}-{3:3}, at: sisusb_open+0x90/0x410 drivers/usb/misc/sisusbvga/sisusb.c:2396
1 lock held by syz-executor.2/21350:
 #0: ffffffff8d564330 (minor_rwsem#2){++++}-{3:3}, at: usb_open+0x2c/0x2f0 drivers/usb/core/file.c:39

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

NMI backtrace for cpu 1
CPU: 1 PID: 28 Comm: khungtaskd Not tainted 5.19.0-syzkaller-02972-g200e340f2196 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/22/2022
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0x1e3/0x2cb lib/dump_stack.c:106
 nmi_cpu_backtrace+0x473/0x4a0 lib/nmi_backtrace.c:111
 nmi_trigger_cpumask_backtrace+0x168/0x280 lib/nmi_backtrace.c:62
 trigger_all_cpu_backtrace include/linux/nmi.h:146 [inline]
 check_hung_uninterruptible_tasks kernel/hung_task.c:212 [inline]
 watchdog+0xcd5/0xd20 kernel/hung_task.c:369
 kthread+0x266/0x300 kernel/kthread.c:376
 ret_from_fork+0x1f/0x30
 </TASK>
Sending NMI from CPU 1 to CPUs 0:
NMI backtrace for cpu 0
CPU: 0 PID: 4495 Comm: kworker/u4:14 Not tainted 5.19.0-syzkaller-02972-g200e340f2196 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/22/2022
Workqueue: phy20 ieee80211_iface_work
RIP: 0010:rcu_lock_acquire+0x2a/0x30 include/linux/rcupdate.h:280
Code: e8 4b 19 d5 f7 e8 46 19 d5 f7 48 c7 c7 60 ee b1 8c 31 f6 31 d2 b9 02 00 00 00 45 31 c0 45 31 c9 68 65 07 b3 89 e8 86 04 b5 f7 <48> 83 c4 08 c3 90 e8 1b 19 d5 f7 e8 16 19 d5 f7 48 c7 c7 60 ee b1
RSP: 0018:ffffc9000507f870 EFLAGS: 00000246
RAX: c72049a5a91b7200 RBX: 0000000000000000 RCX: ffff888038824570
RDX: dffffc0000000000 RSI: ffffffff8a8d4160 RDI: ffffffff8ae9a7c0
RBP: ffffc9000507f9b0 R08: dffffc0000000000 R09: fffffbfff1faa409
R10: fffffbfff1faa409 R11: 1ffffffff1faa408 R12: dffffc0000000000
R13: ffff88806f49ade8 R14: ffffc9000507f900 R15: ffffc9000507f908
FS:  0000000000000000(0000) GS:ffff8880b9a00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 000055a5958ea680 CR3: 000000000c88e000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <TASK>
 rcu_read_lock include/linux/rcupdate.h:706 [inline]
 ieee80211_bss_info_update+0x3ee/0xc30 net/mac80211/scan.c:177
 ieee80211_rx_bss_info net/mac80211/ibss.c:1119 [inline]
 ieee80211_rx_mgmt_probe_beacon net/mac80211/ibss.c:1610 [inline]
 ieee80211_ibss_rx_queued_mgmt+0x1659/0x28c0 net/mac80211/ibss.c:1639
 ieee80211_iface_process_skb net/mac80211/iface.c:1528 [inline]
 ieee80211_iface_work+0x757/0xcd0 net/mac80211/iface.c:1582
 process_one_work+0x81c/0xd10 kernel/workqueue.c:2289
 worker_thread+0xb14/0x1330 kernel/workqueue.c:2436
 kthread+0x266/0x300 kernel/kthread.c:376
 ret_from_fork+0x1f/0x30
 </TASK>

Crashes (248):
Manager Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Title
ci-upstream-kasan-gce-smack-root 2022/08/08 13:23 upstream 200e340f2196 88e3a122 .config log report info INFO: task hung in usb_deregister_dev
ci-upstream-kasan-gce 2022/03/17 00:28 upstream 56e337f2cf13 dfa9a8ed .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2022/11/20 06:36 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing dd65a243a915 5bb70014 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2022/11/17 14:22 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing dd65a243a915 3a127a31 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2022/11/13 03:02 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing dd65a243a915 f42ee5d8 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2022/11/03 12:19 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing bd707a4f9ebe 7a2ebf95 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2022/10/19 01:58 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing a6afa4199d3d b31320fc .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2022/10/15 07:33 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing a6afa4199d3d 67cb024c .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2022/10/08 13:15 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing 00988f70a076 aea5da89 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2022/10/07 01:42 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing 00988f70a076 80b58a42 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2022/10/06 17:45 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing 00988f70a076 80b58a42 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2022/09/28 05:07 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing bce2b0539933 75c78242 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2022/09/23 13:26 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing b294c2bf4cfd 0042f2b4 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2022/09/03 19:00 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing ffcf9c5700e4 28811d0a .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2022/08/28 05:47 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing ffcf9c5700e4 07177916 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2022/08/24 09:38 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing ffcf9c5700e4 cea8b0f7 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2022/08/23 11:52 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing ffcf9c5700e4 cea8b0f7 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2022/07/20 14:09 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing 32f02a211b0a 88cb1383 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2022/07/14 06:17 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing 8affe37c525d 5d921b08 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2022/07/05 19:55 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing 90557fa89d3e bff65f44 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2022/07/05 09:42 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing 90557fa89d3e bff65f44 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2022/07/02 02:30 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing 90557fa89d3e 1434eec0 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2022/03/29 00:57 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing ae085d7f9365 6bdac766 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2022/03/08 23:17 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing 98d107b84614 9e8eaa75 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2022/02/21 19:06 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing a5d847b0afd3 3cd800e4 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2022/02/01 21:38 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing 554237f2bb62 c1c1631d .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2022/01/31 17:09 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing 60c250a98d4c a491ad2d .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2022/01/18 09:40 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing 455e73a07f6e 731a2d23 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2022/01/14 20:02 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing 455e73a07f6e 53e00b45 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2022/01/14 02:37 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing 455e73a07f6e b8d780ab .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2021/12/26 06:54 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing ce1d37cb7697 6caa12e4 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2021/12/07 09:42 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing d598c3c46ea6 0230ba3e .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2021/12/06 19:52 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing d598c3c46ea6 579a8754 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2021/12/03 23:33 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing 76c4c95dac0d c7c20675 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2021/11/30 15:44 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing 4d012040161c 80270552 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2021/11/17 20:27 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing ba67723f9461 cafff8b6 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2021/11/15 15:47 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing 8ab774587903 75b04091 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2021/11/04 15:42 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing a0548b26901f 4c1be0be .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2021/10/13 21:44 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing e27bea459d5e 5462d470 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2021/10/08 09:35 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing 2c52ad743fee efe0f24d .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2021/10/08 03:58 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing 2c52ad743fee efe0f24d .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2021/10/07 23:37 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing 2c52ad743fee efe0f24d .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2021/10/06 02:59 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing 89e84f946479 0a63fd36 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2021/10/04 23:17 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing ae9a6149884e ce697b49 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2021/10/02 23:15 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing ae9a6149884e db0f5787 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2021/10/01 05:36 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing ae9a6149884e 1d849ab4 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2021/09/30 19:02 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing ae9a6149884e 0f01403d .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2021/09/30 01:33 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing ae9a6149884e be530f6c .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2021/09/29 07:13 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing ae9a6149884e d82cb927 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2021/09/28 15:59 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing ae9a6149884e d82cb927 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2021/09/28 00:43 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing ae9a6149884e 78494d16 .config log report info INFO: task hung in usb_deregister_dev
ci2-upstream-usb 2021/01/09 20:51 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing 841081d89d5a a6c52263 .config log report info
ci2-upstream-usb 2020/07/05 00:56 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing 768a07412843 24d7f505 .config log report
ci2-upstream-usb 2019/08/11 00:40 https://github.com/google/kasan.git usb-fuzzer e96407b49762 acb51638 .config log report
* Struck through repros no longer work on HEAD.