syzbot


WARNING: refcount bug in hdm_disconnect

Status: upstream: reported C repro on 2025/06/14 22:04
Subsystems: usb
[Documentation on labels]
Reported-by: syzbot+d175ca7205b4f18390b1@syzkaller.appspotmail.com
First crash: 89d, last: 26d
Discussions (2)
Title Replies (including bot) Last reply
[PATCH] most: core, usb: fix generic device management 1 (1) 2025/06/16 16:53
[syzbot] [kernel?] WARNING: refcount bug in hdm_disconnect 0 (3) 2025/06/16 16:01
Last patch testing requests (3)
Created Duration User Patch Repo Result
2025/08/10 17:37 27m retest repro upstream report log
2025/07/17 06:16 27m retest repro upstream OK log
2025/06/16 16:01 26m dmantipov@yandex.ru patch https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git e04c78d86a9699d136910cfc0bdcf01087e3267e OK log

Sample crash report:
usb 2-1: Product: syz
usb 2-1: Manufacturer: syz
usb 2-1: SerialNumber: syz
usb 2-1: USB disconnect, device number 2
------------[ cut here ]------------
WARNING: CPU: 1 PID: 3196 at lib/refcount.c:28 refcount_warn_saturate+0x13c/0x174 lib/refcount.c:28
refcount_t: underflow; use-after-free.
Modules linked in:
Kernel panic - not syncing: kernel: panic_on_warn set ...
CPU: 1 UID: 0 PID: 3196 Comm: kworker/1:3 Not tainted 6.16.0-rc7-syzkaller #0 PREEMPT 
Hardware name: ARM-Versatile Express
Workqueue: usb_hub_wq hub_event
Call trace: 
[<80201a00>] (dump_backtrace) from [<80201afc>] (show_stack+0x18/0x1c arch/arm/kernel/traps.c:257)
 r7:00000000 r6:8282083c r5:00000000 r4:8225b4f4
[<80201ae4>] (show_stack) from [<8021fdf4>] (__dump_stack lib/dump_stack.c:94 [inline])
[<80201ae4>] (show_stack) from [<8021fdf4>] (dump_stack_lvl+0x54/0x7c lib/dump_stack.c:120)
[<8021fda0>] (dump_stack_lvl) from [<8021fe34>] (dump_stack+0x18/0x1c lib/dump_stack.c:129)
 r5:00000000 r4:82a6dd18
[<8021fe1c>] (dump_stack) from [<80202614>] (panic+0x120/0x374 kernel/panic.c:382)
[<802024f4>] (panic) from [<80258578>] (check_panic_on_warn kernel/panic.c:273 [inline])
[<802024f4>] (panic) from [<80258578>] (get_taint+0x0/0x1c kernel/panic.c:268)
 r3:8280c684 r2:00000001 r1:8224203c r0:822499d4
 r7:808b9974
[<80258504>] (check_panic_on_warn) from [<802586dc>] (__warn+0x80/0x188 kernel/panic.c:777)
[<8025865c>] (__warn) from [<802589cc>] (warn_slowpath_fmt+0x1e8/0x1f4 kernel/panic.c:812)
 r8:00000009 r7:822b3578 r6:dfa81bfc r5:84b76c00 r4:00000000
[<802587e8>] (warn_slowpath_fmt) from [<808b9974>] (refcount_warn_saturate+0x13c/0x174 lib/refcount.c:28)
 r10:00000100 r9:829caa68 r8:854bb488 r7:84b56874 r6:84ec07b4 r5:84b56800
 r4:841b1c00
[<808b9838>] (refcount_warn_saturate) from [<819fe2c8>] (__refcount_sub_and_test include/linux/refcount.h:400 [inline])
[<808b9838>] (refcount_warn_saturate) from [<819fe2c8>] (__refcount_dec_and_test include/linux/refcount.h:432 [inline])
[<808b9838>] (refcount_warn_saturate) from [<819fe2c8>] (refcount_dec_and_test include/linux/refcount.h:450 [inline])
[<808b9838>] (refcount_warn_saturate) from [<819fe2c8>] (kref_put include/linux/kref.h:64 [inline])
[<808b9838>] (refcount_warn_saturate) from [<819fe2c8>] (kobject_put+0x158/0x1f4 lib/kobject.c:737)
[<819fe170>] (kobject_put) from [<80b2a350>] (put_device+0x18/0x1c drivers/base/core.c:3800)
 r7:84b56874 r6:84ec07b4 r5:84b56800 r4:84ec0000
[<80b2a338>] (put_device) from [<8141c964>] (hdm_disconnect+0x90/0x9c drivers/most/most_usb.c:1129)
[<8141c8d4>] (hdm_disconnect) from [<80e86c64>] (usb_unbind_interface+0x84/0x2b4 drivers/usb/core/driver.c:458)
 r7:84b56874 r6:84b56830 r5:00000000 r4:854bb400
[<80e86be0>] (usb_unbind_interface) from [<80b323d8>] (device_remove drivers/base/dd.c:569 [inline])
[<80e86be0>] (usb_unbind_interface) from [<80b323d8>] (device_remove+0x64/0x6c drivers/base/dd.c:561)
 r10:00000100 r9:854bb488 r8:00000044 r7:84b56874 r6:829caa68 r5:00000000
 r4:84b56830
[<80b32374>] (device_remove) from [<80b338c8>] (__device_release_driver drivers/base/dd.c:1272 [inline])
[<80b32374>] (device_remove) from [<80b338c8>] (device_release_driver_internal+0x18c/0x200 drivers/base/dd.c:1295)
 r5:00000000 r4:84b56830
