syzbot


INFO: rcu detected stall in vfs_write (2)

Status: auto-obsoleted due to no activity on 2025/01/13 12:03
Subsystems: kernfs
[Documentation on labels]
First crash: 97d, last: 97d
Similar bugs (1)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream INFO: rcu detected stall in vfs_write fs 1 1100d 1100d 0/28 closed as invalid on 2022/02/08 10:00

Sample crash report:
rcu: INFO: rcu_preempt detected expedited stalls on CPUs/tasks: {
 1-...D
 } 2628 jiffies s: 28621 root: 0x2/.
rcu: blocking rcu_node structures (internal RCU debug):
Sending NMI from CPU 0 to CPUs 1:
 kthread+0x2c1/0x3a0 kernel/kthread.c:389
NMI backtrace for cpu 1
CPU: 1 UID: 0 PID: 2531 Comm: syslogd Not tainted 6.12.0-rc3-syzkaller-00029-g64f3b5a6bc49 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024
RIP: 0010:io_serial_out+0x8f/0xb0 drivers/tty/serial/8250/8250_port.c:413
Code: 48 8d 7d 40 44 89 e1 48 b8 00 00 00 00 00 fc ff df 48 89 fa d3 e3 48 c1 ea 03 80 3c 02 00 75 1c 66 03 5d 40 44 89 e8 89 da ee <5b> 5d 41 5c 41 5d c3 cc cc cc cc e8 b1 ef 0d ff eb a0 e8 3a f0 0d
RSP: 0018:ffffc900001b8108 EFLAGS: 00000002
RAX: 0000000000000031 RBX: 00000000000003f8 RCX: 0000000000000000
RDX: 00000000000003f8 RSI: ffffffff82a06b75 RDI: ffffffff93635660
RBP: ffffffff93635620 R08: 0000000000000001 R09: 000000000000001f
R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000000
R13: 0000000000000031 R14: ffffffff82a06b10 R15: 0000000000000000
FS:  00007fa0a71d6380(0000) GS:ffff8881f5900000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f3143c01160 CR3: 000000011684e000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <NMI>
 </NMI>
 <IRQ>
 serial_out drivers/tty/serial/8250/8250.h:142 [inline]
 serial8250_console_fifo_write drivers/tty/serial/8250/8250_port.c:3322 [inline]
 serial8250_console_write+0xf9e/0x17c0 drivers/tty/serial/8250/8250_port.c:3393
 console_emit_next_record kernel/printk/printk.c:3092 [inline]
 console_flush_all+0x800/0xc60 kernel/printk/printk.c:3180
 __console_flush_and_unlock kernel/printk/printk.c:3239 [inline]
 console_unlock+0xd9/0x210 kernel/printk/printk.c:3279
 vprintk_emit+0x424/0x6f0 kernel/printk/printk.c:2407
 vprintk+0x7f/0xa0 kernel/printk/printk_safe.c:68
 _printk+0xc8/0x100 kernel/printk/printk.c:2432
 printk_stack_address arch/x86/kernel/dumpstack.c:72 [inline]
 show_trace_log_lvl+0x1b7/0x3d0 arch/x86/kernel/dumpstack.c:285
 sched_show_task kernel/sched/core.c:7589 [inline]
 sched_show_task+0x3f0/0x5f0 kernel/sched/core.c:7564
 show_state_filter+0xee/0x320 kernel/sched/core.c:7634
 k_spec drivers/tty/vt/keyboard.c:667 [inline]
 k_spec+0xed/0x150 drivers/tty/vt/keyboard.c:656
 kbd_keycode drivers/tty/vt/keyboard.c:1522 [inline]
 kbd_event+0xcbd/0x17a0 drivers/tty/vt/keyboard.c:1541
 input_handler_events_default+0x116/0x1b0 drivers/input/input.c:2549
 input_pass_values+0x777/0x8e0 drivers/input/input.c:126
 input_event_dispose drivers/input/input.c:341 [inline]
 input_handle_event+0xf0b/0x14d0 drivers/input/input.c:369
 input_event drivers/input/input.c:398 [inline]
 input_event+0x83/0xa0 drivers/input/input.c:390
 input_sync include/linux/input.h:451 [inline]
 hidinput_report_event+0xb2/0x100 drivers/hid/hid-input.c:1736
 hid_report_raw_event+0x274/0x11c0 drivers/hid/hid-core.c:2047
 __hid_input_report.constprop.0+0x341/0x440 drivers/hid/hid-core.c:2110
 hid_irq_in+0x35e/0x870 drivers/hid/usbhid/hid-core.c:285
 __usb_hcd_giveback_urb+0x389/0x6e0 drivers/usb/core/hcd.c:1650
 usb_hcd_giveback_urb+0x396/0x450 drivers/usb/core/hcd.c:1734
 dummy_timer+0x17c3/0x38d0 drivers/usb/gadget/udc/dummy_hcd.c:1988
 __run_hrtimer kernel/time/hrtimer.c:1691 [inline]
 __hrtimer_run_queues+0x20a/0xae0 kernel/time/hrtimer.c:1755
 hrtimer_run_softirq+0x17d/0x350 kernel/time/hrtimer.c:1772
 handle_softirqs+0x206/0x8d0 kernel/softirq.c:554
 __do_softirq kernel/softirq.c:588 [inline]
 invoke_softirq kernel/softirq.c:428 [inline]
 __irq_exit_rcu kernel/softirq.c:637 [inline]
 irq_exit_rcu+0xac/0x110 kernel/softirq.c:649
 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1037 [inline]
 sysvec_apic_timer_interrupt+0x90/0xb0 arch/x86/kernel/apic/apic.c:1037
 </IRQ>
 <TASK>
 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:702
