WARNING in i2c_unregister_device

Status: upstream: reported C repro on 2026/08/09 19:12
Subsystems: usb
Labels: prio:low
[Documentation on labels]
Reported-by: syzbot+3fb7629cfd12d04beeab@syzkaller.appspotmail.com
First crash: 5d18h, last: 48m
Cause bisection: failed (error log, bisect log)
  
✨ AI Jobs (1)
ID Workflow Result Correct Bug Created Started Finished Revision
461e2761 assessment-security DenialOfService: ❌ Exploitable: ❌ FilesystemTrigger: ❌ NetworkTrigger: ❌ PeripheralTrigger: ❌ RemoteTrigger: ❌ Unprivileged: ❌ UserNamespace: ❌ VMGuestTrigger: ❌ VMHostTrigger: ❌ WARNING in i2c_unregister_device 2026/08/09 07:33 2026/08/09 07:33 2026/08/09 08:56 5d63f80b
Discussions (1)
Title Replies (including bot) Last reply
[syzbot] [usb?] WARNING in i2c_unregister_device 0 (1) 2026/08/09 19:12

Sample crash report:
------------[ cut here ]------------
Device '2-002c' does not have a release() function, it is broken and must be fixed. See Documentation/core-api/kobject.rst.
WARNING: drivers/base/core.c:2638 at device_release+0x1da/0x270 drivers/base/core.c:2638, CPU#1: kworker/1:3/4450
Modules linked in:
CPU: 1 UID: 0 PID: 4450 Comm: kworker/1:3 Not tainted syzkaller #0 PREEMPT(full) 
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/16/2026
Workqueue: usb_hub_wq hub_event
RIP: 0010:device_release+0x1dd/0x270 drivers/base/core.c:2638
Code: df 48 89 fa 48 c1 ea 03 80 3c 02 00 0f 85 93 00 00 00 48 8b 6b 50 48 85 ed 74 19 e8 6d 94 af fb 48 8d 3d d6 1a d3 0a 48 89 ee <67> 48 0f b9 3a e9 eb fe ff ff e8 54 94 af fb 48 89 da 48 b8 00 00
RSP: 0018:ffffc90010427548 EFLAGS: 00010293
RAX: 0000000000000000 RBX: ffff88807d9c3020 RCX: ffffffff8bb0ba12
RDX: ffff888036a3ca80 RSI: ffff888022a8dc00 RDI: ffffffff912deb50
RBP: ffff888022a8dc00 R08: 0000000000000001 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000000 R12: ffff888038298400
R13: dffffc0000000000 R14: ffff888022a8dc00 R15: 0000000000000000
FS:  0000000000000000(0000) GS:ffff888123eec000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000200000000000 CR3: 000000002aaa6000 CR4: 00000000003526f0
Call Trace:
 <TASK>
 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 drivers/base/core.c:3880 [inline]
 device_unregister+0x2f/0xe0 drivers/base/core.c:4003
 i2c_unregister_device+0xf5/0x270 drivers/i2c/i2c-core-base.c:1075
 i2c_deregister_clients+0x255/0x460 drivers/i2c/i2c-core-base.c:1782
 i2c_del_adapter+0x124/0x2d0 drivers/i2c/i2c-core-base.c:1820
 i2c_tiny_usb_disconnect+0x43/0xe0 drivers/i2c/busses/i2c-tiny-usb.c:282
 usb_unbind_interface+0x1dd/0x9e0 drivers/usb/core/driver.c:458
 device_remove drivers/base/dd.c:618 [inline]
 device_remove+0x12a/0x180 drivers/base/dd.c:610
 __device_release_driver drivers/base/dd.c:1349 [inline]
 device_release_driver_internal+0x44e/0x620 drivers/base/dd.c:1372
 bus_remove_device+0x2bc/0x560 drivers/base/bus.c:664
 device_del+0x376/0x9b0 drivers/base/core.c:3961
 usb_disable_device+0x367/0x810 drivers/usb/core/message.c:1478
 usb_disconnect+0x2e2/0x9a0 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+0x1c4f/0x4a60 drivers/usb/core/hub.c:5953
 process_one_work+0xa23/0x1940 kernel/workqueue.c:3322
 process_scheduled_works kernel/workqueue.c:3405 [inline]
 worker_thread+0x5ef/0xe50 kernel/workqueue.c:3486
 kthread+0x370/0x450 kernel/kthread.c:436
 ret_from_fork+0x72b/0xd50 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:	df 48 89             	fisttps -0x77(%rax)
   3:	fa                   	cli
   4:	48 c1 ea 03          	shr    $0x3,%rdx
   8:	80 3c 02 00          	cmpb   $0x0,(%rdx,%rax,1)
   c:	0f 85 93 00 00 00    	jne    0xa5
  12:	48 8b 6b 50          	mov    0x50(%rbx),%rbp
  16:	48 85 ed             	test   %rbp,%rbp
  19:	74 19                	je     0x34
  1b:	e8 6d 94 af fb       	call   0xfbaf948d
  20:	48 8d 3d d6 1a d3 0a 	lea    0xad31ad6(%rip),%rdi        # 0xad31afd
  27:	48 89 ee             	mov    %rbp,%rsi
