[moderation] [mm?] KCSAN: data-race in do_sync_mmap_readahead / read_pages (3)

0 views
Skip to first unread message

syzbot

unread,
Dec 26, 2024, 3:58:23 PM (17 hours ago) Dec 26
to syzkaller-upst...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: 9b2ffa6148b1 Merge tag 'mtd/fixes-for-6.13-rc5' of git://g..
git tree: upstream
console output: https://syzkaller.appspot.com/x/log.txt?x=1298a0b0580000
kernel config: https://syzkaller.appspot.com/x/.config?x=87d3cfca6847d1fa
dashboard link: https://syzkaller.appspot.com/bug?extid=0f3328770e6f45182c93
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/8f3f5cceed80/disk-9b2ffa61.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/1ba00b70d91e/vmlinux-9b2ffa61.xz
kernel image: https://storage.googleapis.com/syzbot-assets/b99c1bb4d63f/bzImage-9b2ffa61.xz

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

==================================================================
BUG: KCSAN: data-race in do_sync_mmap_readahead / read_pages

write to 0xffff88811c4c99a0 of 4 bytes by task 28492 on cpu 0:
do_sync_mmap_readahead+0x236/0x2a0 mm/filemap.c:3200
filemap_fault+0x32f/0xb30 mm/filemap.c:3344
__do_fault+0xb6/0x200 mm/memory.c:4907
do_read_fault mm/memory.c:5322 [inline]
do_fault mm/memory.c:5456 [inline]
do_pte_missing mm/memory.c:3979 [inline]
handle_pte_fault mm/memory.c:5801 [inline]
__handle_mm_fault mm/memory.c:5944 [inline]
handle_mm_fault+0xe98/0x2ac0 mm/memory.c:6112
faultin_page mm/gup.c:1196 [inline]
__get_user_pages+0xf2c/0x2670 mm/gup.c:1494
populate_vma_page_range mm/gup.c:1932 [inline]
__mm_populate+0x25b/0x3b0 mm/gup.c:2035
do_mlock+0x415/0x510 mm/mlock.c:653
__do_sys_mlock mm/mlock.c:661 [inline]
__se_sys_mlock mm/mlock.c:659 [inline]
__x64_sys_mlock+0x36/0x40 mm/mlock.c:659
x64_sys_call+0x26b2/0x2dc0 arch/x86/include/generated/asm/syscalls_64.h:150
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-write to 0xffff88811c4c99a0 of 4 bytes by task 28489 on cpu 1:
read_pages+0x23f/0x540 mm/readahead.c:170
page_cache_ra_unbounded+0x2b8/0x310 mm/readahead.c:295
do_page_cache_ra mm/readahead.c:325 [inline]
page_cache_ra_order+0xf7/0x110 mm/readahead.c:524
do_sync_mmap_readahead+0x267/0x2a0 mm/filemap.c:3203
filemap_fault+0x32f/0xb30 mm/filemap.c:3344
__do_fault+0xb6/0x200 mm/memory.c:4907
do_read_fault mm/memory.c:5322 [inline]
do_fault mm/memory.c:5456 [inline]
do_pte_missing mm/memory.c:3979 [inline]
handle_pte_fault mm/memory.c:5801 [inline]
__handle_mm_fault mm/memory.c:5944 [inline]
handle_mm_fault+0xe98/0x2ac0 mm/memory.c:6112
faultin_page mm/gup.c:1196 [inline]
__get_user_pages+0xf2c/0x2670 mm/gup.c:1494
populate_vma_page_range mm/gup.c:1932 [inline]
__mm_populate+0x25b/0x3b0 mm/gup.c:2035
mm_populate include/linux/mm.h:3396 [inline]
vm_mmap_pgoff+0x1d6/0x290 mm/util.c:585
ksys_mmap_pgoff+0x286/0x330 mm/mmap.c:542
x64_sys_call+0x1940/0x2dc0 arch/x86/include/generated/asm/syscalls_64.h:10
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: 0x00000015 -> 0x00000020

Reported by Kernel Concurrency Sanitizer on:
CPU: 1 UID: 0 PID: 28489 Comm: syz.1.8769 Tainted: G W 6.13.0-rc4-syzkaller-00012-g9b2ffa6148b1 #0
Tainted: [W]=WARN
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/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