RIP: 0010:percpu_up_read include/linux/percpu-rwsem.h:121 [inline]
RIP: 0010:__sb_end_write include/linux/fs.h:1711 [inline]
RIP: 0010:sb_end_write include/linux/fs.h:1804 [inline]
RIP: 0010:file_end_write include/linux/fs.h:2951 [inline]
RIP: 0010:vfs_write+0x426/0x1140 fs/read_write.c:691
Code: bb 90 03 00 00 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 80 3c 02 00 0f 85 21 0c 00 00 48 8b 83 90 03 00 00 65 ff 08 <e8> 15 08 a1 ff bf 01 00 00 00 e8 0b 2f 73 ff 31 ff 65 8b 1d ea ec
RSP: 0018:ffffc90001b6fd28 EFLAGS: 00000282
RAX: 0000607e0a403860 RBX: ffff8881162ba000 RCX: ffffffff81b4d6cc
RDX: 1ffff11022c57472 RSI: ffffffff81b4d6da RDI: ffff8881162ba390
RBP: 000000000000009a R08: 0000000000000005 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000000
R13: ffff888129236090 R14: 0000000000000000 R15: 1ffff9200036dfaf
 ksys_write+0x12f/0x260 fs/read_write.c:736
 do_syscall_x64 arch/x86/entry/common.c:52 [inline]
 do_syscall_64+0xcd/0x250 arch/x86/entry/common.c:83
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7fa0a732abf2
Code: 89 c7 48 89 44 24 08 e8 7b 34 fa ff 48 8b 44 24 08 48 83 c4 28 c3 c3 64 8b 04 25 18 00 00 00 85 c0 75 20 b8 01 00 00 00 0f 05 <48> 3d 00 f0 ff ff 76 6f 48 8b 15 07 a2 0d 00 f7 d8 64 89 02 48 83
RSP: 002b:00007ffffc5269e8 EFLAGS: 00000246 ORIG_RAX: 0000000000000001
RAX: ffffffffffffffda RBX: 0000000000000003 RCX: 00007fa0a732abf2
RDX: 000000000000009a RSI: 00005620a694b600 RDI: 0000000000000003
RBP: 00005620a694b600 R08: 0000000000000001 R09: 0000000000000000
R10: 00007fa0a74c93a3 R11: 0000000000000246 R12: 000000000000009a
R13: 00007fa0a71d6300 R14: 0000000000000003 R15: 00005620a694b410
 </TASK>
 ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:147
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244
 </TASK>
task:kworker/0:2     state:I stack:30048 pid:30784 tgid:30784 ppid:2      flags:0x00004000
Workqueue:  0x0
 (events)
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5322 [inline]
 __schedule+0x105f/0x34b0 kernel/sched/core.c:6682
 __schedule_loop kernel/sched/core.c:6759 [inline]
 schedule+0xe7/0x350 kernel/sched/core.c:6774
 worker_thread+0x2de/0xf00 kernel/workqueue.c:3406
 kthread+0x2c1/0x3a0 kernel/kthread.c:389
 ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:147
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244
 </TASK>