[<80b3373c>] (device_release_driver_internal) from [<80b33954>] (device_release_driver+0x18/0x1c drivers/base/dd.c:1318)
 r9:854bb488 r8:833b8140 r7:833b8138 r6:833b810c r5:84b56830 r4:833b8130
[<80b3393c>] (device_release_driver) from [<80b31a2c>] (bus_remove_device+0xcc/0x120 drivers/base/bus.c:579)
[<80b31960>] (bus_remove_device) from [<80b2bd88>] (device_del+0x148/0x38c drivers/base/core.c:3881)
 r9:854bb488 r8:84b76c00 r7:04208060 r6:00000000 r5:84b56830 r4:84b56874
[<80b2bc40>] (device_del) from [<80e846b4>] (usb_disable_device+0xd4/0x1e8 drivers/usb/core/message.c:1418)
 r10:00000100 r9:00000000 r8:00000000 r7:84b56800 r6:854bb400 r5:854f9fc8
 r4:60000013
[<80e845e0>] (usb_disable_device) from [<80e793c4>] (usb_disconnect+0xec/0x2ac drivers/usb/core/hub.c:2344)
 r9:84f6e000 r8:854bb4cc r7:840a8000 r6:854bb488 r5:854bb400 r4:60000013
[<80e792d8>] (usb_disconnect) from [<80e7c3b8>] (hub_port_connect drivers/usb/core/hub.c:5406 [inline])
[<80e792d8>] (usb_disconnect) from [<80e7c3b8>] (hub_port_connect_change drivers/usb/core/hub.c:5706 [inline])
[<80e792d8>] (usb_disconnect) from [<80e7c3b8>] (port_event drivers/usb/core/hub.c:5870 [inline])
[<80e792d8>] (usb_disconnect) from [<80e7c3b8>] (hub_event+0x1194/0x1950 drivers/usb/core/hub.c:5952)
 r10:00000100 r9:8414fd2c r8:840a3800 r7:854bb400 r6:8414f600 r5:00000001
 r4:00000001
[<80e7b224>] (hub_event) from [<8027e2bc>] (process_one_work+0x1b4/0x4f4 kernel/workqueue.c:3238)
 r10:833b8370 r9:8331d805 r8:84b76c00 r7:ddde2d40 r6:8331d800 r5:8414fd2c
 r4:84e4a300
[<8027e108>] (process_one_work) from [<8027ef04>] (process_scheduled_works kernel/workqueue.c:3321 [inline])
[<8027e108>] (process_one_work) from [<8027ef04>] (worker_thread+0x1fc/0x3d8 kernel/workqueue.c:3402)
 r10:61c88647 r9:84b76c00 r8:84e4a32c r7:82804d40 r6:ddde2d40 r5:ddde2d60
 r4:84e4a300
[<8027ed08>] (worker_thread) from [<80285f30>] (kthread+0x12c/0x280 kernel/kthread.c:464)
 r10:00000000 r9:84e4a300 r8:8027ed08 r7:df915e60 r6:84e4a380 r5:84b76c00
 r4:00000001
[<80285e04>] (kthread) from [<80200114>] (ret_from_fork+0x14/0x20 arch/arm/kernel/entry-common.S:137)
Exception stack(0xdfa81fb0 to 0xdfa81ff8)
1fa0:                                     00000000 00000000 00000000 00000000
1fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
1fe0: 00000000 00000000 00000000 00000000 00000013 00000000
 r10:00000000 r9:00000000 r8:00000000 r7:00000000 r6:00000000 r5:80285e04
 r4:84e521c0
Rebooting in 86400 seconds..

Crashes (13):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/07/27 17:34 upstream ec2df4364666 fb8f743d .config console log report syz / log C [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu2-arm32 WARNING: refcount bug in hdm_disconnect
2025/07/27 15:50 upstream ec2df4364666 fb8f743d .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu2-arm32 WARNING: refcount bug in hdm_disconnect
2025/07/24 21:04 upstream 25fae0b93d1d 65d60d73 .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu2-arm32 WARNING: refcount bug in hdm_disconnect
2025/07/24 21:01 upstream 25fae0b93d1d 65d60d73 .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu2-arm32 WARNING: refcount bug in hdm_disconnect
2025/07/03 06:14 upstream b4911fb0b060 115ceea7 .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu2-arm32 WARNING: refcount bug in hdm_disconnect
2025/07/03 06:14 upstream b4911fb0b060 115ceea7 .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu2-arm32 WARNING: refcount bug in hdm_disconnect
2025/06/26 02:50 upstream 92ca6c498a5e 26d77996 .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu2-arm32 WARNING: refcount bug in hdm_disconnect
2025/06/15 00:41 upstream 4774cfe3543a 5f4b362d .config console log report syz / log C [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu2-arm32 WARNING: refcount bug in hdm_disconnect
2025/06/14 22:03 upstream 4774cfe3543a 5f4b362d .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu2-arm32 WARNING: refcount bug in hdm_disconnect
2025/06/14 22:03 upstream 4774cfe3543a 5f4b362d .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu2-arm32 WARNING: refcount bug in hdm_disconnect
2025/05/25 12:50 upstream d0c22de9995b ed351ea7 .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu2-arm32 WARNING: refcount bug in hdm_disconnect
2025/05/25 12:50 upstream d0c22de9995b ed351ea7 .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu2-arm32 WARNING: refcount bug in hdm_disconnect
2025/05/25 12:48 upstream d0c22de9995b ed351ea7 .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu2-arm32 WARNING: refcount bug in hdm_disconnect
* Struck through repros no longer work on HEAD.