syzbot


KCSAN: data-race in __lru_add_drain_all / folios_put_refs

Status: moderation: reported on 2024/04/07 23:10
Subsystems: mm
[Documentation on labels]
Reported-by: syzbot+ec770cf118c16e8397fa@syzkaller.appspotmail.com
First crash: 354d, last: 2d02h

Sample crash report:
EXT4-fs (loop3): unmounting filesystem 00000000-0000-0000-0000-000000000000.
==================================================================
BUG: KCSAN: data-race in __lru_add_drain_all / folios_put_refs

write to 0xffff888237c25a28 of 1 bytes by task 4397 on cpu 0:
 folio_batch_reinit include/linux/pagevec.h:50 [inline]
 folios_put_refs+0x272/0x2b0 mm/swap.c:988
 folios_put include/linux/mm.h:1551 [inline]
 folio_batch_move_lru+0x20b/0x230 mm/swap.c:175
 __folio_batch_add_and_move mm/swap.c:196 [inline]
 folio_add_lru+0x148/0x1f0 mm/swap.c:505
 shmem_alloc_and_add_folio mm/shmem.c:1961 [inline]
 shmem_get_folio_gfp+0x79e/0xd30 mm/shmem.c:2545
 shmem_fault+0xfd/0x270 mm/shmem.c:2746
 __do_fault+0xb6/0x200 mm/memory.c:4989
 do_read_fault mm/memory.c:5409 [inline]
 do_fault mm/memory.c:5543 [inline]
 do_pte_missing mm/memory.c:4059 [inline]
 handle_pte_fault mm/memory.c:5888 [inline]
 __handle_mm_fault mm/memory.c:6031 [inline]
 handle_mm_fault+0xe9a/0x2b10 mm/memory.c:6200
 faultin_page mm/gup.c:1196 [inline]
 __get_user_pages+0xf64/0x2350 mm/gup.c:1491
 populate_vma_page_range mm/gup.c:1929 [inline]
 __mm_populate+0x25d/0x3c0 mm/gup.c:2032
 mm_populate include/linux/mm.h:3392 [inline]
 vm_mmap_pgoff+0x224/0x2d0 mm/util.c:583
 ksys_mmap_pgoff+0xd0/0x340 mm/mmap.c:607
 x64_sys_call+0x1945/0x2e10 arch/x86/include/generated/asm/syscalls_64.h:10
 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
 do_syscall_64+0xc9/0x1c0 arch/x86/entry/syscall_64.c:94
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

read to 0xffff888237c25a28 of 1 bytes by task 3314 on cpu 1:
 folio_batch_count include/linux/pagevec.h:56 [inline]
 cpu_needs_drain mm/swap.c:773 [inline]
 __lru_add_drain_all+0x136/0x3f0 mm/swap.c:867
 lru_add_drain_all+0x10/0x20 mm/swap.c:883
 invalidate_bdev+0x47/0x70 block/bdev.c:101
 ext4_put_super+0x577/0x820 fs/ext4/super.c:1356
 generic_shutdown_super+0xe5/0x220 fs/super.c:642
 kill_block_super+0x2a/0x70 fs/super.c:1710
 ext4_kill_sb+0x44/0x80 fs/ext4/super.c:7368
 deactivate_locked_super+0x7d/0x1c0 fs/super.c:473
 deactivate_super+0x9f/0xb0 fs/super.c:506
 cleanup_mnt+0x26e/0x2e0 fs/namespace.c:1435
 __cleanup_mnt+0x19/0x20 fs/namespace.c:1442
 task_work_run+0x13c/0x1b0 kernel/task_work.c:227
 resume_user_mode_work include/linux/resume_user_mode.h:50 [inline]
 exit_to_user_mode_loop kernel/entry/common.c:114 [inline]
 exit_to_user_mode_prepare include/linux/entry-common.h:329 [inline]
 __syscall_exit_to_user_mode_work kernel/entry/common.c:207 [inline]
 syscall_exit_to_user_mode+0xa8/0x120 kernel/entry/common.c:218
 do_syscall_64+0xd6/0x1c0 arch/x86/entry/syscall_64.c:100
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

value changed: 0x1f -> 0x00