task:syz.2.1773      state:D
 stack:28800 pid:31341 tgid:31340 ppid:26744  flags:0x00004006
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5322 [inline]
 __schedule+0x105f/0x34b0 kernel/sched/core.c:6682
 __schedule_loop kernel/sched/core.c:6759 [inline]
 schedule+0xe7/0x350 kernel/sched/core.c:6774
 exp_funnel_lock+0x344/0x3b0 kernel/rcu/tree_exp.h:320
 synchronize_rcu_expedited+0x290/0x450 kernel/rcu/tree_exp.h:976
 module_remove_driver+0x2e/0x260 drivers/base/module.c:106
 bus_remove_driver+0x143/0x2c0 drivers/base/bus.c:745
 driver_unregister+0x76/0xb0 drivers/base/driver.c:274
 usb_gadget_unregister_driver+0x49/0x70 drivers/usb/gadget/udc/core.c:1732
 raw_release+0x1ae/0x2b0 drivers/usb/gadget/legacy/raw_gadget.c:462
 __fput+0x3f6/0xb60 fs/file_table.c:431
 task_work_run+0x14e/0x250 kernel/task_work.c:228
 get_signal+0x1ca/0x2770 kernel/signal.c:2690
 arch_do_signal_or_restart+0x90/0x7e0 arch/x86/kernel/signal.c:337
 exit_to_user_mode_loop kernel/entry/common.c:111 [inline]
 exit_to_user_mode_prepare include/linux/entry-common.h:328 [inline]
 __syscall_exit_to_user_mode_work kernel/entry/common.c:207 [inline]
 syscall_exit_to_user_mode+0x147/0x260 kernel/entry/common.c:218
 do_syscall_64+0xda/0x250 arch/x86/entry/common.c:89
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7f4e4d75dbfb
RSP: 002b:00007f4e4c3cff70 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
RAX: fffffffffffffffc RBX: 00000000ffffff75 RCX: 00007f4e4d75dbfb
RDX: 00007f4e4c3cfff0 RSI: 0000000040085507 RDI: 0000000000000003
RBP: 0000000000000003 R08: 00007f4e4da40320 R09: 0000000000000000
R10: 0000000000000003 R11: 0000000000000246 R12: 00000000200002c0
R13: 0000000000000000 R14: 00007f4e4d915f80 R15: 00007fff87da01c8
 </TASK>
task:syz.2.1773      state:D
 stack:28992 pid:31355 tgid:31340 ppid:26744  flags:0x00004006
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5322 [inline]
 __schedule+0x105f/0x34b0 kernel/sched/core.c:6682
 __schedule_loop kernel/sched/core.c:6759 [inline]
 schedule+0xe7/0x350 kernel/sched/core.c:6774
 synchronize_rcu_expedited+0x392/0x450 kernel/rcu/tree_exp.h:991
 module_remove_driver+0x2e/0x260 drivers/base/module.c:106
 bus_remove_driver+0x143/0x2c0 drivers/base/bus.c:745
 driver_unregister+0x76/0xb0 drivers/base/driver.c:274
 usb_gadget_register_driver_owner+0x20f/0x330 drivers/usb/gadget/udc/core.c:1722
 raw_ioctl_run drivers/usb/gadget/legacy/raw_gadget.c:595 [inline]
 raw_ioctl+0x1731/0x2b90 drivers/usb/gadget/legacy/raw_gadget.c:1306
 vfs_ioctl fs/ioctl.c:51 [inline]
 __do_sys_ioctl fs/ioctl.c:907 [inline]
 __se_sys_ioctl fs/ioctl.c:893 [inline]
 __x64_sys_ioctl+0x18f/0x220 fs/ioctl.c:893
 do_syscall_x64 arch/x86/entry/common.c:52 [inline]
 do_syscall_64+0xcd/0x250 arch/x86/entry/common.c:83
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7f4e4d75dbfb
RSP: 002b:00007f4e4c3adf10 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 0000000000000005 RCX: 00007f4e4d75dbfb
RDX: 0000000000000000 RSI: 0000000000005501 RDI: 0000000000000005
RBP: 00007f4e4c3aefe0 R08: 0000000000000000 R09: 00322e6364755f79
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007f4e4c3adfb0 R14: 0000000020000180 R15: 00007f4e4da413f0
 </TASK>
task:syz.3.1774      state:D stack:27856 pid:31342 tgid:31342 ppid:26787  flags:0x00004006
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5322 [inline]
 __schedule+0x105f/0x34b0 kernel/sched/core.c:6682
 __schedule_loop kernel/sched/core.c:6759 [inline]
 schedule+0xe7/0x350 kernel/sched/core.c:6774
 schedule_preempt_disabled+0x13/0x30 kernel/sched/core.c:6831
 __mutex_lock_common kernel/locking/mutex.c:684 [inline]
 __mutex_lock+0x5b8/0x9c0 kernel/locking/mutex.c:752
 exp_funnel_lock+0x1a4/0x3b0 kernel/rcu/tree_exp.h:329
 synchronize_rcu_expedited+0x290/0x450 kernel/rcu/tree_exp.h:976
 module_remove_driver+0x2e/0x260 drivers/base/module.c:106
 bus_remove_driver+0x143/0x2c0 drivers/base/bus.c:745
 driver_unregister+0x76/0xb0 drivers/base/driver.c:274
 usb_gadget_unregister_driver+0x49/0x70 drivers/usb/gadget/udc/core.c:1732
 raw_release+0x1ae/0x2b0 drivers/usb/gadget/legacy/raw_gadget.c:462
 __fput+0x3f6/0xb60 fs/file_table.c:431
 task_work_run+0x14e/0x250 kernel/task_work.c:228
 exit_task_work include/linux/task_work.h:40 [inline]
 do_exit+0xadd/0x2ce0 kernel/exit.c:939
 do_group_exit+0xd3/0x2a0 kernel/exit.c:1088
 get_signal+0x25fb/0x2770 kernel/signal.c:2917
 arch_do_signal_or_restart+0x90/0x7e0 arch/x86/kernel/signal.c:337
 exit_to_user_mode_loop kernel/entry/common.c:111 [inline]
 exit_to_user_mode_prepare include/linux/entry-common.h:328 [inline]
 __syscall_exit_to_user_mode_work kernel/entry/common.c:207 [inline]
 syscall_exit_to_user_mode+0x147/0x260 kernel/entry/common.c:218
 do_syscall_64+0xda/0x250 arch/x86/entry/common.c:89
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7fec8f11dff9
RSP: 002b:00007fff6dd211a8 EFLAGS: 00000246 ORIG_RAX: 00000000000000ca
RAX: fffffffffffffdfc RBX: 00007fff6dd212d0 RCX: 00007fec8f11dff9
RDX: 0000000000000000 RSI: 0000000000000080 RDI: 00007fec8f2d5f8c
RBP: 00007fec8f2d5f8c R08: 00007fec8fe0e080 R09: 00007fff6dd2149f
R10: 00007fff6dd212b0 R11: 0000000000000246 R12: 0000000000145345
R13: 00007fff6dd212b0 R14: 0000000000000bea R15: 000000000014475b
 </TASK>
