syzbot


INFO: task hung in __input_unregister_device (5)

Status: upstream: reported C repro on 2023/09/18 12:45
Subsystems: usb input
[Documentation on labels]
Reported-by: syzbot+78e2288f58b881ed3c45@syzkaller.appspotmail.com
First crash: 445d, last: 54d
Cause bisection: introduced by (bisect log) :
commit 6b0b708f12d18f9cccfb1c418bea59fcbff8798c
Author: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Date: Wed May 1 07:32:38 2024 +0000

  firewire: core: add tracepoint event for handling bus reset

Crash: lost connection to test machine (log)
Repro: C syz .config
  
Fix bisection: failed (error log, bisect log)
  
Discussions (3)
Title Replies (including bot) Last reply
[syzbot] Monthly input report (Oct 2024) 0 (1) 2024/10/03 09:03
[syzbot] [input?] INFO: task hung in __input_unregister_device (5) 1 (4) 2024/06/04 23:26
[syzbot] Monthly input report (May 2024) 0 (1) 2024/05/31 06:48
Similar bugs (5)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream INFO: task hung in __input_unregister_device (4) usb input C done 924 819d 884d 22/28 fixed on 2023/02/24 13:50
linux-4.14 INFO: task hung in __input_unregister_device 1 1571d 1571d 0/1 auto-closed as invalid on 2020/12/12 06:17
upstream INFO: task hung in __input_unregister_device input 7 1869d 2001d 0/28 closed as invalid on 2019/10/23 07:54
upstream INFO: task hung in __input_unregister_device (2) input 2 1859d 1855d 0/28 closed as invalid on 2019/11/04 12:11
upstream INFO: task hung in __input_unregister_device (3) input 65 1634d 1610d 0/28 auto-closed as invalid on 2020/10/10 08:29
Last patch testing requests (11)
Created Duration User Patch Repo Result
2024/11/13 02:00 24m retest repro upstream OK log
2024/11/08 07:16 27m retest repro upstream OK log
2024/11/08 04:32 16m retest repro https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing report log
2024/11/08 04:32 11m retest repro https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing report log
2024/10/05 16:21 23m retest repro https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing report log
2024/10/05 06:59 38m retest repro linux-next error
2024/10/05 06:59 21m retest repro upstream OK log
2024/10/05 06:27 25m retest repro upstream OK log
2024/08/30 05:04 17m retest repro upstream report log
2024/08/29 17:05 28m retest repro https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing report log
2023/09/18 20:12 13m ricardo@marliere.net git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git next-20230918 report log
Fix bisection attempts (3)
Created Duration User Patch Repo Result
2024/11/16 17:50 23m bisect fix upstream error job log
2024/09/03 16:45 2h04m bisect fix upstream OK (0) job log log
2024/08/04 11:21 2h20m bisect fix upstream OK (0) job log log

Sample crash report:
INFO: task kworker/0:1:9 blocked for more than 143 seconds.
      Not tainted 6.9.0-next-20240523-syzkaller #0
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
task:kworker/0:1     state:D
 stack:21584 pid:9     tgid:9     ppid:2      flags:0x00004000
Workqueue: usb_hub_wq hub_event

Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5408 [inline]
 __schedule+0x17e8/0x4a20 kernel/sched/core.c:6745
 __schedule_loop kernel/sched/core.c:6822 [inline]
 schedule+0x14b/0x320 kernel/sched/core.c:6837
 schedule_preempt_disabled+0x13/0x30 kernel/sched/core.c:6894
 __mutex_lock_common kernel/locking/mutex.c:684 [inline]
 __mutex_lock+0x6a4/0xd70 kernel/locking/mutex.c:752
 __input_unregister_device+0x308/0x630 drivers/input/input.c:2293
 input_unregister_device+0xa3/0x100 drivers/input/input.c:2514
 usb_cleanup+0x7f/0x1e0 drivers/input/misc/yealink.c:825
 usb_unbind_interface+0x25e/0x940 drivers/usb/core/driver.c:461
 device_remove drivers/base/dd.c:568 [inline]
 __device_release_driver drivers/base/dd.c:1270 [inline]
 device_release_driver_internal+0x503/0x7c0 drivers/base/dd.c:1293
 bus_remove_device+0x34f/0x420 drivers/base/bus.c:574
 device_del+0x57a/0x9b0 drivers/base/core.c:3910
 usb_disable_device+0x3bf/0x850 drivers/usb/core/message.c:1418
 usb_disconnect+0x340/0x950 drivers/usb/core/hub.c:2304
 hub_port_connect drivers/usb/core/hub.c:5361 [inline]
 hub_port_connect_change drivers/usb/core/hub.c:5661 [inline]
 port_event drivers/usb/core/hub.c:5821 [inline]
 hub_event+0x1eb9/0x5150 drivers/usb/core/hub.c:5903
 process_one_work kernel/workqueue.c:3248 [inline]
 process_scheduled_works+0xa2c/0x1830 kernel/workqueue.c:3329
 worker_thread+0x86d/0xd50 kernel/workqueue.c:3409
 kthread+0x2f0/0x390 kernel/kthread.c:389
 ret_from_fork+0x4b/0x80 arch/x86/kernel/process.c:147
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244
 </TASK>
