syzbot


KCSAN: data-race in lruvec_lru_size / mem_cgroup_update_lru_size

Status: auto-closed as invalid on 2020/07/12 06:13
Subsystems: mm cgroups
[Documentation on labels]
Reported-by: syzbot+acfbdf8f7cb39210723d@syzkaller.appspotmail.com
First crash: 1649d, last: 1433d

Sample crash report:
==================================================================
BUG: KCSAN: data-race in lruvec_lru_size / mem_cgroup_update_lru_size

write to 0xffff88812bd0ba10 of 8 bytes by task 1 on cpu 0:
 mem_cgroup_update_lru_size+0x73/0x110 mm/memcontrol.c:1293
 update_lru_size include/linux/mm_inline.h:44 [inline]
 add_page_to_lru_list include/linux/mm_inline.h:51 [inline]
 __pagevec_lru_add_fn+0x2b4/0x8c0 mm/swap.c:977
 pagevec_lru_move_fn+0xf5/0x170 mm/swap.c:211
 __pagevec_lru_add mm/swap.c:987 [inline]
 __lru_cache_add+0x119/0x1c0 mm/swap.c:411
 lru_cache_add+0x1b/0x30 mm/swap.c:447
 add_to_page_cache_lru+0x16b/0x260 mm/filemap.c:937
 ext4_mpage_readpages+0x31c/0x14d0 fs/ext4/readpage.c:259
 ext4_readpages+0x8e/0xb0 fs/ext4/inode.c:3243
 read_pages+0xa2/0x360 mm/readahead.c:126
 __do_page_cache_readahead+0x2be/0x380 mm/readahead.c:190
 ra_submit mm/internal.h:62 [inline]
 do_sync_mmap_readahead mm/filemap.c:2407 [inline]
 filemap_fault+0x1027/0x1410 mm/filemap.c:2493
 ext4_filemap_fault+0x5b/0x74 fs/ext4/inode.c:6033
 __do_fault+0xa8/0x1e0 mm/memory.c:3450
 do_read_fault mm/memory.c:3846 [inline]
 do_fault mm/memory.c:3975 [inline]
 handle_pte_fault mm/memory.c:4215 [inline]
 __handle_mm_fault+0x295c/0x2da0 mm/memory.c:4345
 handle_mm_fault+0x21c/0x540 mm/memory.c:4382
 do_user_addr_fault arch/x86/mm/fault.c:1464 [inline]
 do_page_fault+0x48a/0xa96 arch/x86/mm/fault.c:1535
 page_fault+0x34/0x40 arch/x86/entry/entry_64.S:1203

read to 0xffff88812bd0ba10 of 8 bytes by task 2676 on cpu 1:
 mem_cgroup_get_zone_lru_size include/linux/memcontrol.h:536 [inline]
 lruvec_lru_size+0xe8/0x1b0 mm/vmscan.c:326
 get_scan_count mm/vmscan.c:2348 [inline]
 shrink_lruvec+0x170/0xd80 mm/vmscan.c:2452
 shrink_node_memcgs mm/vmscan.c:2671 [inline]
 shrink_node+0x30d/0x1000 mm/vmscan.c:2777
 kswapd_shrink_node mm/vmscan.c:3523 [inline]
 balance_pgdat+0x658/0xd20 mm/vmscan.c:3681
 kswapd+0x3f3/0x8c0 mm/vmscan.c:3935
 kthread+0x203/0x230 kernel/kthread.c:268
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:352

Reported by Kernel Concurrency Sanitizer on:
CPU: 1 PID: 2676 Comm: kswapd0 Not tainted 5.7.0-rc1-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
==================================================================

