------------[ cut here ]------------ Device '1-0002' does not have a release() function, it is broken and must be fixed. See Documentation/core-api/kobject.rst. WARNING: drivers/base/core.c:2642 at device_release+0x1da/0x270 drivers/base/core.c:2642, CPU#2: syz.1.516/7658 Modules linked in: CPU: 2 UID: 0 PID: 7658 Comm: syz.1.516 Not tainted syzkaller #0 PREEMPT(full) Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014 RIP: 0010:device_release+0x1dd/0x270 drivers/base/core.c:2642 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 5d 55 a1 fb 48 8d 3d 66 96 e7 0b 48 89 ee <67> 48 0f b9 3a e9 eb fe ff ff e8 44 55 a1 fb 48 89 da 48 b8 00 00 RSP: 0018:ffffc90007477a20 EFLAGS: 00010283 RAX: 0000000000003f73 RBX: ffff888014f4e020 RCX: ffffc9000c4b2000 RDX: 0000000000080000 RSI: ffff88804ee405a0 RDI: ffffffff9251e3c0 RBP: ffff88804ee405a0 R08: 0000000000000001 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000000 R12: ffff8880259b1800 R13: dffffc0000000000 R14: ffff88804ee405a0 R15: 0000000000000000 FS: 0000000000000000(0000) GS:ffff88809594a000(0063) knlGS:00000000f5476b40 CS: 0010 DS: 002b ES: 002b CR0: 0000000080050033 CR2: 00000000332f6ff8 CR3: 000000006db9b000 CR4: 0000000000352ef0 Call Trace: 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:3884 [inline] device_unregister+0x2f/0xe0 drivers/base/core.c:4007 i2c_unregister_device+0xf5/0x270 drivers/i2c/i2c-core-base.c:1076 i2c_deregister_clients+0x255/0x460 drivers/i2c/i2c-core-base.c:1783 i2c_del_adapter+0x13a/0x2e0 drivers/i2c/i2c-core-base.c:1827 i801_remove+0xa4/0x3d0 drivers/i2c/busses/i2c-i801.c:1696 pci_device_remove+0xb2/0x1d0 drivers/pci/pci-driver.c:535 device_remove+0xcb/0x180 drivers/base/dd.c:616 __device_release_driver drivers/base/dd.c:1349 [inline] device_release_driver_internal+0x44e/0x620 drivers/base/dd.c:1372 unbind_store+0xf8/0x110 drivers/base/bus.c:244 drv_attr_store+0x74/0xb0 drivers/base/bus.c:125 sysfs_kf_write+0xf2/0x150 fs/sysfs/file.c:145 kernfs_fop_write_iter+0x3e0/0x5f0 fs/kernfs/file.c:345 new_sync_write fs/read_write.c:595 [inline] vfs_write+0x6af/0x1050 fs/read_write.c:687 ksys_write+0x12a/0x250 fs/read_write.c:739 do_syscall_32_irqs_on arch/x86/entry/syscall_32.c:79 [inline] __do_fast_syscall_32+0x13a/0x8b0 arch/x86/entry/syscall_32.c:291 do_fast_syscall_32+0x32/0x70 arch/x86/entry/syscall_32.c:316 entry_SYSENTER_compat_after_hwframe+0x84/0x8e RIP: 0023:0xf745efec Code: Unable to access opcode bytes at 0xf745efc2. RSP: 002b:00000000f547650c EFLAGS: 00000292 ORIG_RAX: 0000000000000004 RAX: ffffffffffffffda RBX: 0000000000000003 RCX: 0000000080000580 RDX: 000000000000000c RSI: 0000000000000000 RDI: 0000000000000000 RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000292 R12: 0000000000000000 R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000 ---------------- 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 5d 55 a1 fb call 0xfba1557d 20: 48 8d 3d 66 96 e7 0b lea 0xbe79666(%rip),%rdi # 0xbe7968d 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 44 55 a1 fb call 0xfba1557d 39: 48 89 da mov %rbx,%rdx 3c: 48 rex.W 3d: b8 .byte 0xb8