task:syz.1.1776      state:D stack:25408 pid:31349 tgid:31349 ppid:26763  flags:0x00000000
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5322 [inline]
 __schedule+0x105f/0x34b0 kernel/sched/core.c:6682
 __schedule_loop kernel/sched/core.c:6759 [inline]
 schedule+0xe7/0x350 kernel/sched/core.c:6774
 exp_funnel_lock+0x344/0x3b0 kernel/rcu/tree_exp.h:320
 synchronize_rcu_expedited+0x290/0x450 kernel/rcu/tree_exp.h:976
 evdev_detach_client drivers/input/evdev.c:377 [inline]
 evdev_release+0x23f/0x400 drivers/input/evdev.c:440
 __fput+0x3f6/0xb60 fs/file_table.c:431
 task_work_run+0x14e/0x250 kernel/task_work.c:228
 resume_user_mode_work include/linux/resume_user_mode.h:50 [inline]
 exit_to_user_mode_loop kernel/entry/common.c:114 [inline]
 exit_to_user_mode_prepare include/linux/entry-common.h:328 [inline]
 __syscall_exit_to_user_mode_work kernel/entry/common.c:207 [inline]
 syscall_exit_to_user_mode+0x24e/0x260 kernel/entry/common.c:218
 do_syscall_64+0xda/0x250 arch/x86/entry/common.c:89
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7fe97e4bdff9
RSP: 002b:00007ffececffac8 EFLAGS: 00000246
 ORIG_RAX: 00000000000001b4
RAX: 0000000000000000 RBX: 00007fe97e677a80 RCX: 00007fe97e4bdff9
RDX: 0000000000000000 RSI: 000000000000001e RDI: 0000000000000003
RBP: 00007fe97e677a80 R08: 0000000000000006 R09: 00007ffececffdbf
R10: 00000000003ffb68 R11: 0000000000000246 R12: 0000000000147ad8
R13: 00007ffececffbd0 R14: 000000000000015e R15: ffffffffffffffff
 </TASK>
task:syz.1.1776      state:S stack:28576 pid:31350 tgid:31349 ppid:26763  flags:0x00000000
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5322 [inline]
 __schedule+0x105f/0x34b0 kernel/sched/core.c:6682
 __schedule_loop kernel/sched/core.c:6759 [inline]
 schedule+0xe7/0x350 kernel/sched/core.c:6774
 schedule_timeout+0x258/0x2a0 kernel/time/timer.c:2591
 ___down_common+0x2d7/0x460 kernel/locking/semaphore.c:225
 __down_common kernel/locking/semaphore.c:246 [inline]
 __down_interruptible+0x21/0x40 kernel/locking/semaphore.c:259
 down_interruptible+0x7f/0xa0 kernel/locking/semaphore.c:87
 raw_event_queue_fetch drivers/usb/gadget/legacy/raw_gadget.c:100 [inline]
 raw_ioctl_event_fetch drivers/usb/gadget/legacy/raw_gadget.c:637 [inline]
 raw_ioctl+0x11ea/0x2b90 drivers/usb/gadget/legacy/raw_gadget.c:1309
 vfs_ioctl fs/ioctl.c:51 [inline]
 __do_sys_ioctl fs/ioctl.c:907 [inline]
 __se_sys_ioctl fs/ioctl.c:893 [inline]
 __x64_sys_ioctl+0x18f/0x220 fs/ioctl.c:893
 do_syscall_x64 arch/x86/entry/common.c:52 [inline]
 do_syscall_64+0xcd/0x250 arch/x86/entry/common.c:83
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7fe97e4bdbfb
RSP: 002b:00007fe97d134f10 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 0000000000000003 RCX: 00007fe97e4bdbfb
RDX: 00007fe97d135fe0 RSI: 0000000080085502 RDI: 0000000000000003
RBP: 00007fe97d135fe0 R08: 0000000000000080 R09: 00007fe97d134fd8
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000080085502
R13: 0000000800000000 R14: 0000000000000008 R15: 00007fe97e53a273
 </TASK>
