syzbot


KCSAN: data-race in kswapd / shrink_node

Status: auto-obsoleted due to no activity on 2024/09/03 17:09
Subsystems: mm
[Documentation on labels]
Reported-by: syzbot+e23a38602cca31f34686@syzkaller.appspotmail.com
First crash: 43d, last: 43d

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

read-write to 0xffff88823fffd1f8 of 4 bytes by task 78 on cpu 0:
 balance_pgdat mm/vmscan.c:7003 [inline]
 kswapd+0x14c9/0x1820 mm/vmscan.c:7223
 kthread+0x1d1/0x210 kernel/kthread.c:389
 ret_from_fork+0x4b/0x60 arch/x86/kernel/process.c:147
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244

write to 0xffff88823fffd1f8 of 4 bytes by task 5198 on cpu 1:
 shrink_node+0x1c58/0x1d40
 shrink_zones mm/vmscan.c:6192 [inline]
 do_try_to_free_pages+0x30e/0xb80 mm/vmscan.c:6254
 try_to_free_pages+0x64f/0x950 mm/vmscan.c:6504
 __perform_reclaim mm/page_alloc.c:3899 [inline]
 __alloc_pages_direct_reclaim mm/page_alloc.c:3921 [inline]
 __alloc_pages_slowpath+0x4de/0xd70 mm/page_alloc.c:4327
 __alloc_pages_noprof+0x26d/0x360 mm/page_alloc.c:4713
 alloc_pages_mpol_noprof+0xb1/0x1e0 mm/mempolicy.c:2263
 alloc_pages_noprof+0xe1/0x100 mm/mempolicy.c:2343
 pagetable_alloc_noprof include/linux/mm.h:2868 [inline]
 __pte_alloc_one_noprof include/asm-generic/pgalloc.h:70 [inline]
 pte_alloc_one+0x32/0xf0 arch/x86/mm/pgtable.c:33
 __do_fault+0x79/0x200 mm/memory.c:4650
 do_cow_fault mm/memory.c:5091 [inline]
 do_fault mm/memory.c:5193 [inline]
 do_pte_missing mm/memory.c:3947 [inline]
 handle_pte_fault mm/memory.c:5522 [inline]
 __handle_mm_fault mm/memory.c:5665 [inline]
 handle_mm_fault+0x11c9/0x2940 mm/memory.c:5833
 do_user_addr_fault arch/x86/mm/fault.c:1389 [inline]
 handle_page_fault arch/x86/mm/fault.c:1481 [inline]
 exc_page_fault+0x296/0x650 arch/x86/mm/fault.c:1539
 asm_exc_page_fault+0x26/0x30 arch/x86/include/asm/idtentry.h:623
 rep_stos_alternative+0x40/0x80 arch/x86/lib/clear_page_64.S:92
 __clear_user arch/x86/include/asm/uaccess_64.h:172 [inline]
 clear_user arch/x86/include/asm/uaccess_64.h:189 [inline]
 padzero fs/binfmt_elf.c:125 [inline]
 elf_load+0x394/0x520 fs/binfmt_elf.c:421
 load_elf_binary+0xbf7/0x1980 fs/binfmt_elf.c:1167
 search_binary_handler fs/exec.c:1821 [inline]
 exec_binprm fs/exec.c:1863 [inline]
 bprm_execve+0x4e6/0xc30 fs/exec.c:1914
 kernel_execve+0x697/0x6d0 fs/exec.c:2081
 call_usermodehelper_exec_async+0x19d/0x250 kernel/umh.c:110
 ret_from_fork+0x4b/0x60 arch/x86/kernel/process.c:147
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244

value changed: 0x00000000 -> 0x00000001

Reported by Kernel Concurrency Sanitizer on:
CPU: 1 UID: 0 PID: 5198 Comm: modprobe Not tainted 6.11.0-rc1-syzkaller-00043-g94ede2a3e913 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 06/27/2024
==================================================================

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/07/30 17:09 upstream 94ede2a3e913 6fde257d .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in kswapd / shrink_node
* Struck through repros no longer work on HEAD.