INFO: task jbd2/sda1-8:4511 blocked for more than 144 seconds.
      Not tainted 6.9.0-next-20240523-syzkaller #0
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
task:jbd2/sda1-8     state:D
 stack:24528 pid:4511  tgid:4511  ppid:2      flags:0x00004000
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5408 [inline]
 __schedule+0x17e8/0x4a20 kernel/sched/core.c:6745
 __schedule_loop kernel/sched/core.c:6822 [inline]
 schedule+0x14b/0x320 kernel/sched/core.c:6837
 io_schedule+0x8d/0x110 kernel/sched/core.c:9043
 bit_wait_io+0x12/0xd0 kernel/sched/wait_bit.c:209
 __wait_on_bit+0xb0/0x2f0 kernel/sched/wait_bit.c:49
 out_of_line_wait_on_bit+0x1d5/0x260 kernel/sched/wait_bit.c:64
 wait_on_buffer include/linux/buffer_head.h:415 [inline]
 journal_wait_on_commit_record fs/jbd2/commit.c:171 [inline]
 jbd2_journal_commit_transaction+0x3d7f/0x6760 fs/jbd2/commit.c:887
 kjournald2+0x463/0x850 fs/jbd2/journal.c:201
 kthread+0x2f0/0x390 kernel/kthread.c:389
 ret_from_fork+0x4b/0x80 arch/x86/kernel/process.c:147
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244
 </TASK>

Showing all locks held in the system:
6 locks held by kworker/0:1/9:
 #0: 
ffff8880186df148
 (
(wq_completion)usb_hub_wq
){+.+.}-{0:0}
, at: process_one_work kernel/workqueue.c:3223 [inline]
, at: process_scheduled_works+0x90a/0x1830 kernel/workqueue.c:3329
 #1: 
ffffc900000e7d00
 (
(work_completion)(&hub->events)
){+.+.}-{0:0}
, at: process_one_work kernel/workqueue.c:3224 [inline]
, at: process_scheduled_works+0x945/0x1830 kernel/workqueue.c:3329
 #2: 
ffff888023886190
 (
&dev->mutex
){....}-{3:3}
, at: device_lock include/linux/device.h:1009 [inline]
, at: hub_event+0x1fe/0x5150 drivers/usb/core/hub.c:5849
 #3: 
ffff88802d334190
 (
&dev->mutex
){....}-{3:3}
, at: device_lock include/linux/device.h:1009 [inline]
, at: usb_disconnect+0x103/0x950 drivers/usb/core/hub.c:2295
 #4: 
ffff88802c1a0160
 (
&dev->mutex
){....}-{3:3}
, at: device_lock include/linux/device.h:1009 [inline]
, at: __device_driver_lock drivers/base/dd.c:1093 [inline]
, at: device_release_driver_internal+0xce/0x7c0 drivers/base/dd.c:1290
 #5: 
ffffffff8f0a49a8
 (
input_mutex
){+.+.}-{3:3}
, at: __input_unregister_device+0x308/0x630 drivers/input/input.c:2293
6 locks held by kworker/1:0/25:
1 lock held by khungtaskd/30:
 #0: 
ffffffff8e333ee0
 (
rcu_read_lock
){....}-{1:2}
, at: rcu_lock_acquire include/linux/rcupdate.h:329 [inline]
, at: rcu_read_lock include/linux/rcupdate.h:781 [inline]
, at: debug_show_all_locks+0x55/0x2a0 kernel/locking/lockdep.c:6614
6 locks held by kworker/1:1/45:
5 locks held by kworker/1:2/1792:
5 locks held by kworker/u8:8/2490:
2 locks held by getty/4845:
 #0: 
ffff88802a3df0a0
 (
&tty->ldisc_sem
){++++}-{0:0}
, at: tty_ldisc_ref_wait+0x25/0x70 drivers/tty/tty_ldisc.c:243
 #1: 
ffffc9000312b2f0
 (
&ldata->atomic_read_lock
){+.+.}-{3:3}
, at: n_tty_read+0x6b5/0x1e10 drivers/tty/n_tty.c:2201
7 locks held by kworker/1:3/5115:
4 locks held by udevd/5117:
 #0: 