task:syz.1.1776      state:D stack:28992 pid:31356 tgid:31349 ppid:26763  flags:0x00004002
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5322 [inline]
 __schedule+0x105f/0x34b0 kernel/sched/core.c:6682
 __schedule_loop kernel/sched/core.c:6759 [inline]
 schedule+0xe7/0x350 kernel/sched/core.c:6774
 exp_funnel_lock+0x344/0x3b0 kernel/rcu/tree_exp.h:320
 synchronize_rcu_expedited+0x290/0x450 kernel/rcu/tree_exp.h:976
 module_remove_driver+0x2e/0x260 drivers/base/module.c:106
 bus_remove_driver+0x143/0x2c0 drivers/base/bus.c:745
 driver_unregister+0x76/0xb0 drivers/base/driver.c:274
 usb_gadget_register_driver_owner+0x20f/0x330 drivers/usb/gadget/udc/core.c:1722
 raw_ioctl_run drivers/usb/gadget/legacy/raw_gadget.c:595 [inline]
 raw_ioctl+0x1731/0x2b90 drivers/usb/gadget/legacy/raw_gadget.c:1306
 vfs_ioctl fs/ioctl.c:51 [inline]
 __do_sys_ioctl fs/ioctl.c:907 [inline]
 __se_sys_ioctl fs/ioctl.c:893 [inline]
 __x64_sys_ioctl+0x18f/0x220 fs/ioctl.c:893
 do_syscall_x64 arch/x86/entry/common.c:52 [inline]
 do_syscall_64+0xcd/0x250 arch/x86/entry/common.c:83
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7fe97e4bdbfb
RSP: 002b:00007fe97d113f10 EFLAGS: 00000246
 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 0000000000000004 RCX: 00007fe97e4bdbfb
RDX: 0000000000000000 RSI: 0000000000005501 RDI: 0000000000000004
RBP: 00007fe97d114fe0 R08: 0000000000000000 R09: 00312e6364755f79
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007fe97d113fb0 R14: 0000000020000000 R15: 00007fe97e7a0b88
 </TASK>
task:syz.1.1776      state:D stack:28992 pid:31358 tgid:31349 ppid:26763  flags:0x00004000
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5322 [inline]
 __schedule+0x105f/0x34b0 kernel/sched/core.c:6682
 __schedule_loop kernel/sched/core.c:6759 [inline]
 schedule+0xe7/0x350 kernel/sched/core.c:6774
 exp_funnel_lock+0x344/0x3b0 kernel/rcu/tree_exp.h:320
 synchronize_rcu_expedited+0x290/0x450 kernel/rcu/tree_exp.h:976
 module_remove_driver+0x2e/0x260 drivers/base/module.c:106
 bus_remove_driver+0x143/0x2c0 drivers/base/bus.c:745
 driver_unregister+0x76/0xb0 drivers/base/driver.c:274
 usb_gadget_register_driver_owner+0x20f/0x330 drivers/usb/gadget/udc/core.c:1722
 raw_ioctl_run drivers/usb/gadget/legacy/raw_gadget.c:595 [inline]
 raw_ioctl+0x1731/0x2b90 drivers/usb/gadget/legacy/raw_gadget.c:1306
 vfs_ioctl fs/ioctl.c:51 [inline]
 __do_sys_ioctl fs/ioctl.c:907 [inline]
 __se_sys_ioctl fs/ioctl.c:893 [inline]
 __x64_sys_ioctl+0x18f/0x220 fs/ioctl.c:893
 do_syscall_x64 arch/x86/entry/common.c:52 [inline]
 do_syscall_64+0xcd/0x250 arch/x86/entry/common.c:83
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7fe97e4bdbfb
RSP: 002b:00007fe97d0f2f10 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 0000000000000005 RCX: 00007fe97e4bdbfb
RDX: 0000000000000000 RSI: 0000000000005501 RDI: 0000000000000005
RBP: 00007fe97d0f3fe0 R08: 0000000000000000 R09: 00312e6364755f79
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007fe97d0f2fb0 R14: 00000000200007c0 R15: 00007fe97e7a13f0
 </TASK>
task:syz.1.1776      state:S stack:28384 pid:31359 tgid:31349 ppid:26763  flags:0x00000000
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5322 [inline]
 __schedule+0x105f/0x34b0 kernel/sched/core.c:6682
 __schedule_loop kernel/sched/core.c:6759 [inline]
 schedule+0xe7/0x350 kernel/sched/core.c:6774
 futex_wait_queue+0xfc/0x1f0 kernel/futex/waitwake.c:370
 __futex_wait+0x291/0x3c0 kernel/futex/waitwake.c:669
 futex_wait+0xe9/0x380 kernel/futex/waitwake.c:697
 do_futex+0x22b/0x350 kernel/futex/syscalls.c:102
 __do_sys_futex kernel/futex/syscalls.c:179 [inline]
 __se_sys_futex kernel/futex/syscalls.c:160 [inline]
 __x64_sys_futex+0x1e1/0x4c0 kernel/futex/syscalls.c:160
 do_syscall_x64 arch/x86/entry/common.c:52 [inline]
 do_syscall_64+0xcd/0x250 arch/x86/entry/common.c:83
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7fe97e4bdff9
RSP: 002b:00007fe97ced20e8 EFLAGS: 00000246
 ORIG_RAX: 00000000000000ca