Crashes (186):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2020/06/07 06:12 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 e6b89e4e .config console log report ci2-upstream-kcsan-gce
2020/06/02 11:27 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 a0331e89 .config console log report ci2-upstream-kcsan-gce
2020/05/27 17:17 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 9072c126 .config console log report ci2-upstream-kcsan-gce
2020/05/24 20:45 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 ce7ca010 .config console log report ci2-upstream-kcsan-gce
2020/05/24 20:45 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 ce7ca010 .config console log report ci2-upstream-kcsan-gce
2020/05/22 21:46 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 4afdfa20 .config console log report ci2-upstream-kcsan-gce
2020/05/22 10:10 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 4afdfa20 .config console log report ci2-upstream-kcsan-gce
2020/05/19 15:00 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 6d882fd2 .config console log report ci2-upstream-kcsan-gce
2020/05/17 22:32 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 37bccd4e .config console log report ci2-upstream-kcsan-gce
2020/05/14 19:19 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 2d572622 .config console log report ci2-upstream-kcsan-gce
2020/05/13 03:30 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 a44eb8f7 .config console log report ci2-upstream-kcsan-gce
2020/05/11 04:09 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 8742a2b9 .config console log report ci2-upstream-kcsan-gce
2020/05/07 05:29 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 4618eb2d .config console log report ci2-upstream-kcsan-gce
2020/05/06 05:22 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 35b8eb30 .config console log report ci2-upstream-kcsan-gce
2020/05/04 05:09 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 58ae5e18 .config console log report ci2-upstream-kcsan-gce
2020/04/25 00:46 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 03d97a1b .config console log report ci2-upstream-kcsan-gce
2020/04/24 01:42 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 b9233cab .config console log report ci2-upstream-kcsan-gce
2020/04/22 02:08 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 2e44d63e .config console log report ci2-upstream-kcsan-gce
2020/04/18 11:08 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 435c6d53 .config console log report ci2-upstream-kcsan-gce
2020/04/14 12:07 https://github.com/google/ktsan.git kcsan 40959e34d670 3f3c5574 .config console log report ci2-upstream-kcsan-gce
2020/04/13 21:49 https://github.com/google/ktsan.git kcsan 40959e34d670 7c54686a .config console log report ci2-upstream-kcsan-gce
2020/04/12 23:50 https://github.com/google/ktsan.git kcsan 40959e34d670 17a986e5 .config console log report ci2-upstream-kcsan-gce
2020/04/12 11:52 https://github.com/google/ktsan.git kcsan 40959e34d670 36b0b050 .config console log report ci2-upstream-kcsan-gce
2020/04/09 01:50 https://github.com/google/ktsan.git kcsan 40959e34d670 a8c6a3f8 .config console log report ci2-upstream-kcsan-gce
2020/04/07 17:34 https://github.com/google/ktsan.git kcsan 40959e34d670 db9bcd4b .config console log report ci2-upstream-kcsan-gce
2020/04/06 20:04 https://github.com/google/ktsan.git kcsan 40959e34d670 99a96044 .config console log report ci2-upstream-kcsan-gce
2020/04/03 21:47 https://github.com/google/ktsan.git kcsan 40959e34d670 ef26b610 .config console log report ci2-upstream-kcsan-gce
2020/04/03 10:08 https://github.com/google/ktsan.git kcsan 40959e34d670 5ed396e6 .config console log report ci2-upstream-kcsan-gce
2020/04/01 01:56 https://github.com/google/ktsan.git kcsan 40959e34d670 a34e2c33 .config console log report ci2-upstream-kcsan-gce
2020/03/30 09:18 https://github.com/google/ktsan.git kcsan 40959e34d670 c8d1cc20 .config console log report ci2-upstream-kcsan-gce
2020/03/29 01:14 https://github.com/google/ktsan.git kcsan 40959e34d670 05736b29 .config console log report ci2-upstream-kcsan-gce
2020/03/28 11:24 https://github.com/google/ktsan.git kcsan 40959e34d670 f1ebdfba .config console log report ci2-upstream-kcsan-gce
2020/03/27 14:07 https://github.com/google/ktsan.git kcsan 40959e34d670 831e9a81 .config console log report ci2-upstream-kcsan-gce
2020/03/27 09:23 https://github.com/google/ktsan.git kcsan 40959e34d670 9af8b4b3 .config console log report ci2-upstream-kcsan-gce
2020/03/26 13:53 https://github.com/google/ktsan.git kcsan 40959e34d670 6d25c5a0 .config console log report ci2-upstream-kcsan-gce
2020/03/25 20:34 https://github.com/google/ktsan.git kcsan 40959e34d670 e8e6c7d2 .config console log report ci2-upstream-kcsan-gce
2020/03/25 17:16 https://github.com/google/ktsan.git kcsan 40959e34d670 e8e6c7d2 .config console log report ci2-upstream-kcsan-gce
2020/03/25 17:11 https://github.com/google/ktsan.git kcsan 40959e34d670 e8e6c7d2 .config console log report ci2-upstream-kcsan-gce
2020/03/25 14:55 https://github.com/google/ktsan.git kcsan 40959e34d670 e8e6c7d2 .config console log report ci2-upstream-kcsan-gce
2020/03/25 12:35 https://github.com/google/ktsan.git kcsan 40959e34d670 41f049cc .config console log report ci2-upstream-kcsan-gce
2020/03/25 05:22 https://github.com/google/ktsan.git kcsan 40959e34d670 41f049cc .config console log report ci2-upstream-kcsan-gce
2020/03/24 16:57 https://github.com/google/ktsan.git kcsan 40959e34d670 68660b21 .config console log report ci2-upstream-kcsan-gce
2020/03/24 04:32 https://github.com/google/ktsan.git kcsan 40959e34d670 33e14df3 .config console log report ci2-upstream-kcsan-gce
2020/03/23 15:44 https://github.com/google/ktsan.git kcsan 40959e34d670 84f999d6 .config console log report ci2-upstream-kcsan-gce
2019/12/21 03:03 https://github.com/google/ktsan.git kcsan 245a43005292 bc586918 .config console log report ci2-upstream-kcsan-gce
2019/12/18 06:29 https://github.com/google/ktsan.git kcsan 245a43005292 64ca0a37 .config console log report ci2-upstream-kcsan-gce
2019/11/04 16:38 https://github.com/google/ktsan.git kcsan 94c006602e13 18e12644 .config console log report ci2-upstream-kcsan-gce
* Struck through repros no longer work on HEAD.