syzbot


KCSAN: data-race in pipe_release / pipe_wait_writable (3)

Status: moderation: reported on 2025/07/30 20:06
Subsystems: fs
[Documentation on labels]
Reported-by: syzbot+000b58a921cd9401742c@syzkaller.appspotmail.com
First crash: 4d04h, last: 3d16h
Similar bugs (2)
Kernel Title Rank 🛈 Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KCSAN: data-race in pipe_release / pipe_wait_writable fs 6 1 1292d 1292d 0/29 auto-closed as invalid on 2022/02/23 01:29
upstream KCSAN: data-race in pipe_release / pipe_wait_writable (2) fs 6 1 997d 997d 0/29 auto-obsoleted due to no activity on 2022/12/15 02:24

Sample crash report:
==================================================================
BUG: KCSAN: data-race in pipe_release / pipe_wait_writable

read-write to 0xffff88811b5fbf6c of 4 bytes by task 9975 on cpu 0:
 put_pipe_info fs/pipe.c:712 [inline]
 pipe_release+0x16a/0x1d0 fs/pipe.c:742
 __fput+0x298/0x650 fs/file_table.c:468
 ____fput+0x1c/0x30 fs/file_table.c:496
 task_work_run+0x131/0x1a0 kernel/task_work.c:227
 resume_user_mode_work include/linux/resume_user_mode.h:50 [inline]
 exit_to_user_mode_loop+0xe4/0x100 kernel/entry/common.c:43
 exit_to_user_mode_prepare include/linux/irq-entry-common.h:208 [inline]
 syscall_exit_to_user_mode_work include/linux/entry-common.h:175 [inline]
 syscall_exit_to_user_mode include/linux/entry-common.h:210 [inline]
 do_syscall_64+0x1d6/0x200 arch/x86/entry/syscall_64.c:100
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

read to 0xffff88811b5fbf6c of 4 bytes by task 9984 on cpu 1:
 pipe_lock fs/pipe.c:90 [inline]
 pipe_wait_writable+0x202/0x250 fs/pipe.c:1082
 wait_for_space fs/splice.c:1271 [inline]
 vmsplice_to_pipe fs/splice.c:1550 [inline]
 __do_sys_vmsplice fs/splice.c:1607 [inline]
 __se_sys_vmsplice+0x3d7/0xee0 fs/splice.c:1577
 __x64_sys_vmsplice+0x55/0x70 fs/splice.c:1577
 x64_sys_call+0x1dde/0x2ff0 arch/x86/include/generated/asm/syscalls_64.h:279
 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
 do_syscall_64+0xd2/0x200 arch/x86/entry/syscall_64.c:94
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

value changed: 0x00000002 -> 0x00000001

Reported by Kernel Concurrency Sanitizer on:
CPU: 1 UID: 0 PID: 9984 Comm: syz.1.2620 Not tainted 6.16.0-syzkaller-06699-ge8d780dcd957 #0 PREEMPT(voluntary) 
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/12/2025
==================================================================

Crashes (2):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/07/31 08:19 upstream e8d780dcd957 f8f2b4da .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in pipe_release / pipe_wait_writable
2025/07/30 20:06 upstream 4b290aae788e f8f2b4da .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in pipe_release / pipe_wait_writable
* Struck through repros no longer work on HEAD.