[moderation] [mm?] KCSAN: data-race in call_rcu / mtree_range_walk

2 views
Skip to first unread message

syzbot

unread,
Jan 9, 2024, 9:34:28 PMJan 9
to syzkaller-upst...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: 35f11a3710cd Merge tag 'mtd/for-6.8' of git://git.kernel.o..
git tree: upstream
console output: https://syzkaller.appspot.com/x/log.txt?x=1349f06de80000
kernel config: https://syzkaller.appspot.com/x/.config?x=c92fce0e03e3e144
dashboard link: https://syzkaller.appspot.com/bug?extid=56733c45889f22c3847b
compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40
CC: [ak...@linux-foundation.org linux-...@vger.kernel.org linu...@kvack.org]

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

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/c7a0c839db73/disk-35f11a37.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/ddb21ec98aea/vmlinux-35f11a37.xz
kernel image: https://storage.googleapis.com/syzbot-assets/c26f902a2ea8/bzImage-35f11a37.xz

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

==================================================================
BUG: KCSAN: data-race in call_rcu / mtree_range_walk

write to 0xffff888104080e08 of 8 bytes by task 10453 on cpu 1:
__call_rcu_common kernel/rcu/tree.c:2680 [inline]
call_rcu+0x49/0x410 kernel/rcu/tree.c:2795
ma_free_rcu lib/maple_tree.c:197 [inline]
mas_free lib/maple_tree.c:1304 [inline]
mas_replace_node+0x2f8/0x430 lib/maple_tree.c:1741
mas_wr_node_store lib/maple_tree.c:3958 [inline]
mas_wr_modify+0x2bbf/0x3c80 lib/maple_tree.c:4191
mas_wr_store_entry+0x250/0x390 lib/maple_tree.c:4231
mas_store_prealloc+0x151/0x2a0 lib/maple_tree.c:5437
vma_iter_store mm/internal.h:1185 [inline]
vma_complete+0x3a5/0x760 mm/mmap.c:532
__split_vma+0x57e/0x600 mm/mmap.c:2379
split_vma mm/mmap.c:2405 [inline]
vma_modify+0x152/0x240 mm/mmap.c:2440
vma_modify_flags include/linux/mm.h:3283 [inline]
mprotect_fixup+0x324/0x5c0 mm/mprotect.c:635
do_mprotect_pkey+0x64c/0x930 mm/mprotect.c:809
__do_sys_mprotect mm/mprotect.c:830 [inline]
__se_sys_mprotect mm/mprotect.c:827 [inline]
__x64_sys_mprotect+0x48/0x50 mm/mprotect.c:827
do_syscall_x64 arch/x86/entry/common.c:52 [inline]
do_syscall_64+0x59/0x120 arch/x86/entry/common.c:83
entry_SYSCALL_64_after_hwframe+0x63/0x6b

read to 0xffff888104080e08 of 8 bytes by task 10454 on cpu 0:
mtree_range_walk+0x140/0x450 lib/maple_tree.c:2776
mas_state_walk lib/maple_tree.c:3680 [inline]
mas_walk+0x16e/0x320 lib/maple_tree.c:4861
lock_vma_under_rcu+0x84/0x290 mm/memory.c:5602
do_user_addr_fault arch/x86/mm/fault.c:1356 [inline]
handle_page_fault arch/x86/mm/fault.c:1507 [inline]
exc_page_fault+0x164/0x6d0 arch/x86/mm/fault.c:1563
asm_exc_page_fault+0x26/0x30 arch/x86/include/asm/idtentry.h:570

value changed: 0x000000001fffefff -> 0x0000000000000000

Reported by Kernel Concurrency Sanitizer on:
CPU: 0 PID: 10454 Comm: syz-executor.4 Not tainted 6.7.0-syzkaller-01367-g35f11a3710cd #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 11/17/2023
==================================================================


---
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