------------[ cut here ]------------ refcount_t: decrement hit 0; leaking memory. WARNING: lib/refcount.c:31 at refcount_warn_saturate+0x70/0x110 lib/refcount.c:31, CPU#1: syz.0.17/5877 Modules linked in: CPU: 1 UID: 0 PID: 5877 Comm: syz.0.17 Not tainted syzkaller #0 PREEMPT(full) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026 RIP: 0010:refcount_warn_saturate+0x70/0x110 lib/refcount.c:31 Code: c6 c0 fe 36 8f e8 90 e5 ee fc 83 fb 01 7e 22 83 fb 02 74 39 83 fb 03 74 47 83 fb 04 75 68 e8 f7 df ee fc 48 8d 3d b0 16 8b 0b <67> 48 0f b9 3a eb 66 85 db 74 3e 83 fb 01 75 4c e8 db df ee fc 48 RSP: 0018:ffffc900037a78c8 EFLAGS: 00010293 RAX: ffffffff84d8a429 RBX: 0000000000000004 RCX: ffff8880309bddc0 RDX: 0000000000000000 RSI: ffffffff8f36fec0 RDI: ffffffff9063bae0 RBP: ffffc900037a7a10 R08: ffff8880309bddc0 R09: 0000000000000005 R10: 0000000000000004 R11: 0000000000000000 R12: ffff888077916700 R13: dffffc0000000000 R14: ffff888077916744 R15: 0000000000000001 FS: 0000555560ca5500(0000) GS:ffff888125012000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000200000002020 CR3: 0000000074b88000 CR4: 00000000003526f0 Call Trace: __refcount_dec include/linux/refcount.h:461 [inline] refcount_dec include/linux/refcount.h:476 [inline] ref_tracker_free+0x706/0x830 lib/ref_tracker.c:303 netdev_tracker_free include/linux/netdevice.h:4545 [inline] netdev_put include/linux/netdevice.h:4562 [inline] io_close_queue io_uring/zcrx.c:582 [inline] zcrx_unregister_user+0x2d8/0x430 io_uring/zcrx.c:681 zcrx_unregister io_uring/zcrx.c:688 [inline] io_register_zcrx+0x875/0xc00 io_uring/zcrx.c:1021 __io_uring_register io_uring/register.c:942 [inline] __do_sys_io_uring_register io_uring/register.c:1040 [inline] __se_sys_io_uring_register+0xc23/0x1ab0 io_uring/register.c:1017 do_syscall_x64 arch/x86/entry/syscall_64.c:61 [inline] do_syscall_64+0x166/0x510 arch/x86/entry/syscall_64.c:84 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7f0ac339e0d9 Code: ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 e8 ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007ffdd27167e8 EFLAGS: 00000246 ORIG_RAX: 00000000000001ab RAX: ffffffffffffffda RBX: 00007f0ac3625fa0 RCX: 00007f0ac339e0d9 RDX: 0000200000000100 RSI: 0000000000000020 RDI: 0000000000000003 RBP: 00007f0ac3435024 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000001 R11: 0000000000000246 R12: 0000000000000000 R13: 00007f0ac3625fac R14: 00007f0ac3625fa0 R15: 00007f0ac3625fa0 ---------------- Code disassembly (best guess), 5 bytes skipped: 0: e8 90 e5 ee fc call 0xfceee595 5: 83 fb 01 cmp $0x1,%ebx 8: 7e 22 jle 0x2c a: 83 fb 02 cmp $0x2,%ebx d: 74 39 je 0x48 f: 83 fb 03 cmp $0x3,%ebx 12: 74 47 je 0x5b 14: 83 fb 04 cmp $0x4,%ebx 17: 75 68 jne 0x81 19: e8 f7 df ee fc call 0xfceee015 1e: 48 8d 3d b0 16 8b 0b lea 0xb8b16b0(%rip),%rdi # 0xb8b16d5 * 25: 67 48 0f b9 3a ud1 (%edx),%rdi <-- trapping instruction 2a: eb 66 jmp 0x92 2c: 85 db test %ebx,%ebx 2e: 74 3e je 0x6e 30: 83 fb 01 cmp $0x1,%ebx 33: 75 4c jne 0x81 35: e8 db df ee fc call 0xfceee015 3a: 48 rex.W