Re: [syzbot] [net?] WARNING: refcount bug in new_device_store

From: syzbot

Date: Fri Aug 14 2026 - 20:22:12 EST


Hello,

syzbot has tested the proposed patch but the reproducer is still triggering an issue:
WARNING: refcount bug in new_device_store

</TASK>
kobject: kobject_add_internal failed for netdevsim1 (error: -12 parent: devices)
------------[ cut here ]------------
refcount_t: addition on 0; use-after-free.
WARNING: lib/refcount.c:25 at refcount_warn_saturate+0x111/0x130 lib/refcount.c:25, CPU#1: syz-executor115/6024
Modules linked in:
CPU: 1 UID: 0 PID: 6024 Comm: syz-executor115 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:refcount_warn_saturate+0x111/0x130 lib/refcount.c:25
Code: cc e8 d3 91 ec fc 48 8d 3d bc c2 0e 0c 67 48 0f b9 3a e8 c2 91 ec fc 5b 5d e9 9b 52 a0 06 e8 b6 91 ec fc 48 8d 3d af c2 0e 0c <67> 48 0f b9 3a e8 a5 91 ec fc 5b 5d e9 7e 52 a0 06 48 89 df e8 56
RSP: 0018:ffffc90003857b80 EFLAGS: 00010293
RAX: 0000000000000000 RBX: ffffffff9ba33900 RCX: ffffffff851de11b
RDX: ffff888033d14a80 RSI: ffffffff851de1ca RDI: ffffffff912ca480
RBP: 0000000000000002 R08: 0000000000000005 R09: 0000000000000004
R10: 0000000000000002 R11: 0000000000000000 R12: 0000000000000005
R13: 0000000000000000 R14: 0000000000000002 R15: 0000000000000001
FS: 000055555bbf3400(0000) GS:ffff8880d5ee9000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 000055ec5148bda8 CR3: 000000005556e000 CR4: 0000000000352ef0
Call Trace:
<TASK>
__refcount_add include/linux/refcount.h:289 [inline]
__refcount_inc include/linux/refcount.h:366 [inline]
refcount_inc include/linux/refcount.h:383 [inline]
new_device_store+0x682/0x700 drivers/net/netdevsim/bus.c:197
bus_attr_store+0x74/0xb0 drivers/base/bus.c:172
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_pwrite64 fs/read_write.c:794 [inline]
__do_sys_pwrite64 fs/read_write.c:802 [inline]
__se_sys_pwrite64 fs/read_write.c:799 [inline]
__x64_sys_pwrite64+0x1eb/0x250 fs/read_write.c:799
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:0x7f1cc06cd237
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:00007ffdcb4b35c0 EFLAGS: 00000202 ORIG_RAX: 0000000000000012
RAX: ffffffffffffffda RBX: 000055555bbf3400 RCX: 00007f1cc06cd237
RDX: 0000000000000005 RSI: 00007f1cc07060cd RDI: 0000000000000004
RBP: 0000000000000004 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000202 R12: 0000000000000003
R13: 00007ffdcb4b3610 R14: 0000000000000007 R15: 00007f1cc07064c2
</TASK>
----------------
Code disassembly (best guess):
0: cc int3
1: e8 d3 91 ec fc call 0xfcec91d9
6: 48 8d 3d bc c2 0e 0c lea 0xc0ec2bc(%rip),%rdi # 0xc0ec2c9
d: 67 48 0f b9 3a ud1 (%edx),%rdi
12: e8 c2 91 ec fc call 0xfcec91d9
17: 5b pop %rbx
18: 5d pop %rbp
19: e9 9b 52 a0 06 jmp 0x6a052b9
1e: e8 b6 91 ec fc call 0xfcec91d9
23: 48 8d 3d af c2 0e 0c lea 0xc0ec2af(%rip),%rdi # 0xc0ec2d9
* 2a: 67 48 0f b9 3a ud1 (%edx),%rdi <-- trapping instruction
2f: e8 a5 91 ec fc call 0xfcec91d9
34: 5b pop %rbx
35: 5d pop %rbp
36: e9 7e 52 a0 06 jmp 0x6a052b9
3b: 48 89 df mov %rbx,%rdi
3e: e8 .byte 0xe8
3f: 56 push %rsi


Tested on:

commit: dac3e89a Merge tag 'drm-fixes-2026-08-15' of https://g..
git tree: upstream
console output: https://syzkaller.appspot.com/x/log.txt?x=13452949580000
kernel config: https://syzkaller.appspot.com/x/.config?x=c44651ea7dd2f307
dashboard link: https://syzkaller.appspot.com/bug?extid=989ff6506f5c6d1ff56b
compiler: gcc (Debian 14.2.0-19) 14.2.0, GNU ld (GNU Binutils for Debian) 2.44
patch: https://syzkaller.appspot.com/x/patch.diff?x=1339d279580000