RAX: ffffffffffffffda RBX: 00007fe97e676210 RCX: 00007fe97e4bdff9
RDX: 0000000000000000 RSI: 0000000000000080 RDI: 00007fe97e676210
RBP: 00007fe97e676208 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 00007fe97e676214
R13: 0000000000000000 R14: 00007ffececff880 R15: 00007ffececff968
 </TASK>
task:syz.4.1777      state:D stack:27856 pid:31351 tgid:31351 ppid:26749  flags:0x00004006
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5322 [inline]
 __schedule+0x105f/0x34b0 kernel/sched/core.c:6682
 __schedule_loop kernel/sched/core.c:6759 [inline]
 schedule+0xe7/0x350 kernel/sched/core.c:6774
 exp_funnel_lock+0x344/0x3b0 kernel/rcu/tree_exp.h:320
 synchronize_rcu_expedited+0x290/0x450 kernel/rcu/tree_exp.h:976
 module_remove_driver+0x2e/0x260 drivers/base/module.c:106
 bus_remove_driver+0x143/0x2c0 drivers/base/bus.c:745
 driver_unregister+0x76/0xb0 drivers/base/driver.c:274
 usb_gadget_unregister_driver+0x49/0x70 drivers/usb/gadget/udc/core.c:1732
 raw_release+0x1ae/0x2b0 drivers/usb/gadget/legacy/raw_gadget.c:462
 __fput+0x3f6/0xb60 fs/file_table.c:431
 task_work_run+0x14e/0x250 kernel/task_work.c:228
 exit_task_work include/linux/task_work.h:40 [inline]
 do_exit+0xadd/0x2ce0 kernel/exit.c:939
 do_group_exit+0xd3/0x2a0 kernel/exit.c:1088
 get_signal+0x25fb/0x2770 kernel/signal.c:2917
 arch_do_signal_or_restart+0x90/0x7e0 arch/x86/kernel/signal.c:337
 exit_to_user_mode_loop kernel/entry/common.c:111 [inline]
 exit_to_user_mode_prepare include/linux/entry-common.h:328 [inline]
 __syscall_exit_to_user_mode_work kernel/entry/common.c:207 [inline]
 syscall_exit_to_user_mode+0x147/0x260 kernel/entry/common.c:218
 do_syscall_64+0xda/0x250 arch/x86/entry/common.c:89
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7facf865dff9
RSP: 002b:00007ffeb20905a8 EFLAGS: 00000246
 ORIG_RAX: 00000000000000ca
RAX: fffffffffffffdfc RBX: 00007ffeb20906d0 RCX: 00007facf865dff9
RDX: 0000000000000000 RSI: 0000000000000080 RDI: 00007facf8815f8c
RBP: 00007facf8815f8c R08: 00007facf934e080 R09: 00007ffeb209089f
R10: 00007ffeb20906b0 R11: 0000000000000246 R12: 0000000000145839
R13: 00007ffeb20906b0 R14: 0000000000000bea R15: 0000000000144c4f
 </TASK>
task:syz.0.1778      state:D stack:27856 pid:31353 tgid:31353 ppid:26760  flags:0x00004006
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5322 [inline]
 __schedule+0x105f/0x34b0 kernel/sched/core.c:6682
 __schedule_loop kernel/sched/core.c:6759 [inline]
 schedule+0xe7/0x350 kernel/sched/core.c:6774
 exp_funnel_lock+0x344/0x3b0 kernel/rcu/tree_exp.h:320
 synchronize_rcu_expedited+0x290/0x450 kernel/rcu/tree_exp.h:976
 module_remove_driver+0x2e/0x260 drivers/base/module.c:106
 bus_remove_driver+0x143/0x2c0 drivers/base/bus.c:745
 driver_unregister+0x76/0xb0 drivers/base/driver.c:274
 usb_gadget_unregister_driver+0x49/0x70 drivers/usb/gadget/udc/core.c:1732
 raw_release+0x1ae/0x2b0 drivers/usb/gadget/legacy/raw_gadget.c:462
 __fput+0x3f6/0xb60 fs/file_table.c:431
 task_work_run+0x14e/0x250 kernel/task_work.c:228
 exit_task_work include/linux/task_work.h:40 [inline]
 do_exit+0xadd/0x2ce0 kernel/exit.c:939
 do_group_exit+0xd3/0x2a0 kernel/exit.c:1088
 get_signal+0x25fb/0x2770 kernel/signal.c:2917
 arch_do_signal_or_restart+0x90/0x7e0 arch/x86/kernel/signal.c:337
 exit_to_user_mode_loop kernel/entry/common.c:111 [inline]
 exit_to_user_mode_prepare include/linux/entry-common.h:328 [inline]
 __syscall_exit_to_user_mode_work kernel/entry/common.c:207 [inline]
 syscall_exit_to_user_mode+0x147/0x260 kernel/entry/common.c:218
 do_syscall_64+0xda/0x250 arch/x86/entry/common.c:89
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7f3143c1dff9
RSP: 002b:00007fffdf1a2188 EFLAGS: 00000246 ORIG_RAX: 00000000000000ca
RAX: fffffffffffffdfc RBX: 00007fffdf1a22b0 RCX: 00007f3143c1dff9
RDX: 0000000000000000 RSI: 0000000000000080 RDI: 00007f3143dd5f8c
RBP: 00007f3143dd5f8c R08: 00007f3143a9a080 R09: 00007fffdf1a247f
R10: 00007fffdf1a2290 R11: 0000000000000246 R12: 00000000001458c6
R13: 00007fffdf1a2290 R14: 0000000000000bea R15: 0000000000144cdc
 </TASK>