ffff88807b3d39e0
 (
&p->lock
){+.+.}-{3:3}
, at: seq_read_iter+0xb7/0xd60 fs/seq_file.c:182
 #1: 
ffff888021f10c88
 (
&of->mutex
#2
){+.+.}-{3:3}
, at: kernfs_seq_start+0x53/0x3b0 fs/kernfs/file.c:154
 #2: 
ffff88802b2e50f8
 (
kn->active
#22
){++++}-{0:0}
, at: kernfs_seq_start+0x72/0x3b0 fs/kernfs/file.c:155
 #3: 
ffff88802c282190
 (
&dev->mutex
){....}-{3:3}
, at: device_lock_interruptible include/linux/device.h:1014 [inline]
, at: manufacturer_show+0x26/0xa0 drivers/usb/core/sysfs.c:142
5 locks held by kworker/1:5/5154:

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

NMI backtrace for cpu 0
CPU: 0 PID: 30 Comm: khungtaskd Not tainted 6.9.0-next-20240523-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 04/02/2024
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0x241/0x360 lib/dump_stack.c:114
 nmi_cpu_backtrace+0x49c/0x4d0 lib/nmi_backtrace.c:113
 nmi_trigger_cpumask_backtrace+0x198/0x320 lib/nmi_backtrace.c:62
 trigger_all_cpu_backtrace include/linux/nmi.h:162 [inline]
 check_hung_uninterruptible_tasks kernel/hung_task.c:223 [inline]
 watchdog+0xfde/0x1020 kernel/hung_task.c:379
 kthread+0x2f0/0x390 kernel/kthread.c:389
 ret_from_fork+0x4b/0x80 arch/x86/kernel/process.c:147
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244
 </TASK>
Sending NMI from CPU 0 to CPUs 1:
yealink 5-1:36.0: urb_ctl_callback - urb status -71
NMI backtrace for cpu 1
CPU: 1 PID: 25 Comm: kworker/1:0 Not tainted 6.9.0-next-20240523-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 04/02/2024
Workqueue: events_power_efficient gc_worker
RIP: 0010:io_serial_out+0x7e/0xc0 drivers/tty/serial/8250/8250_port.c:413
Code: fc 89 e9 41 d3 e7 48 83 c3 40 48 89 d8 48 c1 e8 03 42 80 3c 20 00 74 08 48 89 df e8 3c 53 bd fc 44 03 3b 44 89 f0 44 89 fa ee <5b> 41 5c 41 5e 41 5f 5d c3 cc cc cc cc 89 e9 80 e1 07 38 c1 7c a7
RSP: 0018:ffffc90000a18090 EFLAGS: 00000002
RAX: 0000000000000020 RBX: ffffffff94adc1e0 RCX: 0000000000000000
RDX: 00000000000003f8 RSI: 0000000000000000 RDI: 0000000000000020
RBP: 0000000000000000 R08: ffffffff853ec46b R09: 1ffff1100403a046
R10: dffffc0000000000 R11: ffffffff853ec420 R12: dffffc0000000000
R13: 0000000000000020 R14: 0000000000000020 R15: 00000000000003f8
FS:  0000000000000000(0000) GS:ffff8880b9500000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f783dba7410 CR3: 000000000e132000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <NMI>
 </NMI>
 <IRQ>
 serial8250_console_write+0x1212/0x1770 drivers/tty/serial/8250/8250_port.c:3393
 console_emit_next_record kernel/printk/printk.c:2928 [inline]
 console_flush_all+0x865/0xfd0 kernel/printk/printk.c:2994
 console_unlock+0x13b/0x4d0 kernel/printk/printk.c:3063
 vprintk_emit+0x5a6/0x770 kernel/printk/printk.c:2345
 dev_vprintk_emit+0x2ae/0x330 drivers/base/core.c:4951
 dev_printk_emit+0xdd/0x120 drivers/base/core.c:4962
 _dev_err+0x122/0x170 drivers/base/core.c:5017
 urb_ctl_callback+0x1d3/0x290 drivers/input/misc/yealink.c:454
 __usb_hcd_giveback_urb+0x373/0x530 drivers/usb/core/hcd.c:1648
 dummy_timer+0x830/0x45d0 drivers/usb/gadget/udc/dummy_hcd.c:1987
 __run_hrtimer kernel/time/hrtimer.c:1687 [inline]
 __hrtimer_run_queues+0x59b/0xd50 kernel/time/hrtimer.c:1751
 hrtimer_interrupt+0x396/0x990 kernel/time/hrtimer.c:1813
 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1032 [inline]
 __sysvec_apic_timer_interrupt+0x110/0x3f0 arch/x86/kernel/apic/apic.c:1049
 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1043 [inline]
 sysvec_apic_timer_interrupt+0xa1/0xc0 arch/x86/kernel/apic/apic.c:1043
 </IRQ>
 <TASK>
 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:702
