syzbot


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

Status: moderation: reported on 2024/11/27 09:35
Subsystems: fs mm
[Documentation on labels]
Reported-by: syzbot+6022f81a7134d7aaab7c@syzkaller.appspotmail.com
First crash: 24d, last: 24d
Similar bugs (6)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KCSAN: data-race in __filemap_add_folio / invalidate_bdev fs mm 3 912d 947d 0/28 auto-closed as invalid on 2022/07/28 00:49
upstream KCSAN: data-race in __filemap_add_folio / invalidate_bdev (4) fs mm 4 489d 519d 0/28 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 4 354d 375d 0/28 auto-obsoleted due to no activity on 2024/02/05 20:23
upstream KCSAN: data-race in __filemap_add_folio / invalidate_bdev (3) block 1 614d 607d 0/28 auto-obsoleted due to no activity on 2023/05/21 22:53
upstream KCSAN: data-race in __filemap_add_folio / invalidate_bdev (2) fs mm 2 816d 842d 0/28 auto-obsoleted due to no activity on 2022/11/01 13:37
upstream KCSAN: data-race in __filemap_add_folio / invalidate_bdev (6) fs mm 1 272d 272d 0/28 auto-obsoleted due to no activity on 2024/04/28 09:19

Sample crash report:
loop4: detected capacity change from 0 to 512
EXT4-fs: Mount option(s) incompatible with ext3
==================================================================
BUG: KCSAN: data-race in __filemap_add_folio / invalidate_bdev

read-write to 0xffff888100630570 of 8 bytes by task 3313 on cpu 0:
 __filemap_add_folio+0x430/0x6f0 mm/filemap.c:919
 filemap_add_folio+0x9c/0x1b0 mm/filemap.c:971
 page_cache_ra_unbounded+0x177/0x310 mm/readahead.c:273
 do_page_cache_ra mm/readahead.c:325 [inline]
 force_page_cache_ra mm/readahead.c:354 [inline]
 page_cache_sync_ra+0x252/0x670 mm/readahead.c:567
 page_cache_sync_readahead include/linux/pagemap.h:1397 [inline]
 filemap_get_pages+0x2c1/0x10e0 mm/filemap.c:2546
 filemap_read+0x221/0x6a0 mm/filemap.c:2646
 blkdev_read_iter+0x20e/0x2c0 block/fops.c:767
 new_sync_read fs/read_write.c:484 [inline]
 vfs_read+0x5dc/0x700 fs/read_write.c:565
 ksys_read+0xe8/0x1b0 fs/read_write.c:708
 __do_sys_read fs/read_write.c:717 [inline]
 __se_sys_read fs/read_write.c:715 [inline]
 __x64_sys_read+0x42/0x50 fs/read_write.c:715
 x64_sys_call+0x2874/0x2dc0 arch/x86/include/generated/asm/syscalls_64.h:1
 do_syscall_x64 arch/x86/entry/common.c:52 [inline]
 do_syscall_64+0xc9/0x1c0 arch/x86/entry/common.c:83
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

read to 0xffff888100630570 of 8 bytes by task 32387 on cpu 1:
 invalidate_bdev+0x25/0x70 block/bdev.c:99
 __ext4_fill_super fs/ext4/super.c:5708 [inline]
 ext4_fill_super+0x6f3/0x3a10 fs/ext4/super.c:5733
 get_tree_bdev_flags+0x29f/0x310 fs/super.c:1636
 get_tree_bdev+0x1f/0x30 fs/super.c:1659
 ext4_get_tree+0x1c/0x30 fs/ext4/super.c:5765
 vfs_get_tree+0x56/0x1e0 fs/super.c:1814
 do_new_mount+0x227/0x690 fs/namespace.c:3507
 path_mount+0x49b/0xb30 fs/namespace.c:3834
 do_mount fs/namespace.c:3847 [inline]
 __do_sys_mount fs/namespace.c:4057 [inline]
 __se_sys_mount+0x27c/0x2d0 fs/namespace.c:4034
 __x64_sys_mount+0x67/0x80 fs/namespace.c:4034
 x64_sys_call+0x2c84/0x2dc0 arch/x86/include/generated/asm/syscalls_64.h:166
 do_syscall_x64 arch/x86/entry/common.c:52 [inline]
 do_syscall_64+0xc9/0x1c0 arch/x86/entry/common.c:83
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

value changed: 0x0000000000000001 -> 0x0000000000000002

Reported by Kernel Concurrency Sanitizer on:
CPU: 1 UID: 0 PID: 32387 Comm: syz.4.9538 Not tainted 6.12.0-syzkaller-10296-gaaf20f870da0 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024
==================================================================
loop4: detected capacity change from 0 to 512
loop4: detected capacity change from 0 to 2048
SELinux: security_context_str_to_sid (user_u) failed with errno=-22
loop4: detected capacity change from 0 to 512
EXT4-fs: Ignoring removed orlov option
EXT4-fs: Journaled quota options ignored when QUOTA feature is enabled
EXT4-fs (loop4): orphan cleanup on readonly fs
EXT4-fs error (device loop4): ext4_validate_block_bitmap:441: comm syz.4.9538: bg 0: block 248: padding at end of block bitmap is not set
EXT4-fs error (device loop4): ext4_acquire_dquot:6938: comm syz.4.9538: Failed to acquire dquot type 1
EXT4-fs (loop4): 1 truncate cleaned up

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/11/27 09:35 upstream aaf20f870da0 52b38cc1 .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.