syzbot


KCSAN: data-race in fasync_remove_entry / sock_wake_async (12)

Status: moderation: reported on 2024/06/18 10:08
Subsystems: fs
[Documentation on labels]
Reported-by: syzbot+d7ef1d605864d2350c74@syzkaller.appspotmail.com
First crash: 111d, last: 11d
Similar bugs (11)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KCSAN: data-race in fasync_remove_entry / sock_wake_async (4) fs 1 1507d 1507d 0/28 auto-closed as invalid on 2020/09/26 10:37
upstream KCSAN: data-race in fasync_remove_entry / sock_wake_async (10) fs 1 589d 589d 0/28 auto-obsoleted due to no activity on 2023/04/24 02:17
upstream KCSAN: data-race in fasync_remove_entry / sock_wake_async fs 1 1665d 1665d 0/28 auto-closed as invalid on 2020/05/26 22:23
upstream KCSAN: data-race in fasync_remove_entry / sock_wake_async (5) fs 3 1234d 1271d 0/28 auto-closed as invalid on 2021/06/26 18:07
upstream KCSAN: data-race in fasync_remove_entry / sock_wake_async (8) fs 1 931d 931d 0/28 auto-closed as invalid on 2022/04/26 03:12
upstream KCSAN: data-race in fasync_remove_entry / sock_wake_async (6) fs 2 1030d 1058d 0/28 auto-closed as invalid on 2022/01/16 09:31
upstream KCSAN: data-race in fasync_remove_entry / sock_wake_async (2) fs 1 1591d 1591d 0/28 closed as invalid on 2020/06/18 14:13
upstream KCSAN: data-race in fasync_remove_entry / sock_wake_async (9) fs 2 715d 720d 0/28 auto-obsoleted due to no activity on 2022/11/28 02:38
upstream KCSAN: data-race in fasync_remove_entry / sock_wake_async (11) fs 1 494d 494d 0/28 auto-obsoleted due to no activity on 2023/07/06 10:32
upstream KCSAN: data-race in fasync_remove_entry / sock_wake_async (3) fs 1 1559d 1559d 0/28 auto-closed as invalid on 2020/08/05 10:16
upstream KCSAN: data-race in fasync_remove_entry / sock_wake_async (7) fs 1 976d 976d 0/28 auto-closed as invalid on 2022/03/11 19:41

Sample crash report:
==================================================================
BUG: KCSAN: data-race in fasync_remove_entry / sock_wake_async

write to 0xffff888104d62758 of 8 bytes by task 14566 on cpu 0:
 fasync_remove_entry+0xd2/0x130 fs/fcntl.c:1008
 fasync_helper+0x96/0xc0 fs/fcntl.c:1107
 sock_fasync+0x5a/0xc0 net/socket.c:1452
 __fput+0x664/0x6d0 fs/file_table.c:428
 ____fput+0x1c/0x30 fs/file_table.c:459
 task_work_run+0x13a/0x1a0 kernel/task_work.c:228
 resume_user_mode_work include/linux/resume_user_mode.h:50 [inline]
 exit_to_user_mode_loop kernel/entry/common.c:114 [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+0xbe/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 0xffff888104d62758 of 8 bytes by task 14564 on cpu 1:
 sock_wake_async+0x2a/0x120 net/socket.c:1467
 sk_wake_async_rcu include/net/sock.h:2450 [inline]
 unix_write_space+0x135/0x140 net/unix/af_unix.c:618
 sock_wfree+0x147/0x3b0 net/core/sock.c:2571
 unix_destruct_scm+0xc5/0xf0 net/unix/af_unix.c:1884
 skb_release_head_state+0xbb/0x1b0 net/core/skbuff.c:1177
 skb_release_all net/core/skbuff.c:1188 [inline]
 __kfree_skb+0x16/0x150 net/core/skbuff.c:1204
 sk_skb_reason_drop+0xba/0x290 net/core/skbuff.c:1242
 kfree_skb_reason include/linux/skbuff.h:1262 [inline]
 kfree_skb include/linux/skbuff.h:1271 [inline]
 unix_release_sock+0x603/0x750 net/unix/af_unix.c:724
 unix_release+0x57/0x80 net/unix/af_unix.c:1109
 __sock_release net/socket.c:659 [inline]
 sock_close+0x68/0x150 net/socket.c:1427
 __fput+0x17a/0x6d0 fs/file_table.c:431
 ____fput+0x1c/0x30 fs/file_table.c:459
 task_work_run+0x13a/0x1a0 kernel/task_work.c:228
 resume_user_mode_work include/linux/resume_user_mode.h:50 [inline]
 exit_to_user_mode_loop kernel/entry/common.c:114 [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+0xbe/0x130 kernel/entry/common.c:218
 do_syscall_64+0xd6/0x1c0 arch/x86/entry/common.c:89
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

value changed: 0xffff888115bf3330 -> 0x0000000000000000

Reported by Kernel Concurrency Sanitizer on:
CPU: 1 UID: 0 PID: 14564 Comm: syz.4.1857 Tainted: G        W          6.11.0-syzkaller-10669-g11a299a7933e #0
Tainted: [W]=WARN
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024
==================================================================

Crashes (14):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/09/26 23:44 upstream 11a299a7933e 9314348a .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in fasync_remove_entry / sock_wake_async
2024/09/12 08:02 upstream 7c6a3a65ace7 d94c83d8 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in fasync_remove_entry / sock_wake_async
2024/09/04 08:01 upstream 88fac17500f4 9d47f20a .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in fasync_remove_entry / sock_wake_async
2024/08/07 18:47 upstream 6a0e38264012 109d2082 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in fasync_remove_entry / sock_wake_async
2024/07/30 17:08 upstream 94ede2a3e913 6fde257d .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in fasync_remove_entry / sock_wake_async
2024/07/30 13:09 upstream 94ede2a3e913 5187fc86 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in fasync_remove_entry / sock_wake_async
2024/07/23 23:56 upstream 28bbe4ea686a e50e8da5 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in fasync_remove_entry / sock_wake_async
2024/07/20 09:27 upstream 3c3ff7be9729 b88348e9 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in fasync_remove_entry / sock_wake_async
2024/07/16 16:01 upstream d67978318827 b66b37bd .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in fasync_remove_entry / sock_wake_async
2024/07/11 13:19 upstream 9d9a2f29aefd c699c2eb .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in fasync_remove_entry / sock_wake_async
2024/07/05 11:04 upstream 661e504db04c 2a40360c .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in fasync_remove_entry / sock_wake_async
2024/07/04 09:38 upstream 795c58e4c7fc 3f2748a3 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in fasync_remove_entry / sock_wake_async
2024/06/23 02:14 upstream 563a50672d8a edc5149a .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in fasync_remove_entry / sock_wake_async
2024/06/18 10:08 upstream 14d7c92f8df9 ce6011bc .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in fasync_remove_entry / sock_wake_async
* Struck through repros no longer work on HEAD.