syzbot


KCSAN: data-race in do_try_to_free_pages / shrink_node (5)

Status: moderation: reported on 2024/03/21 15:29
Subsystems: mm
[Documentation on labels]
Reported-by: syzbot+a16c36abe274222db6ea@syzkaller.appspotmail.com
First crash: 23d, last: 23d
Similar bugs (4)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KCSAN: data-race in do_try_to_free_pages / shrink_node (4) mm 7 85d 125d 0/26 auto-obsoleted due to no activity on 2024/02/23 13:13
upstream KCSAN: data-race in do_try_to_free_pages / shrink_node (2) mm 3 285d 301d 0/26 auto-obsoleted due to no activity on 2023/08/07 23:22
upstream KCSAN: data-race in do_try_to_free_pages / shrink_node (3) mm 2 239d 247d 0/26 auto-obsoleted due to no activity on 2023/09/22 16:58
upstream KCSAN: data-race in do_try_to_free_pages / shrink_node mm 35 1531d 1584d 0/26 auto-closed as invalid on 2020/04/13 04:50

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

write to 0xffff88811b88d070 of 8 bytes by task 15351 on cpu 1:
 snapshot_refaults mm/vmscan.c:6175 [inline]
 do_try_to_free_pages+0x93d/0xca0 mm/vmscan.c:6237
 try_to_free_mem_cgroup_pages+0x1eb/0x4e0 mm/vmscan.c:6529
 try_charge_memcg+0x279/0xd10 mm/memcontrol.c:2783
 obj_cgroup_charge_pages+0xbd/0x1d0 mm/memcontrol.c:3302
 __memcg_kmem_charge_page+0x9d/0x170 mm/memcontrol.c:3328
 __alloc_pages+0x1bc/0x360 mm/page_alloc.c:4592
 alloc_pages_mpol+0xb1/0x1e0 mm/mempolicy.c:2264
 alloc_pages+0xe1/0x100 mm/mempolicy.c:2335
 __get_free_pages+0xc/0x30 mm/page_alloc.c:4622
 io_mem_alloc io_uring/io_uring.c:2807 [inline]
 io_allocate_scq_urings+0x119/0x360 io_uring/io_uring.c:3761
 io_uring_create+0x53c/0x940 io_uring/io_uring.c:3944
 io_uring_setup io_uring/io_uring.c:4056 [inline]
 __do_sys_io_uring_setup io_uring/io_uring.c:4083 [inline]
 __se_sys_io_uring_setup+0x1d2/0x1e0 io_uring/io_uring.c:4077
 __x64_sys_io_uring_setup+0x31/0x40 io_uring/io_uring.c:4077
 do_syscall_64+0xd3/0x1d0
 entry_SYSCALL_64_after_hwframe+0x6d/0x75

read to 0xffff88811b88d070 of 8 bytes by task 15353 on cpu 0:
 prepare_scan_control mm/vmscan.c:2258 [inline]
 shrink_node+0x38b/0x15a0 mm/vmscan.c:5906
 shrink_zones mm/vmscan.c:6152 [inline]
 do_try_to_free_pages+0x3cc/0xca0 mm/vmscan.c:6214
 try_to_free_mem_cgroup_pages+0x1eb/0x4e0 mm/vmscan.c:6529
 try_charge_memcg+0x279/0xd10 mm/memcontrol.c:2783
 obj_cgroup_charge_pages+0xbd/0x1d0 mm/memcontrol.c:3302
 __memcg_kmem_charge_page+0x9d/0x170 mm/memcontrol.c:3328
 __alloc_pages+0x1bc/0x360 mm/page_alloc.c:4592
 alloc_pages_mpol+0xb1/0x1e0 mm/mempolicy.c:2264
 alloc_pages+0xe1/0x100 mm/mempolicy.c:2335
 __get_free_pages+0xc/0x30 mm/page_alloc.c:4622
 io_mem_alloc io_uring/io_uring.c:2807 [inline]
 io_allocate_scq_urings+0x2b8/0x360 io_uring/io_uring.c:3786
 io_uring_create+0x53c/0x940 io_uring/io_uring.c:3944
 io_uring_setup io_uring/io_uring.c:4056 [inline]
 __do_sys_io_uring_setup io_uring/io_uring.c:4083 [inline]
 __se_sys_io_uring_setup+0x1d2/0x1e0 io_uring/io_uring.c:4077
 __x64_sys_io_uring_setup+0x31/0x40 io_uring/io_uring.c:4077
 do_syscall_64+0xd3/0x1d0
 entry_SYSCALL_64_after_hwframe+0x6d/0x75

value changed: 0x000000000000003d -> 0x000000000000003e

Reported by Kernel Concurrency Sanitizer on:
CPU: 0 PID: 15353 Comm: syz-executor.3 Not tainted 6.8.0-syzkaller-11752-gdba89d1b81df #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/29/2024
==================================================================

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/03/21 15:29 upstream dba89d1b81df 6753db5c .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in do_try_to_free_pages / shrink_node
* Struck through repros no longer work on HEAD.