syzbot


KCSAN: data-race in kernfs_iop_permission / kernfs_iop_permission (8)

Status: moderation: reported on 2025/07/04 19:17
Subsystems: kernfs
[Documentation on labels]
Reported-by: syzbot+013f2a991e66cd449c82@syzkaller.appspotmail.com
First crash: 8d14h, last: 8d14h
Similar bugs (7)
Kernel Title Rank 🛈 Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KCSAN: data-race in kernfs_iop_permission / kernfs_iop_permission kernfs 6 1 577d 577d 0/29 auto-obsoleted due to no activity on 2024/01/18 07:18
upstream KCSAN: data-race in kernfs_iop_permission / kernfs_iop_permission (2) kernfs 6 1 518d 518d 0/29 auto-obsoleted due to no activity on 2024/03/16 21:17
upstream KCSAN: data-race in kernfs_iop_permission / kernfs_iop_permission (4) kernfs 6 3 352d 373d 0/29 auto-obsoleted due to no activity on 2024/08/29 19:56
upstream KCSAN: data-race in kernfs_iop_permission / kernfs_iop_permission (3) kernfs 6 1 427d 427d 0/29 auto-obsoleted due to no activity on 2024/06/15 22:09
upstream KCSAN: data-race in kernfs_iop_permission / kernfs_iop_permission (6) kernfs 6 1 237d 237d 0/29 auto-obsoleted due to no activity on 2025/01/13 01:11
upstream KCSAN: data-race in kernfs_iop_permission / kernfs_iop_permission (7) kernfs 6 2 120d 124d 0/29 auto-obsoleted due to no activity on 2025/05/09 14:22
upstream KCSAN: data-race in kernfs_iop_permission / kernfs_iop_permission (5) kernfs 6 1 298d 298d 0/29 auto-obsoleted due to no activity on 2024/10/23 06:46

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

write to 0xffff888106de5884 of 4 bytes by task 3314 on cpu 1:
 inode_set_mtime_to_ts include/linux/fs.h:1718 [inline]
 set_inode_attr fs/kernfs/inode.c:163 [inline]
 kernfs_refresh_inode fs/kernfs/inode.c:177 [inline]
 kernfs_iop_permission+0x163/0x220 fs/kernfs/inode.c:288
 do_inode_permission fs/namei.c:526 [inline]
 inode_permission+0x1ca/0x310 fs/namei.c:593
 may_lookup fs/namei.c:1860 [inline]
 link_path_walk+0x63c/0x900 fs/namei.c:2454
 path_openat+0x1de/0x2170 fs/namei.c:4051
 do_filp_open+0x109/0x230 fs/namei.c:4082
 do_sys_openat2+0xa6/0x110 fs/open.c:1437
 do_sys_open fs/open.c:1452 [inline]
 __do_sys_openat fs/open.c:1468 [inline]
 __se_sys_openat fs/open.c:1463 [inline]
 __x64_sys_openat+0xf2/0x120 fs/open.c:1463
 x64_sys_call+0x1af/0x2fb0 arch/x86/include/generated/asm/syscalls_64.h:258
 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

write to 0xffff888106de5884 of 4 bytes by task 3310 on cpu 0:
 inode_set_mtime_to_ts include/linux/fs.h:1718 [inline]
 set_inode_attr fs/kernfs/inode.c:163 [inline]
 kernfs_refresh_inode fs/kernfs/inode.c:177 [inline]
 kernfs_iop_permission+0x163/0x220 fs/kernfs/inode.c:288
 do_inode_permission fs/namei.c:526 [inline]
 inode_permission+0x1ca/0x310 fs/namei.c:593
 may_create+0x196/0x1f0 fs/namei.c:3239
 vfs_mkdir+0x5a/0x340 fs/namei.c:4358
 do_mkdirat+0x132/0x3f0 fs/namei.c:4408
 __do_sys_mkdirat fs/namei.c:4425 [inline]
 __se_sys_mkdirat fs/namei.c:4423 [inline]
 __x64_sys_mkdirat+0x4c/0x60 fs/namei.c:4423
 x64_sys_call+0x2be0/0x2fb0 arch/x86/include/generated/asm/syscalls_64.h:259
 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: 0x3a48e9b7 -> 0x00f993fc

Reported by Kernel Concurrency Sanitizer on:
CPU: 0 UID: 0 PID: 3310 Comm: syz-executor Not tainted 6.16.0-rc4-syzkaller-00123-g4c06e63b9203 #0 PREEMPT(voluntary) 
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/07/2025
==================================================================

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/07/04 19:17 upstream 4c06e63b9203 d869b261 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in kernfs_iop_permission / kernfs_iop_permission
* Struck through repros no longer work on HEAD.