syzbot


KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode (11)

Status: moderation: reported on 2024/06/09 03:42
Subsystems: exfat
[Documentation on labels]
Reported-by: syzbot+ff1b76e1395639202c83@syzkaller.appspotmail.com
First crash: 147d, last: 17d
Similar bugs (10)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode (5) exfat 5 1151d 1221d 0/28 auto-closed as invalid on 2021/10/13 19:55
upstream KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode (7) exfat 5 810d 845d 0/28 auto-closed as invalid on 2022/09/20 02:49
upstream KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode (2) exfat 11 1468d 1579d 0/28 auto-closed as invalid on 2020/11/30 13:39
upstream KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode (8) exfat 101 311d 331d 0/28 auto-obsoleted due to no activity on 2024/01/31 07:12
upstream KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode (3) exfat 2 1379d 1412d 0/28 auto-closed as invalid on 2021/02/27 21:17
upstream KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode (10) exfat 1 203d 203d 0/28 auto-obsoleted due to no activity on 2024/05/18 09:53
upstream KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode (9) exfat 2 242d 258d 0/28 auto-obsoleted due to no activity on 2024/04/09 13:34
upstream KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode (6) exfat 6 917d 965d 0/28 auto-closed as invalid on 2022/06/04 23:25
upstream KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode exfat 1 1611d 1611d 0/28 closed as invalid on 2020/06/18 14:13
upstream KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode (4) exfat 8 1258d 1296d 0/28 auto-closed as invalid on 2021/06/28 13:09

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

write to 0xffff8881255e7b50 of 8 bytes by task 28722 on cpu 0:
 mark_buffer_dirty_inode+0x18d/0x1c0 fs/buffer.c:682
 fat16_ent_put+0x4f/0x60 fs/fat/fatent.c:184
 fat_ent_write+0x66/0xe0 fs/fat/fatent.c:417
 fat_chain_add+0x15f/0x400 fs/fat/misc.c:136
 fat_add_cluster fs/fat/inode.c:112 [inline]
 __fat_get_block fs/fat/inode.c:154 [inline]
 fat_get_block+0x46b/0x5e0 fs/fat/inode.c:189
 __block_write_begin_int+0x417/0xfa0 fs/buffer.c:2121
 block_write_begin fs/buffer.c:2231 [inline]
 cont_write_begin+0x546/0x860 fs/buffer.c:2582
 fat_write_begin+0x51/0xe0 fs/fat/inode.c:228
 cont_expand_zero fs/buffer.c:2509 [inline]
 cont_write_begin+0x18b/0x860 fs/buffer.c:2572
 fat_write_begin+0x51/0xe0 fs/fat/inode.c:228
 generic_perform_write+0x1a8/0x4a0 mm/filemap.c:4054
 __generic_file_write_iter+0xa1/0x120 mm/filemap.c:4155
 generic_file_write_iter+0x77/0x1c0 mm/filemap.c:4181
 new_sync_write fs/read_write.c:590 [inline]
 vfs_write+0x76a/0x910 fs/read_write.c:683
 ksys_pwrite64 fs/read_write.c:798 [inline]
 __do_sys_pwrite64 fs/read_write.c:808 [inline]
 __se_sys_pwrite64 fs/read_write.c:805 [inline]
 __x64_sys_pwrite64+0xf7/0x150 fs/read_write.c:805
 x64_sys_call+0x9d5/0x2d60 arch/x86/include/generated/asm/syscalls_64.h:19
 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 0xffff8881255e7b50 of 8 bytes by task 28723 on cpu 1:
 mark_buffer_dirty_inode+0x96/0x1c0 fs/buffer.c:678
 fat16_ent_put+0x4f/0x60 fs/fat/fatent.c:184
 fat_alloc_clusters+0x4c9/0xa80 fs/fat/fatent.c:503
 fat_add_cluster fs/fat/inode.c:107 [inline]
 __fat_get_block fs/fat/inode.c:154 [inline]
 fat_get_block+0x25c/0x5e0 fs/fat/inode.c:189
 __block_write_begin_int+0x417/0xfa0 fs/buffer.c:2121
 block_write_begin fs/buffer.c:2231 [inline]
 cont_write_begin+0x546/0x860 fs/buffer.c:2582
 fat_write_begin+0x51/0xe0 fs/fat/inode.c:228
 generic_perform_write+0x1a8/0x4a0 mm/filemap.c:4054
 __generic_file_write_iter+0xa1/0x120 mm/filemap.c:4155
 generic_file_write_iter+0x77/0x1c0 mm/filemap.c:4181
 iter_file_splice_write+0x5f1/0x980 fs/splice.c:743
 do_splice_from fs/splice.c:941 [inline]
 direct_splice_actor+0x160/0x2c0 fs/splice.c:1164
 splice_direct_to_actor+0x302/0x670 fs/splice.c:1108
 do_splice_direct_actor fs/splice.c:1207 [inline]
 do_splice_direct+0xd7/0x150 fs/splice.c:1233
 do_sendfile+0x39b/0x970 fs/read_write.c:1388
 __do_sys_sendfile64 fs/read_write.c:1449 [inline]
 __se_sys_sendfile64 fs/read_write.c:1441 [inline]
 __x64_sys_sendfile64+0xbd/0x150 fs/read_write.c:1441
 x64_sys_call+0xed5/0x2d60 arch/x86/include/generated/asm/syscalls_64.h:41
 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: 0x0000000000000000 -> 0xffff888106942f08

