syzbot


KCSAN: data-race in pipe_release / pipe_wait_readable (4)

Status: auto-closed as invalid on 2021/12/21 16:44
Reported-by: syzbot+@syzkaller.appspotmail.com
First crash: 382d, last: 375d
similar bugs (3):
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KCSAN: data-race in pipe_release / pipe_wait_readable 1 785d 785d 0/24 auto-closed as invalid on 2020/11/06 19:13
upstream KCSAN: data-race in pipe_release / pipe_wait_readable (3) 1 624d 624d 0/24 auto-closed as invalid on 2021/04/15 21:34
upstream KCSAN: data-race in pipe_release / pipe_wait_readable (2) 1 672d 672d 0/24 auto-closed as invalid on 2021/02/26 20:27

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

write to 0xffff88813a5ad2ac of 4 bytes by task 31969 on cpu 1:
 put_pipe_info fs/pipe.c:702 [inline]
 pipe_release+0x186/0x1e0 fs/pipe.c:732
 __fput+0x295/0x520 fs/file_table.c:280
 ____fput+0x11/0x20 fs/file_table.c:313
 task_work_run+0x8e/0x110 kernel/task_work.c:164
 tracehook_notify_resume include/linux/tracehook.h:189 [inline]
 exit_to_user_mode_loop kernel/entry/common.c:175 [inline]
 exit_to_user_mode_prepare+0x160/0x190 kernel/entry/common.c:207
 __syscall_exit_to_user_mode_work kernel/entry/common.c:289 [inline]
 syscall_exit_to_user_mode+0x20/0x40 kernel/entry/common.c:300
 do_syscall_64+0x50/0xd0 arch/x86/entry/common.c:86
 entry_SYSCALL_64_after_hwframe+0x44/0xae

read to 0xffff88813a5ad2ac of 4 bytes by task 31971 on cpu 0:
 pipe_lock_nested fs/pipe.c:80 [inline]
 pipe_lock fs/pipe.c:89 [inline]
 pipe_wait_readable+0x1f7/0x240 fs/pipe.c:1045
 splice_from_pipe_next+0x25e/0x3b0 fs/splice.c:499
 __splice_from_pipe+0xaa/0x500 fs/splice.c:560
 vmsplice_to_user fs/splice.c:1229 [inline]
 __do_sys_vmsplice fs/splice.c:1324 [inline]
 __se_sys_vmsplice+0x3bd/0x9a0 fs/splice.c:1296
 __x64_sys_vmsplice+0x51/0x60 fs/splice.c:1296
 do_syscall_x64 arch/x86/entry/common.c:50 [inline]
 do_syscall_64+0x44/0xd0 arch/x86/entry/common.c:80
 entry_SYSCALL_64_after_hwframe+0x44/0xae

value changed: 0x00000002 -> 0x00000001

Reported by Kernel Concurrency Sanitizer on:
CPU: 0 PID: 31971 Comm: syz-executor.4 Not tainted 5.16.0-rc1-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
==================================================================

Crashes (2):
Manager Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Title
ci2-upstream-kcsan-gce 2021/11/16 16:37 upstream 8ab774587903 600426bd .config log report info KCSAN: data-race in pipe_release / pipe_wait_readable
ci2-upstream-kcsan-gce 2021/11/09 06:42 upstream e851dfae4371 8ab17e57 .config log report info KCSAN: data-race in pipe_release / pipe_wait_readable
* Struck through repros no longer work on HEAD.