RIP: 0010:lock_acquire+0x264/0x550 kernel/locking/lockdep.c:5758
Code: 2b 00 74 08 4c 89 f7 e8 0a 95 89 00 f6 44 24 61 02 0f 85 85 01 00 00 41 f7 c7 00 02 00 00 74 01 fb 48 c7 44 24 40 0e 36 e0 45 <4b> c7 44 25 00 00 00 00 00 43 c7 44 25 09 00 00 00 00 43 c7 44 25
RSP: 0018:ffffc900001f7900 EFLAGS: 00000206
RAX: 0000000000000001 RBX: 1ffff9200003ef2c RCX: 0000000000000001
RDX: dffffc0000000000 RSI: ffffffff8bcacc20 RDI: ffffffff8c1fe6c0
RBP: ffffc900001f7a48 R08: ffffffff92fb6587 R09: 1ffffffff25f6cb0
R10: dffffc0000000000 R11: fffffbfff25f6cb1 R12: 1ffff9200003ef28
R13: dffffc0000000000 R14: ffffc900001f7960 R15: 0000000000000246
 rcu_lock_acquire include/linux/rcupdate.h:329 [inline]
 rcu_read_lock include/linux/rcupdate.h:781 [inline]
 gc_worker+0x28c/0x1530 net/netfilter/nf_conntrack_core.c:1486
 process_one_work kernel/workqueue.c:3248 [inline]
 process_scheduled_works+0xa2c/0x1830 kernel/workqueue.c:3329
 worker_thread+0x86d/0xd50 kernel/workqueue.c:3409
 kthread+0x2f0/0x390 kernel/kthread.c:389
 ret_from_fork+0x4b/0x80 arch/x86/kernel/process.c:147
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244
 </TASK>
INFO: NMI handler (nmi_cpu_backtrace_handler) took too long to run: 2.152 msecs
yealink 5-1:36.0: urb_irq_callback - urb status -71

Crashes (17):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/05/28 03:50 linux-next 3689b0ef08b7 f550015e .config console log report syz / log C [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root INFO: task hung in __input_unregister_device
2024/05/17 20:09 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing 51474ab44abf a12e99e7 .config console log report syz C [disk image] [vmlinux] [kernel image] ci2-upstream-usb INFO: task hung in __input_unregister_device
2024/05/13 17:59 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing 51474ab44abf 9026e142 .config console log report syz C [disk image] [vmlinux] [kernel image] ci2-upstream-usb INFO: task hung in __input_unregister_device
2023/09/14 12:38 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing 0bb80ecc33a8 0b6a67ac .config console log report syz C [disk image] [vmlinux] [kernel image] ci2-upstream-usb INFO: task hung in __input_unregister_device
2024/06/04 18:55 upstream f06ce441457d a1feae05 .config console log report syz / log C [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce INFO: task hung in __input_unregister_device
2024/09/21 06:02 upstream baeb9a7d8b60 6f888b75 .config console log report syz / log [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce INFO: task hung in __input_unregister_device
2024/09/15 09:36 upstream 0babf683783d 08d8a733 .config console log report syz / log [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-smack-root INFO: task hung in __input_unregister_device
2024/07/05 09:25 upstream 661e504db04c 2a40360c .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce INFO: task hung in __input_unregister_device
2024/07/04 10:59 upstream 795c58e4c7fc 409d975c .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-root INFO: task hung in __input_unregister_device
2024/06/05 10:40 upstream 32f88d65f01b e1e2c66e .config strace log report syz / log C [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce INFO: task hung in __input_unregister_device
2024/06/01 14:07 upstream cc8ed4d0a848 3113787f .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root INFO: task hung in __input_unregister_device
2024/06/01 00:12 upstream d8ec19857b09 3113787f .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root INFO: task hung in __input_unregister_device
2024/05/29 13:18 upstream e0cce98fe279 34889ee3 .config console log report syz / log C [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root INFO: task hung in __input_unregister_device
2024/05/28 22:43 upstream e0cce98fe279 34889ee3 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-root INFO: task hung in __input_unregister_device
2024/05/26 02:24 upstream 56fb6f92854f a10a183e .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce INFO: task hung in __input_unregister_device
2024/05/25 18:05 upstream 56fb6f92854f a10a183e .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce INFO: task hung in __input_unregister_device
2024/10/09 17:18 upstream 75b607fab38d 0278d004 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-386 INFO: task hung in __input_unregister_device
* Struck through repros no longer work on HEAD.