Showing all locks held in the system:
3 locks held by kworker/1:1/36:
 #0: ffff8881022b8948 ((wq_completion)pm){+.+.}-{0:0}, at: process_one_work+0x129b/0x1ba0 kernel/workqueue.c:3204
 #1: ffffc90000267d80
 ((work_completion)(&hcd->wakeup_work)){+.+.}-{0:0}, at: process_one_work+0x921/0x1ba0 kernel/workqueue.c:3205
 #2: 
ffff88810974b190 (&dev->mutex){....}-{3:3}, at: device_lock include/linux/device.h:1014 [inline]
ffff88810974b190 (&dev->mutex){....}-{3:3}, at: usb_remote_wakeup+0x21/0xe0 drivers/usb/core/hub.c:3840
6 locks held by kworker/1:2/807:
 #0: ffff888106eb6148 ((wq_completion)usb_hub_wq){+.+.}-{0:0}, at: process_one_work+0x129b/0x1ba0 kernel/workqueue.c:3204
 #1: ffffc90001c4fd80 ((work_completion)(&hub->events)){+.+.}-{0:0}, at: process_one_work+0x921/0x1ba0 kernel/workqueue.c:3205
 #2: ffff888109f1b190 (&dev->mutex){....}-{3:3}, at: device_lock include/linux/device.h:1014 [inline]
 #2: ffff888109f1b190 (&dev->mutex){....}-{3:3}, at: hub_event+0x1be/0x4f40 drivers/usb/core/hub.c:5849
 #3: 
ffff888109f1e508 (&port_dev->status_lock){+.+.}-{3:3}, at: usb_lock_port drivers/usb/core/hub.c:3206 [inline]
ffff888109f1e508 (&port_dev->status_lock){+.+.}-{3:3}, at: hub_port_connect drivers/usb/core/hub.c:5418 [inline]
ffff888109f1e508 (&port_dev->status_lock){+.+.}-{3:3}, at: hub_port_connect_change drivers/usb/core/hub.c:5661 [inline]
ffff888109f1e508 (&port_dev->status_lock){+.+.}-{3:3}, at: port_event drivers/usb/core/hub.c:5821 [inline]
ffff888109f1e508 (&port_dev->status_lock){+.+.}-{3:3}, at: hub_event+0x28aa/0x4f40 drivers/usb/core/hub.c:5903
 #4: ffff888106b0d868 (hcd->address0_mutex){+.+.}-{3:3}, at: hub_port_connect drivers/usb/core/hub.c:5419 [inline]
 #4: ffff888106b0d868 (hcd->address0_mutex){+.+.}-{3:3}, at: hub_port_connect_change drivers/usb/core/hub.c:5661 [inline]
 #4: ffff888106b0d868 (hcd->address0_mutex){+.+.}-{3:3}, at: port_event drivers/usb/core/hub.c:5821 [inline]
 #4: ffff888106b0d868 (hcd->address0_mutex){+.+.}-{3:3}, at: hub_event+0x28d0/0x4f40 drivers/usb/core/hub.c:5903
 #5: ffffffff899cc810 (ehci_cf_port_reset_rwsem){.+.+}-{3:3}, at: hub_port_reset+0x1a7/0x1e60 drivers/usb/core/hub.c:3021
