[syzbot] [kernel?] WARNING: kobject bug in goku_remove

syzbot <[email protected]>
Newsgroups org.kernel.vger.linux-kernel
Message-ID <[email protected]>
Hello,

syzbot found the following issue on:

HEAD commit:    3aa1dcaa4f6f Revert "wifi: mt76: Disable napi when removin..
git tree:       upstream
console output: https://syzkaller.appspot.com/x/log.txt?x=11e09c79580000
kernel config:  https://syzkaller.appspot.com/x/.config?x=c44651ea7dd2f307
dashboard link: https://syzkaller.appspot.com/bug?extid=06ec7624018233e17113
compiler:       gcc (Debian 14.2.0-19) 14.2.0, GNU ld (GNU Binutils for Debian) 2.44
C reproducer:   https://syzkaller.appspot.com/x/repro.c?x=160e4ac6580000

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: [email protected]

usb usb3: USB disconnect, device number 1
uhci_hcd 0000:00:1d.1: USB bus 3 deregistered
------------[ cut here ]------------
kobject: '(null)' (ffff8880281480d8): is not initialized, yet kobject_put() is being called.
WARNING: lib/kobject.c:734 at kobject_put+0x252/0x640 lib/kobject.c:734, CPU#2: syz-executor405/6027
Modules linked in:
CPU: 2 UID: 0 PID: 6027 Comm: syz-executor405 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:kobject_put+0x258/0x640 lib/kobject.c:734
Code: 59 f6 48 89 da 48 b8 00 00 00 00 00 fc ff df 48 c1 ea 03 80 3c 02 00 0f 85 5e 03 00 00 48 8d 3d 9e 2d 83 05 48 8b 33 48 89 da <67> 48 0f b9 3a e9 0b fe ff ff e8 b9 88 59 f6 be 03 00 00 00 4c 89
RSP: 0018:ffffc90003437728 EFLAGS: 00010246
RAX: dffffc0000000000 RBX: ffff8880281480d8 RCX: ffffffff8bb0e8c4
RDX: ffff8880281480d8 RSI: 0000000000000000 RDI: ffffffff91341850
RBP: 0000000000000000 R08: 0000000000000001 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000000 R12: ffff888028148114
R13: dffffc0000000000 R14: ffff888028148834 R15: 0000000000000000
FS:  0000555585cdf400(0000) GS:ffff8880d5fe9000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007ffe6f14cda8 CR3: 0000000055370000 CR4: 0000000000352ef0
Call Trace:
 <TASK>
 put_device+0x1f/0x30 drivers/base/core.c:3880
 goku_remove+0x47/0x470 drivers/usb/gadget/udc/goku_udc.c:1717
 goku_probe+0x2f6/0x3c0 drivers/usb/gadget/udc/goku_udc.c:1830
 local_pci_probe+0xdd/0x1b0 drivers/pci/pci-driver.c:332
 pci_call_probe+0x176/0x800 drivers/pci/pci-driver.c:394
 __pci_device_probe drivers/pci/pci-driver.c:455 [inline]
 pci_device_probe+0x1cd/0x370 drivers/pci/pci-driver.c:489
 call_driver_probe drivers/base/dd.c:628 [inline]
 really_probe+0x241/0xa60 drivers/base/dd.c:706
 __driver_probe_device+0x20e/0x450 drivers/base/dd.c:868
 driver_probe_device+0x4a/0x140 drivers/base/dd.c:898
 __driver_attach+0x21f/0x5b0 drivers/base/dd.c:1292
 bus_for_each_dev+0x13e/0x1d0 drivers/base/bus.c:383
 pci_add_dynid+0x2b5/0x370 drivers/pci/pci-driver.c:77
 new_id_store+0x2a9/0x5b0 drivers/pci/pci-driver.c:249
 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+0x6ac/0x1050 fs/read_write.c:687
 ksys_write+0x12a/0x250 fs/read_write.c:739
 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
 do_syscall_64+0x115/0x870 arch/x86/entry/syscall_64.c:94
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7f370300ce37
Code: 48 89 fa 4c 89 df e8 98 1d 00 00 8b 93 08 03 00 00 59 5e 48 83 f8 fc 74 1a 5b c3 0f 1f 84 00 00 00 00 00 48 8b 44 24 10 0f 05 <5b> c3 0f 1f 80 00 00 00 00 83 e2 39 83 fa 08 75 de e8 23 ff ff ff
RSP: 002b:00007fff6fddcbc0 EFLAGS: 00000202 ORIG_RAX: 0000000000000001
RAX: ffffffffffffffda RBX: 0000555585cdf400 RCX: 00007f370300ce37
RDX: 000000000000000d RSI: 00007fff6fddcc80 RDI: 0000000000000003
RBP: 00007fff6fddd400 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000202 R12: 0000000000000003
R13: 00007fff6fddcf20 R14: 00007fff6fddcd00 R15: 000000000000000a
 </TASK>
----------------
Code disassembly (best guess):
   0:	59                   	pop    %rcx
   1:	f6 48 89 da          	testb  $0xda,-0x77(%rax)
   5:	48 b8 00 00 00 00 00 	movabs $0xdffffc0000000000,%rax
   c:	fc ff df
   f:	48 c1 ea 03          	shr    $0x3,%rdx
  13:	80 3c 02 00          	cmpb   $0x0,(%rdx,%rax,1)
  17:	0f 85 5e 03 00 00    	jne    0x37b
  1d:	48 8d 3d 9e 2d 83 05 	lea    0x5832d9e(%rip),%rdi        # 0x5832dc2
  24:	48 8b 33             	mov    (%rbx),%rsi
  27:	48 89 da             	mov    %rbx,%rdx
* 2a:	67 48 0f b9 3a       	ud1    (%edx),%rdi <-- trapping instruction
  2f:	e9 0b fe ff ff       	jmp    0xfffffe3f
  34:	e8 b9 88 59 f6       	call   0xf65988f2
  39:	be 03 00 00 00       	mov    $0x3,%esi
  3e:	4c                   	rex.WR
  3f:	89                   	.byte 0x89


---
This report is generated by a bot. It may contain errors.
See https://goo.gl/tpsmEJ for more information about syzbot.
syzbot engineers can be reached at [email protected].

syzbot will keep track of this issue. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.

If the report is already addressed, let syzbot know by replying with:
#syz fix: exact-commit-title

If you want syzbot to run the reproducer, reply with:
#syz test: git://repo/address.git branch-or-commit-hash
If you attach or paste a git patch, syzbot will apply it before testing.

If you want to overwrite report's subsystems, reply with:
#syz set subsystems: new-subsystem
(See the list of subsystem names on the web dashboard)

If the report is a duplicate of another one, reply with:
#syz dup: exact-subject-of-another-report

If you want to undo deduplication, reply with:
#syz undup
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.