syzbot


KCSAN: data-race in __dentry_kill / shrink_dentry_list (4)

Status: moderation: reported on 2024/08/28 04:40
Subsystems: fs
[Documentation on labels]
Reported-by: syzbot+538fba06592ef21b512c@syzkaller.appspotmail.com
First crash: 17d, last: 17d
Similar bugs (3)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KCSAN: data-race in __dentry_kill / shrink_dentry_list fs 1 1488d 1488d 0/28 auto-closed as invalid on 2020/09/22 04:21
upstream KCSAN: data-race in __dentry_kill / shrink_dentry_list (3) fs 10 120d 234d 0/28 auto-obsoleted due to no activity on 2024/06/21 18:39
upstream KCSAN: data-race in __dentry_kill / shrink_dentry_list (2) fs 1 1217d 1217d 0/28 auto-closed as invalid on 2021/06/20 12:41

Sample crash report:
RBP: 00007f9a92987090 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000001
R13: 0000000000000000 R14: 00007f9a93ea5f80 R15: 00007ffddb3738f8
 </TASK>
==================================================================
BUG: KCSAN: data-race in __dentry_kill / shrink_dentry_list

read-write to 0xffff8881063fc0c0 of 4 bytes by task 11708 on cpu 0:
 d_shrink_del fs/dcache.c:456 [inline]
 shrink_dentry_list+0x19f/0x3e0 fs/dcache.c:1081
 shrink_dcache_parent+0x43/0x1b0
 d_invalidate+0xa9/0x1c0 fs/dcache.c:1599
 proc_invalidate_siblings_dcache+0x1db/0x2b0 fs/proc/inode.c:142
 proc_flush_pid+0x1d/0x30 fs/proc/base.c:3419
 release_task+0xad9/0xc20 kernel/exit.c:280
 wait_task_zombie kernel/exit.c:1193 [inline]
 wait_consider_task+0x116e/0x1680 kernel/exit.c:1420
 do_wait_thread kernel/exit.c:1483 [inline]
 __do_wait+0x100/0x500 kernel/exit.c:1601
 do_wait+0xaf/0x270 kernel/exit.c:1635
 kernel_wait4+0x164/0x1d0 kernel/exit.c:1794
 __do_sys_wait4 kernel/exit.c:1822 [inline]
 __se_sys_wait4 kernel/exit.c:1818 [inline]
 __x64_sys_wait4+0x94/0x120 kernel/exit.c:1818
 x64_sys_call+0x2529/0x2d60 arch/x86/include/generated/asm/syscalls_64.h:62
 do_syscall_x64 arch/x86/entry/common.c:52 [inline]
 do_syscall_64+0xc9/0x1c0 arch/x86/entry/common.c:83
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

read to 0xffff8881063fc0c0 of 4 bytes by task 17231 on cpu 1:
 dentry_unlist fs/dcache.c:580 [inline]
 __dentry_kill+0x2af/0x4c0 fs/dcache.c:624
 dput+0x5c/0xd0 fs/dcache.c:852
 proc_invalidate_siblings_dcache+0x1e3/0x2b0 fs/proc/inode.c:143
 proc_flush_pid+0x1d/0x30 fs/proc/base.c:3419
 release_task+0xb7f/0xc20 kernel/exit.c:280
 exit_notify kernel/exit.c:776 [inline]
 do_exit+0xf62/0x1720 kernel/exit.c:902
 do_group_exit+0x102/0x150 kernel/exit.c:1031
 get_signal+0xf2f/0x1080 kernel/signal.c:2917
 arch_do_signal_or_restart+0x95/0x4b0 arch/x86/kernel/signal.c:310
 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

value changed: 0x0048040c -> 0x0000000c

Reported by Kernel Concurrency Sanitizer on:
CPU: 1 UID: 0 PID: 17231 Comm: syz.4.1392 Not tainted 6.11.0-rc5-syzkaller-00050-g3ec3f5fc4a91 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 08/06/2024
==================================================================

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/08/28 04:39 upstream 3ec3f5fc4a91 6c853ff9 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __dentry_kill / shrink_dentry_list
* Struck through repros no longer work on HEAD.