BUG: workqueue leaked atomic, lock or RCU: syz.1.3062[18407]
preempt=0x00000100 lock=2->0 RCU=1->1 workfn=usb_giveback_urb_bh
INFO: lockdep is turned off.
CPU: 0 UID: 0 PID: 18407 Comm: syz.1.3062 Not tainted 6.15.0-syzkaller-12058-g64980441d269 #0 PREEMPT(full)
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/07/2025
Call Trace:
<IRQ>
dump_stack_lvl+0x189/0x250 lib/dump_stack.c:120
process_one_work kernel/workqueue.c:3259 [inline]
process_scheduled_works+0x11cb/0x17b0 kernel/workqueue.c:3321
bh_worker+0x2b1/0x600 kernel/workqueue.c:3581
tasklet_hi_action+0xf/0x70 kernel/softirq.c:860
handle_softirqs+0x286/0x870 kernel/softirq.c:579
__do_softirq kernel/softirq.c:613 [inline]
invoke_softirq kernel/softirq.c:453 [inline]
__irq_exit_rcu+0xca/0x1f0 kernel/softirq.c:680
irq_exit_rcu+0x9/0x30 kernel/softirq.c:696
instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1050 [inline]
sysvec_apic_timer_interrupt+0xa6/0xc0 arch/x86/kernel/apic/apic.c:1050
</IRQ>
<TASK>
asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:702
RIP: 0010:lock_release+0x15/0x3e0 kernel/locking/lockdep.c:5879
Code: 00 00 00 00 00 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 f3 0f 1e fa 55 41 57 41 56 41 55 41 54 53 48 83 ec 30 49 89 f5 <49> 89 fe 65 48 8b 05 60 6a fe 10 48 89 44 24 28 0f 1f 44 00 00 65
RSP: 0018:ffffc90004dff650 EFLAGS: 00000286
RAX: 0000000000000001 RBX: ffffffff90d6f301 RCX: 8d33cea640b21c00
RDX: ffffc90004dff701 RSI: ffffffff81729de5 RDI: ffffffff8e13f060
RBP: dffffc0000000000 R08: ffffc90004dfff48 R09: 0000000000000000
R10: ffffc90004dff7d8 R11: fffff520009bfefd R12: ffffc90004dfff58
R13: ffffffff81729de5 R14: ffffc90004dff788 R15: ffffffff81729de5
rcu_lock_release include/linux/rcupdate.h:341 [inline]
rcu_read_unlock include/linux/rcupdate.h:871 [inline]
class_rcu_destructor include/linux/rcupdate.h:1155 [inline]
unwind_next_frame+0x19a9/0x2390 arch/x86/kernel/unwind_orc.c:680
arch_stack_walk+0x11c/0x150 arch/x86/kernel/stacktrace.c:25
stack_trace_save+0x9c/0xe0 kernel/stacktrace.c:122
kasan_save_stack mm/kasan/common.c:47 [inline]
kasan_save_track+0x3e/0x80 mm/kasan/common.c:68
poison_kmalloc_redzone mm/kasan/common.c:377 [inline]
__kasan_kmalloc+0x93/0xb0 mm/kasan/common.c:394
kasan_kmalloc include/linux/kasan.h:260 [inline]
__do_kmalloc_node mm/slub.c:4328 [inline]
__kmalloc_noprof+0x27a/0x4f0 mm/slub.c:4340
kmalloc_noprof include/linux/slab.h:909 [inline]
kzalloc_noprof include/linux/slab.h:1039 [inline]
kobject_get_path+0xc5/0x2d0 lib/kobject.c:161
kobject_uevent_env+0x292/0x8c0 lib/kobject_uevent.c:545
device_remove drivers/base/dd.c:567 [inline]
__device_release_driver drivers/base/dd.c:1272 [inline]
device_release_driver_internal+0x46c/0x7c0 drivers/base/dd.c:1295
driver_detach+0x1f3/0x2d0 drivers/base/dd.c:1358
bus_remove_driver+0x226/0x2f0 drivers/base/bus.c:747
usb_gadget_unregister_driver+0x4e/0x70 drivers/usb/gadget/udc/core.c:1732
raw_release+0xd7/0x260 drivers/usb/gadget/legacy/raw_gadget.c:462
__fput+0x449/0xa70 fs/file_table.c:465
task_work_run+0x1d1/0x260 kernel/task_work.c:227
resume_user_mode_work include/linux/resume_user_mode.h:50 [inline]
exit_to_user_mode_loop+0xec/0x110 kernel/entry/common.c:114
exit_to_user_mode_prepare include/linux/entry-common.h:330 [inline]
syscall_exit_to_user_mode_work include/linux/entry-common.h:414 [inline]
syscall_exit_to_user_mode include/linux/entry-common.h:449 [inline]
do_syscall_64+0x2bd/0x3b0 arch/x86/entry/syscall_64.c:100
entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7f34f838e929
Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 a8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007f34f86dfb88 EFLAGS: 00000246 ORIG_RAX: 00000000000001b4
RAX: 0000000000000000 RBX: 00007f34f85b7ba0 RCX: 00007f34f838e929
RDX: 0000000000000000 RSI: 000000000000001e RDI: 0000000000000003
RBP: 00007f34f85b7ba0 R08: 0000000000000000 R09: 00000002f86dfe7f
R10: 000000000003fdcc R11: 0000000000000246 R12: 00000000000e18c8
R13: 00007f34f85b6080 R14: ffffffffffffffff R15: 00007f34f86dfca0
</TASK>
----------------
Code disassembly (best guess):
0: 00 00 add %al,(%rax)
2: 00 00 add %al,(%rax)
4: 00 90 90 90 90 90 add %dl,-0x6f6f6f70(%rax)
a: 90 nop
b: 90 nop
c: 90 nop
d: 90 nop
e: 90 nop
f: 90 nop
10: 90 nop
11: 90 nop
12: 90 nop
13: 90 nop
14: 90 nop
15: f3 0f 1e fa endbr64
19: 55 push %rbp
1a: 41 57 push %r15
1c: 41 56 push %r14
1e: 41 55 push %r13
20: 41 54 push %r12
22: 53 push %rbx
23: 48 83 ec 30 sub $0x30,%rsp
27: 49 89 f5 mov %rsi,%r13
* 2a: 49 89 fe mov %rdi,%r14 <-- trapping instruction
2d: 65 48 8b 05 60 6a fe mov %gs:0x10fe6a60(%rip),%rax # 0x10fe6a95
34: 10
35: 48 89 44 24 28 mov %rax,0x28(%rsp)
3a: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1)
3f: 65 gs