Hello,
syzbot found the following issue on:
HEAD commit: 4ea7c1717f3f Merge tag 'for-linus' of git://
git.kernel.org..
git tree: upstream
console output:
https://syzkaller.appspot.com/x/log.txt?x=122bfa92580000
kernel config:
https://syzkaller.appspot.com/x/.config?x=d2e0bc0ae94545f7
dashboard link:
https://syzkaller.appspot.com/bug?extid=8fd073e91a422d3d5ae1
compiler: Debian clang version 20.1.8 (++20250708063551+0c9f909b7976-1~exp1~20250708183702.136), Debian LLD 20.1.8
CC: [
Liam.H...@oracle.com ak...@linux-foundation.org ja...@google.com linux-...@vger.kernel.org linu...@kvack.org lorenzo...@oracle.com pfal...@suse.de vba...@suse.cz]
Unfortunately, I don't have any reproducer for this issue yet.
Downloadable assets:
disk image:
https://storage.googleapis.com/syzbot-assets/bf388a171c7c/disk-4ea7c171.raw.xz
vmlinux:
https://storage.googleapis.com/syzbot-assets/4d0d00dbe19f/vmlinux-4ea7c171.xz
kernel image:
https://storage.googleapis.com/syzbot-assets/4ec1eeb6db6f/bzImage-4ea7c171.xz
IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by:
syzbot+8fd073...@syzkaller.appspotmail.com
==================================================================
BUG: KCSAN: data-race in mlock_folio / need_mlock_drain
read-write to 0xffff888237c26a90 of 1 bytes by task 9274 on cpu 0:
folio_batch_add include/linux/pagevec.h:77 [inline]
mlock_folio+0x14d/0x240 mm/mlock.c:257
mlock_vma_folio mm/internal.h:1043 [inline]
__folio_add_file_rmap mm/rmap.c:1611 [inline]
folio_add_file_rmap_ptes+0x1d0/0x1e0 mm/rmap.c:1628
set_pte_range+0x2c1/0x4f0 mm/memory.c:5441
filemap_map_order0_folio mm/filemap.c:3790 [inline]
filemap_map_pages+0x4ca/0xd40 mm/filemap.c:3848
do_fault_around mm/memory.c:5656 [inline]
do_read_fault mm/memory.c:5689 [inline]
do_fault mm/memory.c:5832 [inline]
do_pte_missing mm/memory.c:4361 [inline]
handle_pte_fault mm/memory.c:6177 [inline]
__handle_mm_fault mm/memory.c:6318 [inline]
handle_mm_fault+0x1355/0x2be0 mm/memory.c:6487
faultin_page mm/gup.c:1126 [inline]
__get_user_pages+0x102a/0x1ed0 mm/gup.c:1428
populate_vma_page_range mm/gup.c:1860 [inline]
__mm_populate+0x243/0x3a0 mm/gup.c:1963
mm_populate include/linux/mm.h:3471 [inline]
__do_sys_mlockall mm/mlock.c:769 [inline]
__se_sys_mlockall+0x368/0x3d0 mm/mlock.c:745
__x64_sys_mlockall+0x1f/0x30 mm/mlock.c:745
x64_sys_call+0xd68/0x3000 arch/x86/include/generated/asm/syscalls_64.h:152
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
read to 0xffff888237c26a90 of 1 bytes by task 3641 on cpu 1:
folio_batch_count include/linux/pagevec.h:56 [inline]
need_mlock_drain+0x30/0x50 mm/mlock.c:235
cpu_needs_drain mm/swap.c:786 [inline]
__lru_add_drain_all+0x273/0x450 mm/swap.c:877
lru_add_drain_all+0x10/0x20 mm/swap.c:893
invalidate_bdev+0x47/0x70 block/bdev.c:101
ext4_put_super+0x624/0x7d0 fs/ext4/super.c:1348
generic_shutdown_super+0xe6/0x210 fs/super.c:642
kill_block_super+0x2a/0x70 fs/super.c:1722
ext4_kill_sb+0x42/0x80 fs/ext4/super.c:7403
deactivate_locked_super+0x75/0x1c0 fs/super.c:473
deactivate_super+0x97/0xa0 fs/super.c:506
cleanup_mnt+0x269/0x2e0 fs/namespace.c:1327
__cleanup_mnt+0x19/0x20 fs/namespace.c:1334
task_work_run+0x131/0x1a0 kernel/task_work.c:227
resume_user_mode_work include/linux/resume_user_mode.h:50 [inline]
exit_to_user_mode_loop+0xed/0x110 kernel/entry/common.c:43
exit_to_user_mode_prepare include/linux/irq-entry-common.h:225 [inline]
syscall_exit_to_user_mode_work include/linux/entry-common.h:175 [inline]
syscall_exit_to_user_mode include/linux/entry-common.h:210 [inline]
do_syscall_64+0x1d6/0x200 arch/x86/entry/syscall_64.c:100
entry_SYSCALL_64_after_hwframe+0x77/0x7f
value changed: 0x04 -> 0x18
Reported by Kernel Concurrency Sanitizer on:
CPU: 1 UID: 0 PID: 3641 Comm: syz-executor Tainted: G W syzkaller #0 PREEMPT(voluntary)
Tainted: [W]=WARN
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/02/2025
==================================================================
---
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