Reported by Kernel Concurrency Sanitizer on:
CPU: 1 UID: 0 PID: 3314 Comm: syz-executor Not tainted 6.14.0-syzkaller-01103-g2df0c02dab82 #0 PREEMPT(voluntary) 
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025
==================================================================

Crashes (107):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/03/26 04:12 upstream 2df0c02dab82 89d30d73 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2025/03/18 05:15 upstream fc444ada1310 ce3352cd .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2025/03/16 07:35 upstream 31d7109a19f6 e2826670 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2025/03/12 15:40 upstream 0fed89a961ea ee70e6db .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2025/03/08 17:09 upstream 2a520073e74f 7e3bd60d .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2025/03/03 23:56 upstream 99fa936e8e4f c3901742 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2025/03/03 09:46 upstream 7eb172143d55 c3901742 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2025/03/02 08:35 upstream ece144f151ac c3901742 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2025/03/01 05:30 upstream 7a5668899f54 67cf5345 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2025/02/28 16:19 upstream 76544811c850 67cf5345 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2025/02/27 13:57 upstream dd83757f6e68 6a8fcbc4 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2025/02/22 15:02 upstream ff202c5028a1 d34966d1 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2025/02/19 01:45 upstream 6537cfb395f3 9a14138f .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2025/02/13 19:20 upstream ab68d7eb7b1a a98a8417 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2025/02/08 12:44 upstream 8f6629c004b1 ef44b750 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2025/02/02 00:59 upstream cabb4685d57e 568559e4 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2025/01/31 09:05 upstream 69e858e0b8b2 4c6ac32f .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2025/01/30 06:42 upstream ebbb8be421ee afe4eff5 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2025/01/27 22:16 upstream 805ba04cb7cc 18070896 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2025/01/25 03:58 upstream b46c89c08f41 1293872d .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2025/01/24 14:32 upstream 113691ce9f32 1293872d .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2025/01/23 22:08 upstream d0d106a2bd21 521b0ce3 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2025/01/19 19:22 upstream 9528d418de4d f2cb035c .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2025/01/18 22:53 upstream fda5e3f28400 f2cb035c .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2025/01/15 19:00 upstream 619f0b6fad52 968edaf4 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2025/01/09 01:01 upstream 0b7958fa05d5 f3558dbf .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2025/01/08 03:18 upstream 09a0fa92e5b4 f3558dbf .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2025/01/05 23:09 upstream 9244696b34f2 f3558dbf .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2025/01/03 04:10 upstream 0bc21e701a6f d3ccff63 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2025/01/02 00:26 upstream 56e6a3499e14 d3ccff63 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2024/12/29 03:17 upstream 059dd502b263 d3ccff63 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2024/12/21 06:57 upstream e9b8ffafd20a d7f584ee .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2024/12/15 01:04 upstream a0e3919a2df2 7cbfbb3a .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2024/12/08 00:00 upstream 7503345ac5f5 9ac0fdc6 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2024/12/04 13:33 upstream feffde684ac2 b50eb251 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2024/11/27 12:58 upstream aaf20f870da0 52b38cc1 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2024/11/27 02:13 upstream 445d9f05fa14 e9a9a9f2 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2024/11/26 11:00 upstream 2c22dc1ee3a1 e9a9a9f2 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2024/11/25 21:16 upstream 9f16d5e6f220 11dbc254 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2024/11/21 01:16 upstream 8f7c8b88bda4 4b25d554 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2024/11/16 12:38 upstream e8bdb3c8be08 cfe3a04a .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2024/11/07 12:23 upstream ff7afaeca1a1 867e44df .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2024/10/31 12:41 upstream 4236f913808c 96eb609f .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2024/10/28 13:40 upstream 819837584309 65e8686b .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2024/10/22 13:36 upstream d12937763990 a93682b3 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2024/10/21 02:58 upstream 42f7652d3eb5 cd6fc0a3 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2024/10/15 23:08 upstream 2f87d0916ce0 bde2d81c .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2024/10/13 04:21 upstream 7234e2ea0edd 084d8178 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
2024/04/07 23:10 upstream 9fe30842a90b ca620dd8 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __lru_add_drain_all / folios_put_refs
* Struck through repros no longer work on HEAD.