[syzbot] [io-uring?] [usb?] WARNING in io_get_cqe_overflow (2)

From: syzbot
Date: Mon Nov 04 2024 - 05:36:40 EST


Hello,

syzbot found the following issue on:

HEAD commit: c88416ba074a Add linux-next specific files for 20241101
git tree: linux-next
console+strace: https://syzkaller.appspot.com/x/log.txt?x=14c04740580000
kernel config: https://syzkaller.appspot.com/x/.config?x=704b6be2ac2f205f
dashboard link: https://syzkaller.appspot.com/bug?extid=e333341d3d985e5173b2
compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40
syz repro: https://syzkaller.appspot.com/x/repro.syz?x=16ec06a7980000
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=12c04740580000

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/760a8c88d0c3/disk-c88416ba.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/46e4b0a851a2/vmlinux-c88416ba.xz
kernel image: https://storage.googleapis.com/syzbot-assets/428e2c784b75/bzImage-c88416ba.xz

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: syzbot+e333341d3d985e5173b2@xxxxxxxxxxxxxxxxxxxxxxxxx

------------[ cut here ]------------
WARNING: CPU: 1 PID: 3508 at io_uring/io_uring.h:142 io_lockdep_assert_cq_locked io_uring/io_uring.h:142 [inline]
WARNING: CPU: 1 PID: 3508 at io_uring/io_uring.h:142 io_get_cqe_overflow+0x43f/0x590 io_uring/io_uring.h:166
Modules linked in:
CPU: 1 UID: 0 PID: 3508 Comm: kworker/u8:8 Not tainted 6.12.0-rc5-next-20241101-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024
Workqueue: iou_exit io_ring_exit_work
RIP: 0010:io_lockdep_assert_cq_locked io_uring/io_uring.h:142 [inline]
RIP: 0010:io_get_cqe_overflow+0x43f/0x590 io_uring/io_uring.h:166
Code: 0f 0b 90 e9 62 fc ff ff e8 fe 43 ec fc 90 0f 0b 90 e9 90 fe ff ff e8 f0 43 ec fc 90 0f 0b 90 e9 82 fe ff ff e8 e2 43 ec fc 90 <0f> 0b 90 e9 74 fe ff ff e8 d4 43 ec fc 90 0f 0b 90 e9 66 fe ff ff
RSP: 0018:ffffc9000d0df810 EFLAGS: 00010293
RAX: ffffffff84a97a1e RBX: ffff888034e58000 RCX: ffff888032328000
RDX: 0000000000000000 RSI: 0000000000000001 RDI: 0000000000000000
RBP: 0000000000000001 R08: ffffffff84a97821 R09: fffff52001a1befc
R10: dffffc0000000000 R11: fffff52001a1befc R12: 0000000000000000
R13: dffffc0000000000 R14: dffffc0000000000 R15: ffffc9000d0df8a0
FS: 0000000000000000(0000) GS:ffff8880b8700000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007fd6dd6c11f0 CR3: 000000004b8ac000 CR4: 00000000003526f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
<TASK>
io_get_cqe io_uring/io_uring.h:182 [inline]
io_fill_cqe_aux io_uring/io_uring.c:822 [inline]
__io_post_aux_cqe io_uring/io_uring.c:843 [inline]
io_post_aux_cqe+0xe5/0x420 io_uring/io_uring.c:855
io_free_rsrc_node+0xe3/0x220 io_uring/rsrc.c:453
io_put_rsrc_node io_uring/rsrc.h:81 [inline]
io_rsrc_data_free+0xf2/0x200 io_uring/rsrc.c:140
io_free_file_tables+0x23/0x70 io_uring/filetable.c:52
io_sqe_files_unregister+0x53/0x140 io_uring/rsrc.c:477
io_ring_ctx_free+0x49/0xdb0 io_uring/io_uring.c:2715
io_ring_exit_work+0x80f/0x8a0 io_uring/io_uring.c:2952
process_one_work kernel/workqueue.c:3229 [inline]
process_scheduled_works+0xa63/0x1850 kernel/workqueue.c:3310
worker_thread+0x870/0xd30 kernel/workqueue.c:3391
kthread+0x2f0/0x390 kernel/kthread.c:389
ret_from_fork+0x4b/0x80 arch/x86/kernel/process.c:147
ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244
</TASK>


---
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 syzkaller@xxxxxxxxxxxxxxxx.

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