syzbot


KCSAN: data-race in io_req_defer_failed / io_wq_free_work (3)

Status: upstream: reported on 2024/10/17 08:20
Subsystems: io-uring
[Documentation on labels]
Reported-by: syzbot+2b8e48083b04a2e58fab@syzkaller.appspotmail.com
First crash: 34d, last: 33d
Discussions (1)
Title Replies (including bot) Last reply
[syzbot] [io-uring?] KCSAN: data-race in io_req_defer_failed / io_wq_free_work (3) 1 (2) 2024/10/17 12:00
Similar bugs (2)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KCSAN: data-race in io_req_defer_failed / io_wq_free_work io-uring 3 172d 199d 0/28 auto-obsoleted due to no activity on 2024/07/07 04:35
upstream KCSAN: data-race in io_req_defer_failed / io_wq_free_work (2) io-uring 6 89d 101d 0/28 auto-obsoleted due to no activity on 2024/09/27 22:32

Sample crash report:
==================================================================
BUG: KCSAN: data-race in io_req_defer_failed / io_wq_free_work

write to 0xffff888108a4be48 of 8 bytes by task 2124 on cpu 1:
 io_req_defer_failed+0x73/0x440 io_uring/io_uring.c:935
 io_req_task_cancel+0x21/0x30 io_uring/io_uring.c:1361
 io_handle_tw_list+0x1b9/0x200 io_uring/io_uring.c:1063
 tctx_task_work_run+0x6c/0x1b0 io_uring/io_uring.c:1135
 tctx_task_work+0x40/0x80 io_uring/io_uring.c:1153
 task_work_run+0x13a/0x1a0 kernel/task_work.c:228
 get_signal+0xee9/0x1070 kernel/signal.c:2690
 arch_do_signal_or_restart+0x95/0x4b0 arch/x86/kernel/signal.c:337
 exit_to_user_mode_loop kernel/entry/common.c:111 [inline]
 exit_to_user_mode_prepare include/linux/entry-common.h:328 [inline]
 __syscall_exit_to_user_mode_work kernel/entry/common.c:207 [inline]
 syscall_exit_to_user_mode+0x59/0x130 kernel/entry/common.c:218
 do_syscall_64+0xd6/0x1c0 arch/x86/entry/common.c:89
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

read to 0xffff888108a4be48 of 8 bytes by task 2129 on cpu 0:
 req_ref_put_and_test io_uring/refs.h:22 [inline]
 io_wq_free_work+0x21/0x160 io_uring/io_uring.c:1779
 io_worker_handle_work+0x4cb/0x9d0 io_uring/io-wq.c:604
 io_wq_worker+0x286/0x820 io_uring/io-wq.c:655
 ret_from_fork+0x4b/0x60 arch/x86/kernel/process.c:147
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244

value changed: 0x00000000802c2058 -> 0x00000000806c2118

Reported by Kernel Concurrency Sanitizer on:
CPU: 0 UID: 0 PID: 2129 Comm: iou-wrk-2124 Not tainted 6.12.0-rc3-syzkaller-00217-g4d939780b705 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024
==================================================================

Crashes (2):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/10/18 15:00 upstream 4d939780b705 666f77ed .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in io_req_defer_failed / io_wq_free_work
2024/10/17 07:09 upstream c964ced77262 666f77ed .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in io_req_defer_failed / io_wq_free_work
* Struck through repros no longer work on HEAD.