4 locks held by syslogd/2531:
 #0: ffff88812af05230 (&dev->event_lock){..-.}-{2:2}, at: input_event drivers/input/input.c:397 [inline]
 #0: ffff88812af05230 (&dev->event_lock){..-.}-{2:2}, at: input_event+0x70/0xa0 drivers/input/input.c:390
 #1: ffffffff88ebb100 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire include/linux/rcupdate.h:337 [inline]
 #1: ffffffff88ebb100 (rcu_read_lock){....}-{1:2}, at: rcu_read_lock include/linux/rcupdate.h:849 [inline]
 #1: ffffffff88ebb100 (rcu_read_lock){....}-{1:2}, at: input_pass_values+0x8b/0x8e0 drivers/input/input.c:118
 #2: ffffffff893879d8 (kbd_event_lock){..-.}-{2:2}, at: spin_lock include/linux/spinlock.h:351 [inline]
 #2: ffffffff893879d8 (kbd_event_lock){..-.}-{2:2}, at: kbd_event+0x8a/0x17a0 drivers/tty/vt/keyboard.c:1535
 #3: ffffffff88ebb100 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire include/linux/rcupdate.h:337 [inline]
 #3: ffffffff88ebb100 (rcu_read_lock){....}-{1:2}, at: rcu_read_lock include/linux/rcupdate.h:849 [inline]
 #3: ffffffff88ebb100 (rcu_read_lock){....}-{1:2}, at: debug_show_all_locks+0x7f/0x390 kernel/locking/lockdep.c:6720
2 locks held by getty/2607:
 #0: 
ffff888114aa10a0 (&tty->ldisc_sem){++++}-{0:0}, at: tty_ldisc_ref_wait+0x24/0x80 drivers/tty/tty_ldisc.c:243
 #1: ffffc900000432f0 (&ldata->atomic_read_lock){+.+.}-{3:3}
, at: n_tty_read+0xfba/0x1480 drivers/tty/n_tty.c:2211
6 locks held by kworker/0:6/9743:
6 locks held by kworker/0:0/17917:
 #0: ffff888106eb6148 ((wq_completion)usb_hub_wq
){+.+.}-{0:0}, at: process_one_work+0x129b/0x1ba0 kernel/workqueue.c:3204
 #1: ffffc900026dfd80 ((work_completion)(&hub->events)){+.+.}-{0:0}
, at: process_one_work+0x921/0x1ba0 kernel/workqueue.c:3205
 #2: ffff888109b7b190
 (&dev->mutex){....}-{3:3}, at: device_lock include/linux/device.h:1014 [inline]
 (&dev->mutex){....}-{3:3}, at: hub_event+0x1be/0x4f40 drivers/usb/core/hub.c:5849
 #3: ffff888117e5a190
 (&dev->mutex){....}-{3:3}, at: device_lock include/linux/device.h:1014 [inline]
 (&dev->mutex){....}-{3:3}, at: usb_disconnect+0x10a/0x920 drivers/usb/core/hub.c:2295
 #4: ffff888125ace160 (&dev->mutex){....}-{3:3}, at: device_lock include/linux/device.h:1014 [inline]
 #4: ffff888125ace160 (&dev->mutex){....}-{3:3}, at: __device_driver_lock drivers/base/dd.c:1095 [inline]
 #4: ffff888125ace160 (&dev->mutex){....}-{3:3}, at: device_release_driver_internal+0xa4/0x610 drivers/base/dd.c:1293
 #5: ffff88812ce95a20
 (&dev->mutex){....}-{3:3}, at: device_lock include/linux/device.h:1014 [inline]
 (&dev->mutex){....}-{3:3}, at: __device_driver_lock drivers/base/dd.c:1095 [inline]
 (&dev->mutex){....}-{3:3}, at: device_release_driver_internal+0xa4/0x610 drivers/base/dd.c:1293
4 locks held by udevd/28998:
 #0: 
ffff888128628790 (&p->lock){+.+.}-{3:3}, at: seq_read_iter+0xd8/0x12b0 fs/seq_file.c:182
 #1: 
ffff888126983488
 (&of->mutex){+.+.}-{3:3}, at: kernfs_seq_start+0x4d/0x240 fs/kernfs/file.c:154
 #2: ffff8881147c20f8 (kn->active#23){++++}-{0:0}
, at: kernfs_seq_start+0x71/0x240 fs/kernfs/file.c:155
 #3: ffff88812474a190 (
&dev->mutex
){....}-{3:3}, at: device_lock_interruptible include/linux/device.h:1019 [inline]
){....}-{3:3}, at: manufacturer_show+0x26/0xa0 drivers/usb/core/sysfs.c:142
1 lock held by syz.2.1773/31355:
 #0: 
ffffffff88ec69f8 (rcu_state.exp_mutex){+.+.}-{3:3}, at: exp_funnel_lock+0x282/0x3b0 kernel/rcu/tree_exp.h:297
1 lock held by syz.3.1774/31342:
 #0: ffffffff88ec69f8 (rcu_state.exp_mutex){+.+.}-{3:3}, at: exp_funnel_lock+0x1a4/0x3b0 kernel/rcu/tree_exp.h:329

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

keytouch 0003:0926:3333.011B: can't resubmit intr, dummy_hcd.2-1/input0, status -19

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/10/15 12:02 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing 64f3b5a6bc49 7eb57b4a .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-usb INFO: rcu detected stall in vfs_write
* Struck through repros no longer work on HEAD.