syzbot


KCSAN: data-race in __filemap_add_folio / invalidate_bdev (10)

Status: moderation: reported on 2025/08/30 18:51
Subsystems: fs mm
[Documentation on labels]
Reported-by: syzbot+a7b8f9378c590dcdf33e@syzkaller.appspotmail.com
First crash: 94d, last: 8d06h
Similar bugs (9)
Kernel Title Rank 🛈 Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KCSAN: data-race in __filemap_add_folio / invalidate_bdev fs mm 6 3 1259d 1294d 0/29 auto-closed as invalid on 2022/07/28 00:49
upstream KCSAN: data-race in __filemap_add_folio / invalidate_bdev (4) fs mm 6 4 836d 866d 0/29 auto-obsoleted due to no activity on 2023/09/24 05:15
upstream KCSAN: data-race in __filemap_add_folio / invalidate_bdev (5) fs mm 6 4 701d 722d 0/29 auto-obsoleted due to no activity on 2024/02/05 20:23
upstream KCSAN: data-race in __filemap_add_folio / invalidate_bdev (3) block 6 1 961d 954d 0/29 auto-obsoleted due to no activity on 2023/05/21 22:53
upstream KCSAN: data-race in __filemap_add_folio / invalidate_bdev (2) mm fs 6 2 1162d 1189d 0/29 auto-obsoleted due to no activity on 2022/11/01 13:37
upstream KCSAN: data-race in __filemap_add_folio / invalidate_bdev (8) mm fs 6 2 263d 268d 0/29 auto-obsoleted due to no activity on 2025/05/09 19:21
upstream KCSAN: data-race in __filemap_add_folio / invalidate_bdev (9) mm fs 6 1 161d 161d 0/29 auto-obsoleted due to no activity on 2025/08/20 03:26
upstream KCSAN: data-race in __filemap_add_folio / invalidate_bdev (6) fs mm 6 1 619d 619d 0/29 auto-obsoleted due to no activity on 2024/04/28 09:19
upstream KCSAN: data-race in __filemap_add_folio / invalidate_bdev (7) fs mm 6 1 371d 371d 0/29 auto-obsoleted due to no activity on 2025/01/22 09:36

Sample crash report:
==================================================================
BUG: KCSAN: data-race in __filemap_add_folio / invalidate_bdev

read-write to 0xffff888100483138 of 8 bytes by task 3303 on cpu 0:
 __filemap_add_folio+0x5b9/0x7d0 mm/filemap.c:931
 filemap_add_folio+0x1d9/0x360 mm/filemap.c:978
 page_cache_ra_unbounded+0x203/0x450 mm/readahead.c:280
 do_page_cache_ra mm/readahead.c:332 [inline]
 force_page_cache_ra mm/readahead.c:361 [inline]
 page_cache_sync_ra+0x26e/0x6a0 mm/readahead.c:579
 filemap_get_pages+0x2d0/0x11b0 mm/filemap.c:2638
 filemap_read+0x231/0xa00 mm/filemap.c:2748
 blkdev_read_iter+0x22d/0x2e0 block/fops.c:859
 new_sync_read fs/read_write.c:491 [inline]
 vfs_read+0x64c/0x770 fs/read_write.c:572
 ksys_read+0xda/0x1a0 fs/read_write.c:715
 __do_sys_read fs/read_write.c:724 [inline]
 __se_sys_read fs/read_write.c:722 [inline]
 __x64_sys_read+0x40/0x50 fs/read_write.c:722
 x64_sys_call+0x27c0/0x3000 arch/x86/include/generated/asm/syscalls_64.h:1
 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 0xffff888100483138 of 8 bytes by task 10300 on cpu 1:
 invalidate_bdev+0x25/0x70 block/bdev.c:99
 bdev_disk_changed+0xeb/0xcb0 block/partitions/core.c:657
 loop_reread_partitions drivers/block/loop.c:449 [inline]
 loop_set_status+0x5d2/0x6a0 drivers/block/loop.c:1278
 loop_set_status64 drivers/block/loop.c:1374 [inline]
 lo_ioctl+0x671/0x12b0 drivers/block/loop.c:1560
 blkdev_ioctl+0x356/0x440 block/ioctl.c:705
 vfs_ioctl fs/ioctl.c:51 [inline]
 __do_sys_ioctl fs/ioctl.c:597 [inline]
 __se_sys_ioctl+0xce/0x140 fs/ioctl.c:583
 __x64_sys_ioctl+0x43/0x50 fs/ioctl.c:583
 x64_sys_call+0x1816/0x3000 arch/x86/include/generated/asm/syscalls_64.h:17
 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

value changed: 0x000000000000000d -> 0x000000000000000e

Reported by Kernel Concurrency Sanitizer on:
CPU: 1 UID: 0 PID: 10300 Comm: syz.6.2066 Tainted: G        W           syzkaller #0 PREEMPT(voluntary) 
Tainted: [W]=WARN
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/02/2025
==================================================================
 loop6: p1 p2 p3 p4
loop6: p3 start 331777 is beyond EOD, truncated
loop6: p4 size 262144 extends beyond EOD, truncated

Crashes (4):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/11/25 06:57 upstream ac3fd01e4c1e 64219f15 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / invalidate_bdev
2025/10/18 16:20 upstream f406055cb18c 1c8c8cd8 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / invalidate_bdev
2025/09/09 00:26 upstream f777d1112ee5 d291dd2d .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / invalidate_bdev
2025/08/30 18:50 upstream 11e7861d680c 807a3b61 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / invalidate_bdev
* Struck through repros no longer work on HEAD.