syzbot


KCSAN: data-race in getrusage / try_to_unmap_one (3)

Status: moderation: reported on 2025/06/28 21:13
Subsystems: mm
[Documentation on labels]
Reported-by: syzbot+5f5b43d7c7d33976e7ef@syzkaller.appspotmail.com
First crash: 3d01h, last: 3d01h
Similar bugs (2)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KCSAN: data-race in getrusage / try_to_unmap_one (2) mm 6 60d 89d 0/29 auto-obsoleted due to no activity on 2025/06/27 22:08
upstream KCSAN: data-race in getrusage / try_to_unmap_one mm 1 453d 453d 0/29 auto-obsoleted due to no activity on 2024/05/09 07:56

Sample crash report:
==================================================================
BUG: KCSAN: data-race in getrusage / try_to_unmap_one

write to 0xffff88811b3cf9f0 of 8 bytes by task 12220 on cpu 1:
 update_hiwater_rss include/linux/mm.h:2631 [inline]
 try_to_unmap_one+0xf63/0x21d0 mm/rmap.c:2061
 __rmap_walk_file+0x1e9/0x2b0 mm/rmap.c:2897
 try_to_unmap+0x1ae/0x1e0 mm/rmap.c:-1
 shrink_folio_list+0x11b9/0x2560 mm/vmscan.c:1389
 reclaim_folio_list+0x83/0x2b0 mm/vmscan.c:2232
 reclaim_pages+0x215/0x270 mm/vmscan.c:2269
 madvise_cold_or_pageout_pte_range+0xd0d/0xd80 mm/madvise.c:564
 walk_pmd_range mm/pagewalk.c:130 [inline]
 walk_pud_range mm/pagewalk.c:226 [inline]
 walk_p4d_range mm/pagewalk.c:264 [inline]
 walk_pgd_range+0xa47/0x14e0 mm/pagewalk.c:305
 __walk_page_range+0xdd/0x340 mm/pagewalk.c:412
 walk_page_range_mm+0x352/0x4a0 mm/pagewalk.c:505
 walk_page_range+0x56/0x70 mm/pagewalk.c:584
 madvise_vma_behavior include/asm-generic/tlb.h:-1 [inline]
 madvise_walk_vmas mm/madvise.c:1541 [inline]
 madvise_do_behavior+0x1a45/0x1f20 mm/madvise.c:1733
 do_madvise+0x103/0x190 mm/madvise.c:1826
 __do_sys_madvise mm/madvise.c:1835 [inline]
 __se_sys_madvise mm/madvise.c:1833 [inline]
 __x64_sys_madvise+0x64/0x80 mm/madvise.c:1833
 x64_sys_call+0x2455/0x2fb0 arch/x86/include/generated/asm/syscalls_64.h:29
 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 0xffff88811b3cf9f0 of 8 bytes by task 12218 on cpu 0:
 get_mm_hiwater_rss include/linux/mm.h:2618 [inline]
 setmax_mm_hiwater_rss include/linux/mm.h:2648 [inline]
 getrusage+0xa52/0xbb0 kernel/sys.c:1877
 io_sq_thread+0x5dd/0x1180 io_uring/sqpoll.c:320
 ret_from_fork+0xda/0x150 arch/x86/kernel/process.c:148
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245

value changed: 0x00000000000021b8 -> 0x00000000000025a2

Reported by Kernel Concurrency Sanitizer on:
CPU: 0 UID: 0 PID: 12218 Comm: iou-sqp-12215 Tainted: G        W           6.16.0-rc3-syzkaller-00190-g67a993863163 #0 PREEMPT(voluntary) 
Tainted: [W]=WARN
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/07/2025
==================================================================

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/06/28 21:13 upstream 67a993863163 fc9d8ee5 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in getrusage / try_to_unmap_one
* Struck through repros no longer work on HEAD.