* 2a:	67 48 0f b9 3a       	ud1    (%edx),%rdi <-- trapping instruction
  2f:	e9 eb fe ff ff       	jmp    0xffffff1f
  34:	e8 54 94 af fb       	call   0xfbaf948d
  39:	48 89 da             	mov    %rbx,%rdx
  3c:	48                   	rex.W
  3d:	b8                   	.byte 0xb8

Crashes (22):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2026/08/09 00:56 upstream a59f57e2aa12 5d63f80b .config strace log report syz / log C [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root WARNING in i2c_unregister_device
2026/08/10 14:22 upstream db2ddb871435 558388e4 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root WARNING in i2c_unregister_device
2026/08/10 14:21 upstream db2ddb871435 558388e4 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root WARNING in i2c_unregister_device
2026/08/10 14:21 upstream db2ddb871435 558388e4 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root WARNING in i2c_unregister_device
2026/08/09 15:31 upstream 06cf61899d64 5d63f80b .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root WARNING in i2c_unregister_device
2026/08/08 22:33 upstream a59f57e2aa12 5d63f80b .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root WARNING in i2c_unregister_device
2026/08/08 21:18 upstream a59f57e2aa12 5d63f80b .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root WARNING in i2c_unregister_device
2026/08/06 20:02 upstream 0d8395707651 c38879ea .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root WARNING in i2c_unregister_device
2026/08/09 11:31 upstream 06cf61899d64 5d63f80b .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu-upstream WARNING in i2c_unregister_device
2026/08/07 20:11 upstream f9a2394a2348 e4ef95d6 .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu-upstream WARNING in i2c_unregister_device
2026/08/07 17:02 upstream f9a2394a2348 e4ef95d6 .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu-upstream WARNING in i2c_unregister_device
2026/08/07 06:17 upstream fcaeecb8b0cd c38879ea .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu-upstream WARNING in i2c_unregister_device
2026/08/07 02:18 upstream fcaeecb8b0cd c38879ea .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu-upstream WARNING in i2c_unregister_device
2026/08/05 18:28 upstream c21bb4193868 1eed00d1 .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu-upstream WARNING in i2c_unregister_device
2026/08/09 00:53 upstream a59f57e2aa12 5d63f80b .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu-upstream-386 WARNING in i2c_unregister_device
2026/08/08 00:24 upstream 3f008280327b 5d63f80b .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu-upstream-386 WARNING in i2c_unregister_device
2026/08/07 10:11 upstream fcaeecb8b0cd c38879ea .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu-upstream-386 WARNING in i2c_unregister_device
2026/08/06 18:22 upstream fcaeecb8b0cd cc56899a .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu-upstream-386 WARNING in i2c_unregister_device
2026/08/06 11:19 upstream 0d8395707651 cc56899a .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu-upstream-386 WARNING in i2c_unregister_device
2026/08/05 07:46 upstream 562bfb501c54 52aa2820 .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu-upstream-386 WARNING in i2c_unregister_device
2026/08/05 07:28 upstream 562bfb501c54 52aa2820 .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu-upstream-386 WARNING in i2c_unregister_device
2026/08/04 21:00 upstream 562bfb501c54 3c5eaa21 .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu-upstream-386 WARNING in i2c_unregister_device
* Struck through repros no longer work on HEAD.