[moderation] [kernfs?] KCSAN: data-race in kernfs_iop_permission / kernfs_iop_permission (4)

0 views
Skip to first unread message

syzbot

unread,
Jun 30, 2024, 8:14:22 PM (2 days ago) Jun 30
to syzkaller-upst...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: 22a40d14b572 Linux 6.10-rc6
git tree: upstream
console output: https://syzkaller.appspot.com/x/log.txt?x=140ac085980000
kernel config: https://syzkaller.appspot.com/x/.config?x=5b9537cd00be479e
dashboard link: https://syzkaller.appspot.com/bug?extid=cd7299efd53d383f40c3
compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40
CC: [gre...@linuxfoundation.org linux-...@vger.kernel.org t...@kernel.org]

Unfortunately, I don't have any reproducer for this issue yet.

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/ebe2f3933faf/disk-22a40d14.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/7227032da0fe/vmlinux-22a40d14.xz
kernel image: https://storage.googleapis.com/syzbot-assets/a330dc1e107b/bzImage-22a40d14.xz

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: syzbot+cd7299...@syzkaller.appspotmail.com

==================================================================
BUG: KCSAN: data-race in kernfs_iop_permission / kernfs_iop_permission

write to 0xffff8881040ba060 of 8 bytes by task 11628 on cpu 0:
inode_set_atime_to_ts include/linux/fs.h:1557 [inline]
set_inode_attr fs/kernfs/inode.c:162 [inline]
kernfs_refresh_inode fs/kernfs/inode.c:177 [inline]
kernfs_iop_permission+0x118/0x220 fs/kernfs/inode.c:288
do_inode_permission fs/namei.c:461 [inline]
inode_permission+0x18c/0x300 fs/namei.c:528
may_lookup fs/namei.c:1726 [inline]
link_path_walk+0x1b8/0x810 fs/namei.c:2273
path_lookupat+0x72/0x2b0 fs/namei.c:2492
filename_lookup+0x127/0x300 fs/namei.c:2522
user_path_at_empty+0x42/0x120 fs/namei.c:2929
user_path_at include/linux/namei.h:58 [inline]
ksys_umount fs/namespace.c:1916 [inline]
__do_sys_umount fs/namespace.c:1924 [inline]
__se_sys_umount fs/namespace.c:1922 [inline]
__x64_sys_umount+0x88/0xe0 fs/namespace.c:1922
x64_sys_call+0x3af/0x2d70 arch/x86/include/generated/asm/syscalls_64.h:167
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

write to 0xffff8881040ba060 of 8 bytes by task 11589 on cpu 1:
inode_set_atime_to_ts include/linux/fs.h:1557 [inline]
set_inode_attr fs/kernfs/inode.c:162 [inline]
kernfs_refresh_inode fs/kernfs/inode.c:177 [inline]
kernfs_iop_permission+0x118/0x220 fs/kernfs/inode.c:288
do_inode_permission fs/namei.c:461 [inline]
inode_permission+0x18c/0x300 fs/namei.c:528
may_lookup fs/namei.c:1726 [inline]
link_path_walk+0x1b8/0x810 fs/namei.c:2273
path_parentat fs/namei.c:2540 [inline]
__filename_parentat+0x13c/0x3c0 fs/namei.c:2564
filename_parentat fs/namei.c:2582 [inline]
do_unlinkat+0x9b/0x4c0 fs/namei.c:4382
__do_sys_unlink fs/namei.c:4455 [inline]
__se_sys_unlink fs/namei.c:4453 [inline]
__x64_sys_unlink+0x30/0x40 fs/namei.c:4453
x64_sys_call+0x28a3/0x2d70 arch/x86/include/generated/asm/syscalls_64.h:88
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

value changed: 0x0000000030ac424b -> 0x0000000000a4528a

Reported by Kernel Concurrency Sanitizer on:
CPU: 1 PID: 11589 Comm: syz-executor Not tainted 6.10.0-rc6-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 06/07/2024
==================================================================


---
This report is generated by a bot. It may contain errors.
See https://goo.gl/tpsmEJ for more information about syzbot.
syzbot engineers can be reached at syzk...@googlegroups.com.

syzbot will keep track of this issue. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.

If the report is already addressed, let syzbot know by replying with:
#syz fix: exact-commit-title

If you want to overwrite report's subsystems, reply with:
#syz set subsystems: new-subsystem
(See the list of subsystem names on the web dashboard)

If the report is a duplicate of another one, reply with:
#syz dup: exact-subject-of-another-report

If you want to undo deduplication, reply with:
#syz undup
Reply all
Reply to author
Forward
0 new messages