Kernel bug: WARNING in enable_work
Subsystem: usb, pm
Status: open

Crash report:
usb 1-1: USB disconnect, device number 80
------------[ cut here ]------------
workqueue: work disable count underflowed
WARNING: kernel/workqueue.c:4359 at work_offqd_enable kernel/workqueue.c:4359 [inline], CPU#1: kworker/1:0/24
WARNING: kernel/workqueue.c:4359 at enable_work+0x273/0x2b0 kernel/workqueue.c:4530, CPU#1: kworker/1:0/24
Modules linked in:
CPU: 1 UID: 0 PID: 24 Comm: kworker/1:0 Not tainted syzkaller #0 PREEMPT(full) 
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/25/2025
Workqueue: usb_hub_wq hub_event
RIP: 0010:work_offqd_enable kernel/workqueue.c:4359 [inline]
RIP: 0010:enable_work+0x273/0x2b0 kernel/workqueue.c:4530
Code: 5b 41 5c 41 5d 41 5e 41 5f 5d e9 e3 2c 85 ff cc e8 22 9e 36 00 90 0f 0b 90 e9 54 fe ff ff e8 14 9e 36 00 48 8d 3d 7d f6 f9 0d <67> 48 0f b9 3a 45 31 e4 e9 67 fe ff ff e8 fb 9d 36 00 90 0f 0b 90
RSP: 0018:ffffc900001e7020 EFLAGS: 00010093
RAX: ffffffff818b143c RBX: dffffc0000000000 RCX: ffff88801c6e0000
RDX: 0000000000000000 RSI: 0000000000000000 RDI: ffffffff8f850ac0
RBP: ffffc900001e70d8 R08: ffff8880317e473f R09: 1ffff110062fc8e7
R10: dffffc0000000000 R11: ffffed10062fc8e8 R12: 0000000000000000
R13: 1ffff110062fc8e7 R14: ffff8880317e4738 R15: 001fffffffc00001
FS:  0000000000000000(0000) GS:ffff888125f35000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007fb12db72100 CR3: 000000005c4e8000 CR4: 0000000000350ef0
Call Trace:
 <TASK>
 __cancel_work_sync+0xf7/0x110 kernel/workqueue.c:4400
 thermal_zone_device_unregister+0x23e/0x3f0 drivers/thermal/thermal_core.c:1719
 psy_unregister_thermal drivers/power/supply/power_supply_core.c:1551 [inline]
 power_supply_unregister+0xf9/0x140 drivers/power/supply/power_supply_core.c:1767
 thunderstrike_destroy drivers/hid/hid-nvidia-shield.c:927 [inline]
 shield_remove+0x72/0x120 drivers/hid/hid-nvidia-shield.c:1104
 hid_device_remove+0x228/0x370 drivers/hid/hid-core.c:-1
 device_remove drivers/base/dd.c:569 [inline]
 __device_release_driver drivers/base/dd.c:1282 [inline]
 device_release_driver_internal+0x46f/0x800 drivers/base/dd.c:1305
 bus_remove_device+0x34d/0x440 drivers/base/bus.c:616
 device_del+0x511/0x8e0 drivers/base/core.c:3878
 hid_remove_device drivers/hid/hid-core.c:3008 [inline]
 hid_destroy_device+0x6b/0x1b0 drivers/hid/hid-core.c:3030
 usbhid_disconnect+0x9f/0xc0 drivers/hid/usbhid/hid-core.c:1462
 usb_unbind_interface+0x26e/0x910 drivers/usb/core/driver.c:458
 device_remove drivers/base/dd.c:571 [inline]
 __device_release_driver drivers/base/dd.c:1282 [inline]
 device_release_driver_internal+0x4d9/0x800 drivers/base/dd.c:1305
 bus_remove_device+0x34d/0x440 drivers/base/bus.c:616
 device_del+0x511/0x8e0 drivers/base/core.c:3878
 usb_disable_device+0x3d4/0x8e0 drivers/usb/core/message.c:1418
 usb_disconnect+0x32f/0x990 drivers/usb/core/hub.c:2345
 hub_port_connect drivers/usb/core/hub.c:5407 [inline]
 hub_port_connect_change drivers/usb/core/hub.c:5707 [inline]
 port_event drivers/usb/core/hub.c:5871 [inline]
 hub_event+0x1ca9/0x4ef0 drivers/usb/core/hub.c:5953
 process_one_work kernel/workqueue.c:3257 [inline]
 process_scheduled_works+0xad1/0x1770 kernel/workqueue.c:3340
 worker_thread+0x8a0/0xda0 kernel/workqueue.c:3421
 kthread+0x711/0x8a0 kernel/kthread.c:463
 ret_from_fork+0x599/0xb30 arch/x86/kernel/process.c:158
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:246
 </TASK>
----------------
Code disassembly (best guess):
   0:	5b                   	pop    %rbx
   1:	41 5c                	pop    %r12
   3:	41 5d                	pop    %r13
   5:	41 5e                	pop    %r14
   7:	41 5f                	pop    %r15
   9:	5d                   	pop    %rbp
   a:	e9 e3 2c 85 ff       	jmp    0xff852cf2
   f:	cc                   	int3
  10:	e8 22 9e 36 00       	call   0x369e37
  15:	90                   	nop
  16:	0f 0b                	ud2
  18:	90                   	nop
  19:	e9 54 fe ff ff       	jmp    0xfffffe72
  1e:	e8 14 9e 36 00       	call   0x369e37
  23:	48 8d 3d 7d f6 f9 0d 	lea    0xdf9f67d(%rip),%rdi        # 0xdf9f6a7
* 2a:	67 48 0f b9 3a       	ud1    (%edx),%rdi <-- trapping instruction
  2f:	45 31 e4             	xor    %r12d,%r12d
  32:	e9 67 fe ff ff       	jmp    0xfffffe9e
  37:	e8 fb 9d 36 00       	call   0x369e37
  3c:	90                   	nop
  3d:	0f 0b                	ud2
  3f:	90                   	nop