Reported by Kernel Concurrency Sanitizer on:
CPU: 1 UID: 0 PID: 28723 Comm: syz.3.7387 Not tainted 6.12.0-rc3-syzkaller-00044-g2f87d0916ce0 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024
==================================================================

Crashes (38):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/10/16 06:36 upstream 2f87d0916ce0 bde2d81c .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/10/13 08:34 upstream 7234e2ea0edd 084d8178 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/10/11 16:37 upstream 1d227fcc7222 cd942402 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/09/14 16:47 upstream b7718454f937 c7e35043 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/09/07 16:23 upstream b31c44928842 9750182a .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/09/05 04:01 upstream c7fb1692dc01 dfbe2ed4 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/09/04 16:04 upstream 88fac17500f4 9d47f20a .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/09/01 16:24 upstream 431c1646e1f8 1eda0d14 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/09/01 01:34 upstream e8784b0aef62 1eda0d14 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/08/28 19:09 upstream 86987d84b968 ef3de9e8 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/08/26 20:02 upstream 5be63fc19fca 9aee4e0b .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/08/25 13:53 upstream 780bdc1ba776 d7d32352 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/08/24 16:20 upstream d2bafcf224f3 d7d32352 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/08/22 03:00 upstream 872cf28b8df9 ca02180f .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/08/21 08:19 upstream b311c1b497e5 9f0ab3fb .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/08/21 02:37 upstream 521b1e7f4cf0 9f0ab3fb .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/08/20 03:26 upstream 6e4436539ae1 9f0ab3fb .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/08/17 20:35 upstream e5fa841af679 dbc93b08 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/08/17 03:09 upstream 85652baa895b dbc93b08 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/08/15 12:22 upstream d07b43284ab3 e4bacdaf .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/08/14 12:58 upstream 6b0f8db921ab 07a4d4ad .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/08/14 04:55 upstream 6b0f8db921ab bde81f6f .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/08/13 18:20 upstream 6b4aa469f049 f21a18ca .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/08/13 09:22 upstream d74da846046a 7b0f4b46 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/08/11 23:12 upstream 7006fe2f7f78 6f4edef4 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/08/04 17:33 upstream a5dbd76a8942 1786a2a8 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/07/30 16:59 upstream 94ede2a3e913 6fde257d .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/07/19 17:56 upstream 720261cfc732 890ce4f3 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/07/16 09:37 upstream d67978318827 e8709b21 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/07/14 22:39 upstream 4d145e3f830b eaeb5c15 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/07/11 09:56 upstream 9d9a2f29aefd c699c2eb .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/07/01 19:49 upstream 9903efbddba0 b294e901 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/06/28 11:09 upstream 5bbd9b249880 6ef39602 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/06/28 05:30 upstream 66e55ff12e73 6ef39602 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/06/23 16:44 upstream 7c16f0a4ed1c edc5149a .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/06/20 11:24 upstream e5b3efbe1ab1 dac2aa43 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/06/14 03:17 upstream d20f6b3d747c a9616ff5 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
2024/06/09 03:41 upstream 061d1af7b030 82c05ab8 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in mark_buffer_dirty_inode / mark_buffer_dirty_inode
* Struck through repros no longer work on HEAD.