syzbot
WARNING: ODEBUG bug in vub300_disconnect
Status:
moderation: reported on 2026/08/20 07:58
Subsystems:
kernel
Labels:
prio:high
[Documentation on labels]
Reported-by: syzbot+d7b2ec58558d8d88dae8@syzkaller.appspotmail.com
First crash: 4d14h, last: 1d16h
Sample crash report:
usb 4-1: SET_CLOCK_SPEED 200kHz failed with retval=-110
usb 4-1: USB disconnect, device number 74
------------[ cut here ]------------
ODEBUG: free active (active state 0) object: ffff888047371270 object type: timer_list hint: vub300_inactivity_timer_expired+0x0/0x3f0 include/linux/refcount.h:-1
WARNING: lib/debugobjects.c:632 at debug_print_object+0xec/0x230 lib/debugobjects.c:629, CPU#1: kworker/1:7/5699
Modules linked in:
CPU: 1 UID: 0 PID: 5699 Comm: kworker/1:7 Tainted: G L syzkaller #0 PREEMPT(full)
Tainted: [L]=SOFTLOCKUP
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026
Workqueue: usb_hub_wq hub_event
RIP: 0010:debug_print_object+0x18a/0x230 lib/debugobjects.c:629
Code: f8 48 c1 e8 03 80 3c 18 00 74 08 4c 89 ff e8 9d 34 54 fd 4d 8b 0f 4c 89 ef 48 8b 74 24 08 48 89 ea 44 89 e1 4d 89 f0 ff 34 24 <67> 48 0f b9 3a 48 83 c4 08 ff 05 23 5a 77 0b 48 83 c4 10 5b 41 5c
RSP: 0018:ffffc90004ca7238 EFLAGS: 00010246
RAX: 1ffffffff17decfc RBX: dffffc0000000000 RCX: 0000000000000000
RDX: ffffffff8c4be840 RSI: ffffffff8c4be2c0 RDI: ffffffff90630800
RBP: ffffffff8c4be840 R08: ffff888047371270 R09: ffffffff8bef7b40
R10: dffffc0000000000 R11: ffffffff81b32f10 R12: 0000000000000000
R13: ffffffff90630800 R14: ffff888047371270 R15: ffffffff8bef67e0
FS: 0000000000000000(0000) GS:ffff88812503f000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f28529effa8 CR3: 0000000074d3c000 CR4: 00000000003526f0
Call Trace:
<TASK>
__debug_check_no_obj_freed lib/debugobjects.c:1171 [inline]
debug_check_no_obj_freed+0x2e3/0x450 lib/debugobjects.c:1201
slab_free_hook mm/slub.c:2608 [inline]
slab_free mm/slub.c:6377 [inline]
kfree+0x13e/0x640 mm/slub.c:6692
device_release+0xc4/0x1f0 drivers/base/core.c:-1
kobject_cleanup lib/kobject.c:689 [inline]
kobject_release lib/kobject.c:720 [inline]
kref_put include/linux/kref.h:65 [inline]
kobject_put+0x222/0x550 lib/kobject.c:737
vub300_delete drivers/mmc/host/vub300.c:379 [inline]
kref_put include/linux/kref.h:65 [inline]
vub300_disconnect+0x280/0x2f0 drivers/mmc/host/vub300.c:2388
usb_unbind_interface+0x295/0x9f0 drivers/usb/core/driver.c:458
device_remove drivers/base/dd.c:618 [inline]
__device_release_driver drivers/base/dd.c:1349 [inline]
device_release_driver_internal+0x4f5/0x880 drivers/base/dd.c:1372
bus_remove_device+0x444/0x560 drivers/base/bus.c:664
device_del+0x524/0x8f0 drivers/base/core.c:3961
usb_disable_device+0x3d4/0x8d0 drivers/usb/core/message.c:1478
usb_disconnect+0x346/0x9a0 drivers/usb/core/hub.c:2345
hub_port_connect drivers/usb/core/hub.c:5415 [inline]
hub_port_connect_change drivers/usb/core/hub.c:5715 [inline]
port_event drivers/usb/core/hub.c:5879 [inline]
hub_event+0x1bbb/0x4d30 drivers/usb/core/hub.c:5961
process_one_work kernel/workqueue.c:3322 [inline]
process_scheduled_works+0xa8e/0x14e0 kernel/workqueue.c:3405
worker_thread+0xa47/0xfb0 kernel/workqueue.c:3486
kthread+0x388/0x470 kernel/kthread.c:436
ret_from_fork+0x514/0xb70 arch/x86/kernel/process.c:158
ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245
</TASK>
----------------
Code disassembly (best guess):
0: f8 clc
1: 48 c1 e8 03 shr $0x3,%rax
5: 80 3c 18 00 cmpb $0x0,(%rax,%rbx,1)
9: 74 08 je 0x13
b: 4c 89 ff mov %r15,%rdi
e: e8 9d 34 54 fd call 0xfd5434b0
13: 4d 8b 0f mov (%r15),%r9
16: 4c 89 ef mov %r13,%rdi
19: 48 8b 74 24 08 mov 0x8(%rsp),%rsi
1e: 48 89 ea mov %rbp,%rdx
21: 44 89 e1 mov %r12d,%ecx
24: 4d 89 f0 mov %r14,%r8
27: ff 34 24 push (%rsp)
* 2a: 67 48 0f b9 3a ud1 (%edx),%rdi <-- trapping instruction
2f: 48 83 c4 08 add $0x8,%rsp
33: ff 05 23 5a 77 0b incl 0xb775a23(%rip) # 0xb775a5c
39: 48 83 c4 10 add $0x10,%rsp
3d: 5b pop %rbx
3e: 41 5c pop %r12
* Struck through repros no longer work on HEAD.