=============================
WARNING: suspicious RCU usage
syzkaller #0 Not tainted
-----------------------------
kernel/sched/core.c:9226 Illegal context switch in RCU-sched read-side critical section!
other info that might help us debug this:
rcu_scheduler_active = 2, debug_locks = 1
locks held by kworker/1:0/24: 8, last CPU#1:
#0: ffff888105eca940 ((wq_completion)usb_hub_wq){+.+.}-{0:0}, at: process_one_work+0x1466/0x1b10 kernel/workqueue.c:3371
#1: ffffc9000019fd18 ((work_completion)(&hub->events)){+.+.}-{0:0}, at: process_one_work+0xa2c/0x1b10 kernel/workqueue.c:3372
#2: ffff88810af061d8 (&dev->mutex){....}-{4:4}, at: device_lock include/linux/device.h:1104 [inline]
#2: ffff88810af061d8 (&dev->mutex){....}-{4:4}, at: hub_event+0x1bb/0x4510 drivers/usb/core/hub.c:5917
#3: ffff888109fb91d8 (&dev->mutex){....}-{4:4}, at: device_lock include/linux/device.h:1104 [inline]
#3: ffff888109fb91d8 (&dev->mutex){....}-{4:4}, at: usb_disconnect+0x10a/0x9a0 drivers/usb/core/hub.c:2346
#4: ffff888100e872a0 (&root->kernfs_supers_rwsem){++++}-{4:4}, at: kernfs_remove_by_name_ns+0x49/0x120 fs/kernfs/dir.c:1791
#5: ffff888100e87180 (&root->kernfs_rwsem){++++}-{4:4}, at: kernfs_remove_by_name_ns+0x51/0x120 fs/kernfs/dir.c:1792
#6: ffffffff898e6e60 (rcu_read_lock_sched){....}-{1:2}, at: rcu_lock_acquire include/linux/rcupdate.h:309 [inline]
#6: ffffffff898e6e60 (rcu_read_lock_sched){....}-{1:2}, at: rcu_read_lock_sched include/linux/rcupdate.h:947 [inline]
#6: ffffffff898e6e60 (rcu_read_lock_sched){....}-{1:2}, at: pfn_valid include/linux/mmzone.h:2276 [inline]
#6: ffffffff898e6e60 (rcu_read_lock_sched){....}-{1:2}, at: __virt_addr_valid+0x161/0x430 arch/x86/mm/physaddr.c:54
#7: ffffc900001b8c98 ((&vub300->inactivity_timer)){+.-.}-{0:0}, at: call_timer_fn+0x11d/0x5f0 kernel/time/timer.c:1745
stack backtrace:
CPU: 1 UID: 0 PID: 24 Comm: kworker/1:0 Not tainted syzkaller #0 PREEMPT(lazy)
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/16/2026
Workqueue: usb_hub_wq hub_event
Call Trace:
__dump_stack lib/dump_stack.c:94 [inline]
dump_stack_lvl+0x100/0x190 lib/dump_stack.c:120
lockdep_rcu_suspicious.cold+0x4f/0xb2 kernel/locking/lockdep.c:6972
__might_resched+0x2d9/0x330 kernel/sched/core.c:9226
__cancel_work_sync kernel/workqueue.c:4561 [inline]
cancel_delayed_work_sync+0xb8/0xf0 kernel/workqueue.c:4642
mmc_free_host+0x19/0x40 drivers/mmc/core/host.c:700
vub300_delete drivers/mmc/host/vub300.c:379 [inline]
kref_put include/linux/kref.h:65 [inline]
vub300_inactivity_timer_expired drivers/mmc/host/vub300.c:747 [inline]
vub300_inactivity_timer_expired+0x42f/0x550 drivers/mmc/host/vub300.c:742
call_timer_fn+0x198/0x5f0 kernel/time/timer.c:1748
expire_timers kernel/time/timer.c:1799 [inline]
__run_timers+0x757/0xb00 kernel/time/timer.c:2374
__run_timer_base kernel/time/timer.c:2386 [inline]
__run_timer_base kernel/time/timer.c:2378 [inline]
run_timer_base+0x114/0x190 kernel/time/timer.c:2395
run_timer_softirq+0x1a/0x50 kernel/time/timer.c:2405
handle_softirqs+0x1d9/0x9b0 kernel/softirq.c:645
__do_softirq kernel/softirq.c:679 [inline]
invoke_softirq kernel/softirq.c:519 [inline]
__irq_exit_rcu+0x168/0x210 kernel/softirq.c:758
irq_exit_rcu+0x9/0x30 kernel/softirq.c:775
instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1062 [inline]
sysvec_apic_timer_interrupt+0x8f/0xb0 arch/x86/kernel/apic/apic.c:1062
asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:674
RIP: 0010:valid_section include/linux/mmzone.h:2131 [inline]
RIP: 0010:pfn_valid include/linux/mmzone.h:2277 [inline]
RIP: 0010:__virt_addr_valid+0x1a9/0x430 arch/x86/mm/physaddr.c:54
Code: a5 18 06 5a 85 c0 0f 85 14 01 00 00 4d 85 e4 0f 84 be 00 00 00 48 b8 00 00 00 00 00 fc ff df 4c 89 e2 48 c1 ea 03 80 3c 02 00 <0f> 85 32 02 00 00 49 8b 04 24 a8 02 0f 84 97 00 00 00 bb 01 00 00
RSP: 0000:ffffc9000019f690 EFLAGS: 00000246
RAX: dffffc0000000000 RBX: 0000000000000460 RCX: 0000000000000200
RDX: 1ffff11047fe268c RSI: ffffffff87d2bd00 RDI: ffffffff8946abe8
RBP: 000000011a373fa0 R08: 000000004d65bf61 R09: 000000000000001e
R10: 0000000000000200 R11: 0000000000000001 R12: ffff88823ff13460
R13: 0000000000000000 R14: ffff888100e87068 R15: 0000000080000001
kasan_addr_to_slab+0xd/0x60 mm/kasan/common.c:47
kasan_record_aux_stack+0xe/0xa0 mm/kasan/generic.c:541
__call_rcu_common.constprop.0+0xa5/0x9b0 kernel/rcu/tree.c:3181
kernfs_put.part.0+0x3a6/0xaa0 fs/kernfs/dir.c:618
kernfs_put fs/kernfs/dir.c:1787 [inline]
kernfs_remove_by_name_ns+0xf3/0x120 fs/kernfs/dir.c:1798
kernfs_remove_by_name include/linux/kernfs.h:644 [inline]
sysfs_unmerge_group+0xe7/0x170 fs/sysfs/group.c:408
rpm_sysfs_remove drivers/base/power/sysfs.c:823 [inline]
dpm_sysfs_remove+0x7f/0xb0 drivers/base/power/sysfs.c:832
device_del+0x180/0x9b0 drivers/base/core.c:3940
device_unregister+0x1d/0xe0 drivers/base/core.c:4006
usb_remove_ep_devs+0x42/0x90 drivers/usb/core/endpoint.c:181
remove_intf_ep_devs drivers/usb/core/message.c:1326 [inline]
usb_disable_device+0x319/0x810 drivers/usb/core/message.c:1483
usb_disconnect+0x2e2/0x9a0 drivers/usb/core/hub.c:2355
hub_port_connect drivers/usb/core/hub.c:5425 [inline]
hub_port_connect_change drivers/usb/core/hub.c:5725 [inline]
port_event drivers/usb/core/hub.c:5889 [inline]
hub_event+0x1d46/0x4510 drivers/usb/core/hub.c:5971
process_one_work+0xac7/0x1b10 kernel/workqueue.c:3396
process_scheduled_works kernel/workqueue.c:3479 [inline]
worker_thread+0x5ef/0xe50 kernel/workqueue.c:3560
kthread+0x373/0x450 kernel/kthread.c:436
ret_from_fork+0x69f/0xc90 arch/x86/kernel/process.c:158
ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245
BUG: sleeping function called from invalid context at kernel/workqueue.c:4561
in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 24, name: kworker/1:0
preempt_count: 101, expected: 0
RCU nest depth: 0, expected: 0
locks held by kworker/1:0/24: 8, last CPU#1:
#0: ffff888105eca940 ((wq_completion)usb_hub_wq){+.+.}-{0:0}, at: process_one_work+0x1466/0x1b10 kernel/workqueue.c:3371
#1: ffffc9000019fd18 ((work_completion)(&hub->events)){+.+.}-{0:0}, at: process_one_work+0xa2c/0x1b10 kernel/workqueue.c:3372
#2: ffff88810af061d8 (&dev->mutex){....}-{4:4}, at: device_lock include/linux/device.h:1104 [inline]
#2: ffff88810af061d8 (&dev->mutex){....}-{4:4}, at: hub_event+0x1bb/0x4510 drivers/usb/core/hub.c:5917
#3: ffff888109fb91d8 (&dev->mutex){....}-{4:4}, at: device_lock include/linux/device.h:1104 [inline]
#3: ffff888109fb91d8 (&dev->mutex){....}-{4:4}, at: usb_disconnect+0x10a/0x9a0 drivers/usb/core/hub.c:2346
#4: ffff888100e872a0 (&root->kernfs_supers_rwsem){++++}-{4:4}, at: kernfs_remove_by_name_ns+0x49/0x120 fs/kernfs/dir.c:1791
#5: ffff888100e87180 (&root->kernfs_rwsem){++++}-{4:4}, at: kernfs_remove_by_name_ns+0x51/0x120 fs/kernfs/dir.c:1792
#6: ffffffff898e6e60 (rcu_read_lock_sched){....}-{1:2}, at: rcu_lock_acquire include/linux/rcupdate.h:309 [inline]
#6: ffffffff898e6e60 (rcu_read_lock_sched){....}-{1:2}, at: rcu_read_lock_sched include/linux/rcupdate.h:947 [inline]
#6: ffffffff898e6e60 (rcu_read_lock_sched){....}-{1:2}, at: pfn_valid include/linux/mmzone.h:2276 [inline]
#6: ffffffff898e6e60 (rcu_read_lock_sched){....}-{1:2}, at: __virt_addr_valid+0x161/0x430 arch/x86/mm/physaddr.c:54
#7: ffffc900001b8c98 ((&vub300->inactivity_timer)){+.-.}-{0:0}, at: call_timer_fn+0x11d/0x5f0 kernel/time/timer.c:1745
Preemption disabled at:
[] rcu_read_lock_sched include/linux/rcupdate.h:944 [inline]
[] pfn_valid include/linux/mmzone.h:2276 [inline]
[] __virt_addr_valid+0x15a/0x430 arch/x86/mm/physaddr.c:54
CPU: 1 UID: 0 PID: 24 Comm: kworker/1:0 Not tainted syzkaller #0 PREEMPT(lazy)
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/16/2026
Workqueue: usb_hub_wq hub_event
Call Trace:
__dump_stack lib/dump_stack.c:94 [inline]
dump_stack_lvl+0x100/0x190 lib/dump_stack.c:120
__might_resched.cold+0x1dc/0x222 kernel/sched/core.c:9264
__cancel_work_sync kernel/workqueue.c:4561 [inline]
cancel_delayed_work_sync+0xb8/0xf0 kernel/workqueue.c:4642
mmc_free_host+0x19/0x40 drivers/mmc/core/host.c:700
vub300_delete drivers/mmc/host/vub300.c:379 [inline]
kref_put include/linux/kref.h:65 [inline]
vub300_inactivity_timer_expired drivers/mmc/host/vub300.c:747 [inline]
vub300_inactivity_timer_expired+0x42f/0x550 drivers/mmc/host/vub300.c:742
call_timer_fn+0x198/0x5f0 kernel/time/timer.c:1748
expire_timers kernel/time/timer.c:1799 [inline]
__run_timers+0x757/0xb00 kernel/time/timer.c:2374
__run_timer_base kernel/time/timer.c:2386 [inline]
__run_timer_base kernel/time/timer.c:2378 [inline]
run_timer_base+0x114/0x190 kernel/time/timer.c:2395
run_timer_softirq+0x1a/0x50 kernel/time/timer.c:2405
handle_softirqs+0x1d9/0x9b0 kernel/softirq.c:645
__do_softirq kernel/softirq.c:679 [inline]
invoke_softirq kernel/softirq.c:519 [inline]
__irq_exit_rcu+0x168/0x210 kernel/softirq.c:758
irq_exit_rcu+0x9/0x30 kernel/softirq.c:775
instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1062 [inline]
sysvec_apic_timer_interrupt+0x8f/0xb0 arch/x86/kernel/apic/apic.c:1062
asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:674
RIP: 0010:valid_section include/linux/mmzone.h:2131 [inline]
RIP: 0010:pfn_valid include/linux/mmzone.h:2277 [inline]
RIP: 0010:__virt_addr_valid+0x1a9/0x430 arch/x86/mm/physaddr.c:54
Code: a5 18 06 5a 85 c0 0f 85 14 01 00 00 4d 85 e4 0f 84 be 00 00 00 48 b8 00 00 00 00 00 fc ff df 4c 89 e2 48 c1 ea 03 80 3c 02 00 <0f> 85 32 02 00 00 49 8b 04 24 a8 02 0f 84 97 00 00 00 bb 01 00 00
RSP: 0000:ffffc9000019f690 EFLAGS: 00000246
RAX: dffffc0000000000 RBX: 0000000000000460 RCX: 0000000000000200
RDX: 1ffff11047fe268c RSI: ffffffff87d2bd00 RDI: ffffffff8946abe8
RBP: 000000011a373fa0 R08: 000000004d65bf61 R09: 000000000000001e
R10: 0000000000000200 R11: 0000000000000001 R12: ffff88823ff13460
R13: 0000000000000000 R14: ffff888100e87068 R15: 0000000080000001
kasan_addr_to_slab+0xd/0x60 mm/kasan/common.c:47
kasan_record_aux_stack+0xe/0xa0 mm/kasan/generic.c:541
__call_rcu_common.constprop.0+0xa5/0x9b0 kernel/rcu/tree.c:3181
kernfs_put.part.0+0x3a6/0xaa0 fs/kernfs/dir.c:618
kernfs_put fs/kernfs/dir.c:1787 [inline]
kernfs_remove_by_name_ns+0xf3/0x120 fs/kernfs/dir.c:1798
kernfs_remove_by_name include/linux/kernfs.h:644 [inline]
sysfs_unmerge_group+0xe7/0x170 fs/sysfs/group.c:408
rpm_sysfs_remove drivers/base/power/sysfs.c:823 [inline]
dpm_sysfs_remove+0x7f/0xb0 drivers/base/power/sysfs.c:832
device_del+0x180/0x9b0 drivers/base/core.c:3940
device_unregister+0x1d/0xe0 drivers/base/core.c:4006
usb_remove_ep_devs+0x42/0x90 drivers/usb/core/endpoint.c:181
remove_intf_ep_devs drivers/usb/core/message.c:1326 [inline]
usb_disable_device+0x319/0x810 drivers/usb/core/message.c:1483
usb_disconnect+0x2e2/0x9a0 drivers/usb/core/hub.c:2355
hub_port_connect drivers/usb/core/hub.c:5425 [inline]
hub_port_connect_change drivers/usb/core/hub.c:5725 [inline]
port_event drivers/usb/core/hub.c:5889 [inline]
hub_event+0x1d46/0x4510 drivers/usb/core/hub.c:5971
process_one_work+0xac7/0x1b10 kernel/workqueue.c:3396
process_scheduled_works kernel/workqueue.c:3479 [inline]
worker_thread+0x5ef/0xe50 kernel/workqueue.c:3560
kthread+0x373/0x450 kernel/kthread.c:436
ret_from_fork+0x69f/0xc90 arch/x86/kernel/process.c:158
ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245
=============================
WARNING: suspicious RCU usage
syzkaller #0 Tainted: G W
-----------------------------
kernel/rcu/srcutree.c:1464 Illegal synchronize_srcu() in same-type SRCU (or in RCU) read-side critical section!
other info that might help us debug this:
rcu_scheduler_active = 2, debug_locks = 1
locks held by kworker/1:0/24: 8, last CPU#1:
#0: ffff888105eca940 ((wq_completion)usb_hub_wq){+.+.}-{0:0}, at: process_one_work+0x1466/0x1b10 kernel/workqueue.c:3371
#1: ffffc9000019fd18 ((work_completion)(&hub->events)){+.+.}-{0:0}, at: process_one_work+0xa2c/0x1b10 kernel/workqueue.c:3372
#2: ffff88810af061d8 (&dev->mutex){....}-{4:4}, at: device_lock include/linux/device.h:1104 [inline]
#2: ffff88810af061d8 (&dev->mutex){....}-{4:4}, at: hub_event+0x1bb/0x4510 drivers/usb/core/hub.c:5917
#3: ffff888109fb91d8 (&dev->mutex){....}-{4:4}, at: device_lock include/linux/device.h:1104 [inline]
#3: ffff888109fb91d8 (&dev->mutex){....}-{4:4}, at: usb_disconnect+0x10a/0x9a0 drivers/usb/core/hub.c:2346
#4: ffff888100e872a0 (&root->kernfs_supers_rwsem){++++}-{4:4}, at: kernfs_remove_by_name_ns+0x49/0x120 fs/kernfs/dir.c:1791
#5: ffff888100e87180 (&root->kernfs_rwsem){++++}-{4:4}, at: kernfs_remove_by_name_ns+0x51/0x120 fs/kernfs/dir.c:1792
#6: ffffffff898e6e60 (rcu_read_lock_sched){....}-{1:2}, at: rcu_lock_acquire include/linux/rcupdate.h:309 [inline]
#6: ffffffff898e6e60 (rcu_read_lock_sched){....}-{1:2}, at: rcu_read_lock_sched include/linux/rcupdate.h:947 [inline]
#6: ffffffff898e6e60 (rcu_read_lock_sched){....}-{1:2}, at: pfn_valid include/linux/mmzone.h:2276 [inline]
#6: ffffffff898e6e60 (rcu_read_lock_sched){....}-{1:2}, at: __virt_addr_valid+0x161/0x430 arch/x86/mm/physaddr.c:54
#7: ffffc900001b8c98 ((&vub300->inactivity_timer)){+.-.}-{0:0}, at: call_timer_fn+0x11d/0x5f0 kernel/time/timer.c:1745
stack backtrace:
CPU: 1 UID: 0 PID: 24 Comm: kworker/1:0 Tainted: G W syzkaller #0 PREEMPT(lazy)
Tainted: [W]=WARN
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/16/2026
Workqueue: usb_hub_wq hub_event
Call Trace:
__dump_stack lib/dump_stack.c:94 [inline]
dump_stack_lvl+0x100/0x190 lib/dump_stack.c:120
lockdep_rcu_suspicious.cold+0x4f/0xb2 kernel/locking/lockdep.c:6972
__synchronize_srcu+0x29d/0x300 kernel/rcu/srcutree.c:1464
wakeup_source_remove drivers/base/power/wakeup.c:201 [inline]
wakeup_source_unregister.part.0+0x12c/0x540 drivers/base/power/wakeup.c:237
wakeup_source_unregister+0x1f/0x30 drivers/base/power/wakeup.c:236
mmc_host_classdev_release+0x42/0x120 drivers/mmc/core/host.c:69
device_release+0xd2/0x270 drivers/base/core.c:2640
kobject_cleanup lib/kobject.c:689 [inline]
kobject_release lib/kobject.c:720 [inline]
kref_put include/linux/kref.h:65 [inline]
kobject_put+0x1f7/0x640 lib/kobject.c:737
put_device+0x1f/0x30 drivers/base/core.c:3884
vub300_delete drivers/mmc/host/vub300.c:379 [inline]
kref_put include/linux/kref.h:65 [inline]
vub300_inactivity_timer_expired drivers/mmc/host/vub300.c:747 [inline]
vub300_inactivity_timer_expired+0x42f/0x550 drivers/mmc/host/vub300.c:742
call_timer_fn+0x198/0x5f0 kernel/time/timer.c:1748
expire_timers kernel/time/timer.c:1799 [inline]
__run_timers+0x757/0xb00 kernel/time/timer.c:2374
__run_timer_base kernel/time/timer.c:2386 [inline]
__run_timer_base kernel/time/timer.c:2378 [inline]
run_timer_base+0x114/0x190 kernel/time/timer.c:2395
run_timer_softirq+0x1a/0x50 kernel/time/timer.c:2405
handle_softirqs+0x1d9/0x9b0 kernel/softirq.c:645
__do_softirq kernel/softirq.c:679 [inline]
invoke_softirq kernel/softirq.c:519 [inline]
__irq_exit_rcu+0x168/0x210 kernel/softirq.c:758
irq_exit_rcu+0x9/0x30 kernel/softirq.c:775
instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1062 [inline]
sysvec_apic_timer_interrupt+0x8f/0xb0 arch/x86/kernel/apic/apic.c:1062
asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:674
RIP: 0010:valid_section include/linux/mmzone.h:2131 [inline]
RIP: 0010:pfn_valid include/linux/mmzone.h:2277 [inline]
RIP: 0010:__virt_addr_valid+0x1a9/0x430 arch/x86/mm/physaddr.c:54
Code: a5 18 06 5a 85 c0 0f 85 14 01 00 00 4d 85 e4 0f 84 be 00 00 00 48 b8 00 00 00 00 00 fc ff df 4c 89 e2 48 c1 ea 03 80 3c 02 00 <0f> 85 32 02 00 00 49 8b 04 24 a8 02 0f 84 97 00 00 00 bb 01 00 00
RSP: 0000:ffffc9000019f690 EFLAGS: 00000246
RAX: dffffc0000000000 RBX: 0000000000000460 RCX: 0000000000000200
RDX: 1ffff11047fe268c RSI: ffffffff87d2bd00 RDI: ffffffff8946abe8
RBP: 000000011a373fa0 R08: 000000004d65bf61 R09: 000000000000001e
R10: 0000000000000200 R11: 0000000000000001 R12: ffff88823ff13460
R13: 0000000000000000 R14: ffff888100e87068 R15: 0000000080000001
kasan_addr_to_slab+0xd/0x60 mm/kasan/common.c:47
kasan_record_aux_stack+0xe/0xa0 mm/kasan/generic.c:541
__call_rcu_common.constprop.0+0xa5/0x9b0 kernel/rcu/tree.c:3181
kernfs_put.part.0+0x3a6/0xaa0 fs/kernfs/dir.c:618
kernfs_put fs/kernfs/dir.c:1787 [inline]
kernfs_remove_by_name_ns+0xf3/0x120 fs/kernfs/dir.c:1798
kernfs_remove_by_name include/linux/kernfs.h:644 [inline]
sysfs_unmerge_group+0xe7/0x170 fs/sysfs/group.c:408
rpm_sysfs_remove drivers/base/power/sysfs.c:823 [inline]
dpm_sysfs_remove+0x7f/0xb0 drivers/base/power/sysfs.c:832
device_del+0x180/0x9b0 drivers/base/core.c:3940
device_unregister+0x1d/0xe0 drivers/base/core.c:4006
usb_remove_ep_devs+0x42/0x90 drivers/usb/core/endpoint.c:181
remove_intf_ep_devs drivers/usb/core/message.c:1326 [inline]
usb_disable_device+0x319/0x810 drivers/usb/core/message.c:1483
usb_disconnect+0x2e2/0x9a0 drivers/usb/core/hub.c:2355
hub_port_connect drivers/usb/core/hub.c:5425 [inline]
hub_port_connect_change drivers/usb/core/hub.c:5725 [inline]
port_event drivers/usb/core/hub.c:5889 [inline]
hub_event+0x1d46/0x4510 drivers/usb/core/hub.c:5971
process_one_work+0xac7/0x1b10 kernel/workqueue.c:3396
process_scheduled_works kernel/workqueue.c:3479 [inline]
worker_thread+0x5ef/0xe50 kernel/workqueue.c:3560
kthread+0x373/0x450 kernel/kthread.c:436
ret_from_fork+0x69f/0xc90 arch/x86/kernel/process.c:158
ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245
BUG: sleeping function called from invalid context at kernel/rcu/srcutree.c:1472
in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 24, name: kworker/1:0
preempt_count: 101, expected: 0
RCU nest depth: 0, expected: 0
locks held by kworker/1:0/24: 8, last CPU#1:
#0: ffff888105eca940 ((wq_completion)usb_hub_wq){+.+.}-{0:0}, at: process_one_work+0x1466/0x1b10 kernel/workqueue.c:3371
#1: ffffc9000019fd18 ((work_completion)(&hub->events)){+.+.}-{0:0}, at: process_one_work+0xa2c/0x1b10 kernel/workqueue.c:3372
#2: ffff88810af061d8 (&dev->mutex){....}-{4:4}, at: device_lock include/linux/device.h:1104 [inline]
#2: ffff88810af061d8 (&dev->mutex){....}-{4:4}, at: hub_event+0x1bb/0x4510 drivers/usb/core/hub.c:5917
#3: ffff888109fb91d8 (&dev->mutex){....}-{4:4}, at: device_lock include/linux/device.h:1104 [inline]
#3: ffff888109fb91d8 (&dev->mutex){....}-{4:4}, at: usb_disconnect+0x10a/0x9a0 drivers/usb/core/hub.c:2346
#4: ffff888100e872a0 (&root->kernfs_supers_rwsem){++++}-{4:4}, at: kernfs_remove_by_name_ns+0x49/0x120 fs/kernfs/dir.c:1791
#5: ffff888100e87180 (&root->kernfs_rwsem){++++}-{4:4}, at: kernfs_remove_by_name_ns+0x51/0x120 fs/kernfs/dir.c:1792
#6: ffffffff898e6e60 (rcu_read_lock_sched){....}-{1:2}, at: rcu_lock_acquire include/linux/rcupdate.h:309 [inline]
#6: ffffffff898e6e60 (rcu_read_lock_sched){....}-{1:2}, at: rcu_read_lock_sched include/linux/rcupdate.h:947 [inline]
#6: ffffffff898e6e60 (rcu_read_lock_sched){....}-{1:2}, at: pfn_valid include/linux/mmzone.h:2276 [inline]
#6: ffffffff898e6e60 (rcu_read_lock_sched){....}-{1:2}, at: __virt_addr_valid+0x161/0x430 arch/x86/mm/physaddr.c:54
#7: ffffc900001b8c98 ((&vub300->inactivity_timer)){+.-.}-{0:0}, at: call_timer_fn+0x11d/0x5f0 kernel/time/timer.c:1745
Preemption disabled at:
[] rcu_read_lock_sched include/linux/rcupdate.h:944 [inline]
[] pfn_valid include/linux/mmzone.h:2276 [inline]
[] __virt_addr_valid+0x15a/0x430 arch/x86/mm/physaddr.c:54
CPU: 1 UID: 0 PID: 24 Comm: kworker/1:0 Tainted: G W syzkaller #0 PREEMPT(lazy)
Tainted: [W]=WARN
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/16/2026
Workqueue: usb_hub_wq hub_event
Call Trace:
__dump_stack lib/dump_stack.c:94 [inline]
dump_stack_lvl+0x100/0x190 lib/dump_stack.c:120
__might_resched.cold+0x1dc/0x222 kernel/sched/core.c:9264
__synchronize_srcu+0x13c/0x300 kernel/rcu/srcutree.c:1472
wakeup_source_remove drivers/base/power/wakeup.c:201 [inline]
wakeup_source_unregister.part.0+0x12c/0x540 drivers/base/power/wakeup.c:237
wakeup_source_unregister+0x1f/0x30 drivers/base/power/wakeup.c:236
mmc_host_classdev_release+0x42/0x120 drivers/mmc/core/host.c:69
device_release+0xd2/0x270 drivers/base/core.c:2640
kobject_cleanup lib/kobject.c:689 [inline]
kobject_release lib/kobject.c:720 [inline]
kref_put include/linux/kref.h:65 [inline]
kobject_put+0x1f7/0x640 lib/kobject.c:737
put_device+0x1f/0x30 drivers/base/core.c:3884
vub300_delete drivers/mmc/host/vub300.c:379 [inline]
kref_put include/linux/kref.h:65 [inline]
vub300_inactivity_timer_expired drivers/mmc/host/vub300.c:747 [inline]
vub300_inactivity_timer_expired+0x42f/0x550 drivers/mmc/host/vub300.c:742
call_timer_fn+0x198/0x5f0 kernel/time/timer.c:1748
expire_timers kernel/time/timer.c:1799 [inline]
__run_timers+0x757/0xb00 kernel/time/timer.c:2374
__run_timer_base kernel/time/timer.c:2386 [inline]
__run_timer_base kernel/time/timer.c:2378 [inline]
run_timer_base+0x114/0x190 kernel/time/timer.c:2395
run_timer_softirq+0x1a/0x50 kernel/time/timer.c:2405
handle_softirqs+0x1d9/0x9b0 kernel/softirq.c:645
__do_softirq kernel/softirq.c:679 [inline]
invoke_softirq kernel/softirq.c:519 [inline]
__irq_exit_rcu+0x168/0x210 kernel/softirq.c:758
irq_exit_rcu+0x9/0x30 kernel/softirq.c:775
instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1062 [inline]
sysvec_apic_timer_interrupt+0x8f/0xb0 arch/x86/kernel/apic/apic.c:1062
asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:674
RIP: 0010:valid_section include/linux/mmzone.h:2131 [inline]
RIP: 0010:pfn_valid include/linux/mmzone.h:2277 [inline]
RIP: 0010:__virt_addr_valid+0x1a9/0x430 arch/x86/mm/physaddr.c:54
Code: a5 18 06 5a 85 c0 0f 85 14 01 00 00 4d 85 e4 0f 84 be 00 00 00 48 b8 00 00 00 00 00 fc ff df 4c 89 e2 48 c1 ea 03 80 3c 02 00 <0f> 85 32 02 00 00 49 8b 04 24 a8 02 0f 84 97 00 00 00 bb 01 00 00
RSP: 0000:ffffc9000019f690 EFLAGS: 00000246
RAX: dffffc0000000000 RBX: 0000000000000460 RCX: 0000000000000200
RDX: 1ffff11047fe268c RSI: ffffffff87d2bd00 RDI: ffffffff8946abe8
RBP: 000000011a373fa0 R08: 000000004d65bf61 R09: 000000000000001e
R10: 0000000000000200 R11: 0000000000000001 R12: ffff88823ff13460
R13: 0000000000000000 R14: ffff888100e87068 R15: 0000000080000001
kasan_addr_to_slab+0xd/0x60 mm/kasan/common.c:47
kasan_record_aux_stack+0xe/0xa0 mm/kasan/generic.c:541
__call_rcu_common.constprop.0+0xa5/0x9b0 kernel/rcu/tree.c:3181
kernfs_put.part.0+0x3a6/0xaa0 fs/kernfs/dir.c:618
kernfs_put fs/kernfs/dir.c:1787 [inline]
kernfs_remove_by_name_ns+0xf3/0x120 fs/kernfs/dir.c:1798
kernfs_remove_by_name include/linux/kernfs.h:644 [inline]
sysfs_unmerge_group+0xe7/0x170 fs/sysfs/group.c:408
rpm_sysfs_remove drivers/base/power/sysfs.c:823 [inline]
dpm_sysfs_remove+0x7f/0xb0 drivers/base/power/sysfs.c:832
device_del+0x180/0x9b0 drivers/base/core.c:3940
device_unregister+0x1d/0xe0 drivers/base/core.c:4006
usb_remove_ep_devs+0x42/0x90 drivers/usb/core/endpoint.c:181
remove_intf_ep_devs drivers/usb/core/message.c:1326 [inline]
usb_disable_device+0x319/0x810 drivers/usb/core/message.c:1483
usb_disconnect+0x2e2/0x9a0 drivers/usb/core/hub.c:2355
hub_port_connect drivers/usb/core/hub.c:5425 [inline]
hub_port_connect_change drivers/usb/core/hub.c:5725 [inline]
port_event drivers/usb/core/hub.c:5889 [inline]
hub_event+0x1d46/0x4510 drivers/usb/core/hub.c:5971
process_one_work+0xac7/0x1b10 kernel/workqueue.c:3396
process_scheduled_works kernel/workqueue.c:3479 [inline]
worker_thread+0x5ef/0xe50 kernel/workqueue.c:3560
kthread+0x373/0x450 kernel/kthread.c:436
ret_from_fork+0x69f/0xc90 arch/x86/kernel/process.c:158
ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245
ODEBUG: object ffffc900001b8a60 is NOT on stack ffffc90000198000, but annotated.
------------[ cut here ]------------
1
WARNING: lib/debugobjects.c:672 at debug_object_is_on_stack lib/debugobjects.c:672 [inline], CPU#1: kworker/1:0/24
WARNING: lib/debugobjects.c:672 at lookup_object_or_alloc.part.0.cold+0x19/0x40 lib/debugobjects.c:705, CPU#1: kworker/1:0/24
Modules linked in:
CPU: 1 UID: 0 PID: 24 Comm: kworker/1:0 Tainted: G W syzkaller #0 PREEMPT(lazy)
Tainted: [W]=WARN
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/16/2026
Workqueue: usb_hub_wq hub_event
RIP: 0010:debug_object_is_on_stack lib/debugobjects.c:672 [inline]
RIP: 0010:lookup_object_or_alloc.part.0.cold+0x19/0x40 lib/debugobjects.c:705
Code: c4 60 5b 5d 41 5c 41 5d 41 5e 41 5f c3 cc cc cc cc 83 c5 01 89 2d 60 6b 0f 13 4c 89 e6 48 c7 c7 c0 c8 d2 87 e8 21 c2 fa ff 90 <0f> 0b 90 e9 b2 d0 bb 01 83 c5 01 89 2d 3f 6b 0f 13 49 39 c4 73 da
RSP: 0000:ffffc900001b88f0 EFLAGS: 00010082
RAX: 0000000000000050 RBX: ffff88811a6338f8 RCX: 0000000000000000
RDX: 0000000000000050 RSI: ffffffff8193a6e9 RDI: fffff5200003710f
RBP: 0000000000000001 R08: 0000000000000007 R09: 0000000000000000
R10: 0000000000000102 R11: 0000000000000001 R12: ffffc900001b8a60
R13: ffff8881026fdac0 R14: 0000000000000001 R15: 0000000000000000
FS: 0000000000000000(0000) GS:ffff8882684d7000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007fd6a3ce1068 CR3: 0000000112fd2000 CR4: 00000000003506f0
Call Trace:
lookup_object_or_alloc lib/debugobjects.c:682 [inline]
__debug_object_init+0x2a9/0x3d0 lib/debugobjects.c:798
__synchronize_srcu+0x1c3/0x300 kernel/rcu/srcutree.c:1475
wakeup_source_remove drivers/base/power/wakeup.c:201 [inline]
wakeup_source_unregister.part.0+0x12c/0x540 drivers/base/power/wakeup.c:237
wakeup_source_unregister+0x1f/0x30 drivers/base/power/wakeup.c:236
mmc_host_classdev_release+0x42/0x120 drivers/mmc/core/host.c:69
device_release+0xd2/0x270 drivers/base/core.c:2640
kobject_cleanup lib/kobject.c:689 [inline]
kobject_release lib/kobject.c:720 [inline]
kref_put include/linux/kref.h:65 [inline]
kobject_put+0x1f7/0x640 lib/kobject.c:737
put_device+0x1f/0x30 drivers/base/core.c:3884
vub300_delete drivers/mmc/host/vub300.c:379 [inline]
kref_put include/linux/kref.h:65 [inline]
vub300_inactivity_timer_expired drivers/mmc/host/vub300.c:747 [inline]
vub300_inactivity_timer_expired+0x42f/0x550 drivers/mmc/host/vub300.c:742
call_timer_fn+0x198/0x5f0 kernel/time/timer.c:1748
expire_timers kernel/time/timer.c:1799 [inline]
__run_timers+0x757/0xb00 kernel/time/timer.c:2374
__run_timer_base kernel/time/timer.c:2386 [inline]
__run_timer_base kernel/time/timer.c:2378 [inline]
run_timer_base+0x114/0x190 kernel/time/timer.c:2395
run_timer_softirq+0x1a/0x50 kernel/time/timer.c:2405
handle_softirqs+0x1d9/0x9b0 kernel/softirq.c:645
__do_softirq kernel/softirq.c:679 [inline]
invoke_softirq kernel/softirq.c:519 [inline]
__irq_exit_rcu+0x168/0x210 kernel/softirq.c:758
irq_exit_rcu+0x9/0x30 kernel/softirq.c:775
instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1062 [inline]
sysvec_apic_timer_interrupt+0x8f/0xb0 arch/x86/kernel/apic/apic.c:1062
asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:674
RIP: 0010:valid_section include/linux/mmzone.h:2131 [inline]
RIP: 0010:pfn_valid include/linux/mmzone.h:2277 [inline]
RIP: 0010:__virt_addr_valid+0x1a9/0x430 arch/x86/mm/physaddr.c:54
Code: a5 18 06 5a 85 c0 0f 85 14 01 00 00 4d 85 e4 0f 84 be 00 00 00 48 b8 00 00 00 00 00 fc ff df 4c 89 e2 48 c1 ea 03 80 3c 02 00 <0f> 85 32 02 00 00 49 8b 04 24 a8 02 0f 84 97 00 00 00 bb 01 00 00
RSP: 0000:ffffc9000019f690 EFLAGS: 00000246
RAX: dffffc0000000000 RBX: 0000000000000460 RCX: 0000000000000200
RDX: 1ffff11047fe268c RSI: ffffffff87d2bd00 RDI: ffffffff8946abe8
RBP: 000000011a373fa0 R08: 000000004d65bf61 R09: 000000000000001e
R10: 0000000000000200 R11: 0000000000000001 R12: ffff88823ff13460
R13: 0000000000000000 R14: ffff888100e87068 R15: 0000000080000001
kasan_addr_to_slab+0xd/0x60 mm/kasan/common.c:47
kasan_record_aux_stack+0xe/0xa0 mm/kasan/generic.c:541
__call_rcu_common.constprop.0+0xa5/0x9b0 kernel/rcu/tree.c:3181
kernfs_put.part.0+0x3a6/0xaa0 fs/kernfs/dir.c:618
kernfs_put fs/kernfs/dir.c:1787 [inline]
kernfs_remove_by_name_ns+0xf3/0x120 fs/kernfs/dir.c:1798
kernfs_remove_by_name include/linux/kernfs.h:644 [inline]
sysfs_unmerge_group+0xe7/0x170 fs/sysfs/group.c:408
rpm_sysfs_remove drivers/base/power/sysfs.c:823 [inline]
dpm_sysfs_remove+0x7f/0xb0 drivers/base/power/sysfs.c:832
device_del+0x180/0x9b0 drivers/base/core.c:3940
device_unregister+0x1d/0xe0 drivers/base/core.c:4006
usb_remove_ep_devs+0x42/0x90 drivers/usb/core/endpoint.c:181
remove_intf_ep_devs drivers/usb/core/message.c:1326 [inline]
usb_disable_device+0x319/0x810 drivers/usb/core/message.c:1483
usb_disconnect+0x2e2/0x9a0 drivers/usb/core/hub.c:2355
hub_port_connect drivers/usb/core/hub.c:5425 [inline]
hub_port_connect_change drivers/usb/core/hub.c:5725 [inline]
port_event drivers/usb/core/hub.c:5889 [inline]
hub_event+0x1d46/0x4510 drivers/usb/core/hub.c:5971
process_one_work+0xac7/0x1b10 kernel/workqueue.c:3396
process_scheduled_works kernel/workqueue.c:3479 [inline]
worker_thread+0x5ef/0xe50 kernel/workqueue.c:3560
kthread+0x373/0x450 kernel/kthread.c:436
ret_from_fork+0x69f/0xc90 arch/x86/kernel/process.c:158
ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245
----------------
Code disassembly (best guess):
0: a5 movsl %ds:(%rsi),%es:(%rdi)
1: 18 06 sbb %al,(%rsi)
3: 5a pop %rdx
4: 85 c0 test %eax,%eax
6: 0f 85 14 01 00 00 jne 0x120
c: 4d 85 e4 test %r12,%r12
f: 0f 84 be 00 00 00 je 0xd3
15: 48 b8 00 00 00 00 00 movabs $0xdffffc0000000000,%rax
1c: fc ff df
1f: 4c 89 e2 mov %r12,%rdx
22: 48 c1 ea 03 shr $0x3,%rdx
26: 80 3c 02 00 cmpb $0x0,(%rdx,%rax,1)
* 2a: 0f 85 32 02 00 00 jne 0x262 <-- trapping instruction
30: 49 8b 04 24 mov (%r12),%rax
34: a8 02 test $0x2,%al
36: 0f 84 97 00 00 00 je 0xd3
3c: bb .byte 0xbb
3d: 01 00 add %eax,(%rax)