__x64_sys_io_uring_setup+0xc8/0x170
do_syscall_64+0xbf/0x360
entry_SYSCALL_64_after_hwframe+0x77/0x7f
------------[ cut here ]------------
percpu ref (free_ioctx_users) <= 0 (-4294967295) after switching to atomic
WARNING: lib/percpu-refcount.c:197 at percpu_ref_switch_to_atomic_rcu+0x3cc/0x480, CPU#1: syz-executor.3/284
Modules linked in:
CPU: 1 UID: 0 PID: 284 Comm: syz-executor.3 Tainted: G W 6.17.0-rc3-next-20250829 #1 PREEMPT(voluntary)
Tainted: [W]=WARN
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.12.0-1 04/01/2014
RIP: 0010:percpu_ref_switch_to_atomic_rcu+0x3cc/0x480
Code: 00 00 00 00 00 fc ff df 48 89 f9 48 c1 e9 03 80 3c 01 00 0f 85 9e 00 00 00 49 8b 75 e8 48 c7 c7 80 97 e2 84 e8 75 c5 e9 fe 90 <0f> 0b 90 90 e9 2b ff ff ff e8 f6 de 5f ff e9 9e fe ff ff e8 7c df
RSP: 0018:ffff88806cf08e20 EFLAGS: 00010286
RAX: 0000000000000000 RBX: 0000000000000000 RCX: ffffffff8139de70
RDX: ffff888016a29b80 RSI: ffffffff8139de7e RDI: 0000000000000001
RBP: 7fffffff00000000 R08: 0000000000000001 R09: ffffed100d9e4801
R10: 0000000000000000 R11: 0000000000000001 R12: ffff88800cb3eb00
R13: ffff88800cb3eb20 R14: 0000000000000002 R15: 0000000000000003
FS: 000055558813b400(0000) GS:ffff8880e56dd000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f425a3a3780 CR3: 000000003984e000 CR4: 0000000000350ef0
Call Trace:
rcu_core+0x7c8/0x1800
handle_softirqs+0x1b1/0x770
__irq_exit_rcu+0xc4/0x100
irq_exit_rcu+0x9/0x20
sysvec_apic_timer_interrupt+0x70/0x80
asm_sysvec_apic_timer_interrupt+0x1a/0x20
RIP: 0010:finish_task_switch.isra.0+0x20f/0x840
Code: 4c 89 ff 48 c7 03 00 00 00 00 e8 dc ee 76 03 4d 85 e4 75 ba 4c 89 ff e8 3f d5 76 03 e8 fa 1e 35 00 fb 65 48 8b 1d 99 22 3d 06 <48> 8d bb f0 14 00 00 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1
RSP: 0018:ffff88801b07fac0 EFLAGS: 00000202
RAX: 000000000002adab RBX: ffff888016a29b80 RCX: ffffffff817c2b86
RDX: 0000000000000000 RSI: 0000000000000000 RDI: ffffffff81470d76
RBP: ffff88801b07fb00 R08: 0000000000000001 R09: 0000000000000001
R10: ffffffff8643ac57 R11: 0000000000000001 R12: ffff88806cf36ed8
R13: ffff888033b88000 R14: ffff888033b88000 R15: ffff88806cf36ec0
__schedule+0xe86/0x3590
schedule+0xdb/0x390
do_nanosleep+0x15e/0x560
kmemleak: Found object by alias at 0x607f1a629fa4
CPU: 0 UID: 0 PID: 4016 Comm: iou-sqp-4007 Tainted: G W 6.17.0-rc3-next-20250829 #1 PREEMPT(voluntary)
Tainted: [W]=WARN
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.12.0-1 04/01/2014
Call Trace:
dump_stack_lvl+0xca/0x120
__lookup_object+0x94/0xb0
delete_object_full+0x27/0x70
free_percpu+0x30/0x1160
percpu_counter_destroy_many+0x188/0x2b0
__io_uring_free+0x134/0x1e0
io_uring_cancel_generic+0x814/0x960
io_sq_thread+0xd50/0x1b00
ret_from_fork+0x34b/0x430
ret_from_fork_asm+0x1a/0x30
kmemleak: Object (percpu) 0x607f1a629fa0 (size 8):
kmemleak: comm "syz-executor.6", pid 4007, jiffies 4294798730
kmemleak: min_count = 1
kmemleak: count = 0
kmemleak: flags = 0x21
kmemleak: checksum = 0
kmemleak: backtrace:
pcpu_alloc_noprof+0x87a/0x1170
percpu_ref_init+0x37/0x400
io_uring_setup+0x44c/0x2000
__x64_sys_io_uring_setup+0xc8/0x170
do_syscall_64+0xbf/0x360
entry_SYSCALL_64_after_hwframe+0x77/0x7f
kmemleak: Automatic memory scanning thread ended
hrtimer_nanosleep+0x13a/0x340
common_nsleep+0xaa/0xd0
__x64_sys_clock_nanosleep+0x331/0x470
do_syscall_64+0xbf/0x360
entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7f829b3dd8e1
Code: 24 0c 89 3c 24 48 89 4c 24 18 e8 aa e7 ff ff 4c 8b 54 24 18 48 8b 54 24 10 41 89 c0 8b 74 24 0c 8b 3c 24 b8 e6 00 00 00 0f 05 <44> 89 c7 48 89 04 24 e8 e3 e7 ff ff 48 8b 04 24 eb 97 66 2e 0f 1f
RSP: 002b:00007ffd968348f0 EFLAGS: 00000293 ORIG_RAX: 00000000000000e6
RAX: ffffffffffffffda RBX: 000000000000000e RCX: 00007f829b3dd8e1
RDX: 00007ffd96834930 RSI: 0000000000000000 RDI: 0000000000000000
RBP: 00007ffd968349bc R08: 0000000000000000 R09: 00007f829b4a8000
R10: 0000000000000000 R11: 0000000000000293 R12: 0000000000000032
R13: 000000000002037a R14: 0000000000000010 R15: 00007ffd96834a20
irq event stamp: 176470
hardirqs last enabled at (176480): [] __up_console_sem+0x78/0x80
hardirqs last disabled at (176489): [] __up_console_sem+0x5d/0x80
softirqs last enabled at (173926): [] handle_softirqs+0x50c/0x770
softirqs last disabled at (175533): [] __irq_exit_rcu+0xc4/0x100
---[ end trace 0000000000000000 ]---
percpu_ref_switch_to_atomic_rcu: percpu_ref_switch_to_atomic_rcu(): percpu_ref underflow slab kmalloc-64 start ffff88800cb3eb00 pointer offset 0 size 64
UDC core: USB Raw Gadget: couldn't find an available UDC or it's busy
misc raw-gadget: fail, usb_gadget_register_driver returned -16
----------------
Code disassembly (best guess):
0: 4c 89 ff mov %r15,%rdi
3: 48 c7 03 00 00 00 00 movq $0x0,(%rbx)
a: e8 dc ee 76 03 callq 0x376eeeb
f: 4d 85 e4 test %r12,%r12
12: 75 ba jne 0xffffffce
14: 4c 89 ff mov %r15,%rdi
17: e8 3f d5 76 03 callq 0x376d55b
1c: e8 fa 1e 35 00 callq 0x351f1b
21: fb sti
22: 65 48 8b 1d 99 22 3d mov %gs:0x63d2299(%rip),%rbx # 0x63d22c3
29: 06
* 2a: 48 8d bb f0 14 00 00 lea 0x14f0(%rbx),%rdi <-- trapping instruction
31: 48 b8 00 00 00 00 00 movabs $0xdffffc0000000000,%rax
38: fc ff df
3b: 48 89 fa mov %rdi,%rdx
3e: 48 rex.W
3f: c1 .byte 0xc1