syzbot


KCSAN: data-race in __xa_set_mark / xas_find_marked

Status: moderation: reported on 2020/09/25 08:57
Subsystems: fs mm
[Documentation on labels]
Reported-by: syzbot+f512479ce46e8f0a9370@syzkaller.appspotmail.com
First crash: 1190d, last: 9h09m

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

read-write to 0xffff88813d05c6b8 of 8 bytes by task 28656 on cpu 1:
 instrument_read_write include/linux/instrumented.h:55 [inline]
 __instrument_read_write_bitop include/asm-generic/bitops/instrumented-non-atomic.h:84 [inline]
 ___test_and_set_bit include/asm-generic/bitops/instrumented-non-atomic.h:99 [inline]
 node_set_mark lib/xarray.c:95 [inline]
 xas_set_mark lib/xarray.c:885 [inline]
 __xa_set_mark+0xdb/0x1b0 lib/xarray.c:1910
 __folio_mark_dirty+0x3c0/0x4e0 mm/page-writeback.c:2670
 mark_buffer_dirty+0x148/0x240 fs/buffer.c:1212
 __block_commit_write fs/buffer.c:2183 [inline]
 block_write_end+0x158/0x2e0 fs/buffer.c:2259
 ext4_da_do_write_end fs/ext4/inode.c:2951 [inline]
 ext4_da_write_end+0x1fc/0x9c0 fs/ext4/inode.c:3023
 generic_perform_write+0x267/0x410 mm/filemap.c:3980
 ext4_buffered_write_iter+0x1f6/0x370 fs/ext4/file.c:299
 ext4_file_write_iter+0xd6/0x1200
 call_write_iter include/linux/fs.h:1956 [inline]
 new_sync_write fs/read_write.c:491 [inline]
 vfs_write+0x4ab/0x7d0 fs/read_write.c:584
 ksys_write+0xeb/0x1a0 fs/read_write.c:637
 __do_sys_write fs/read_write.c:649 [inline]
 __se_sys_write fs/read_write.c:646 [inline]
 __x64_sys_write+0x42/0x50 fs/read_write.c:646
 do_syscall_x64 arch/x86/entry/common.c:50 [inline]
 do_syscall_64+0x41/0xc0 arch/x86/entry/common.c:80
 entry_SYSCALL_64_after_hwframe+0x63/0xcd

read to 0xffff88813d05c6b8 of 8 bytes by task 3121 on cpu 0:
 xas_find_chunk include/linux/xarray.h:1723 [inline]
 xas_find_marked+0x216/0x660 lib/xarray.c:1354
 find_get_entry+0x5d/0x290 mm/filemap.c:1978
 filemap_get_folios_tag+0x126/0x250 mm/filemap.c:2266
 mpage_prepare_extent_to_map+0x321/0xb70 fs/ext4/inode.c:2388
 ext4_do_writepages+0x6ea/0x2100 fs/ext4/inode.c:2628
 ext4_writepages+0x15e/0x2e0 fs/ext4/inode.c:2764
 do_writepages+0x1c2/0x340 mm/page-writeback.c:2553
 __writeback_single_inode+0x91/0x860 fs/fs-writeback.c:1603
 writeback_sb_inodes+0x511/0xaa0 fs/fs-writeback.c:1894
 __writeback_inodes_wb+0x9a/0x1a0 fs/fs-writeback.c:1965
 wb_writeback+0x264/0x6e0 fs/fs-writeback.c:2072
 wb_check_start_all fs/fs-writeback.c:2198 [inline]
 wb_do_writeback fs/fs-writeback.c:2224 [inline]
 wb_workfn+0x4ea/0x8d0 fs/fs-writeback.c:2257
 process_one_work kernel/workqueue.c:2630 [inline]
 process_scheduled_works+0x5b8/0xa30 kernel/workqueue.c:2703
 worker_thread+0x525/0x730 kernel/workqueue.c:2784
 kthread+0x1d7/0x210 kernel/kthread.c:388
 ret_from_fork+0x48/0x60 arch/x86/kernel/process.c:147
 ret_from_fork_asm+0x11/0x20 arch/x86/entry/entry_64.S:304

value changed: 0x00e0000000000000 -> 0x03e0000000000000

Reported by Kernel Concurrency Sanitizer on:
CPU: 0 PID: 3121 Comm: kworker/u4:5 Tainted: G        W          6.6.0-rc2-syzkaller-00414-g8a511e7efc5a #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 08/04/2023
Workqueue: writeback wb_workfn (flush-8:0)
==================================================================

Crashes (1031):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2023/09/24 22:14 upstream 8a511e7efc5a 0b6a67ac .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/24 00:56 upstream 3aba70aed91f 0b6a67ac .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/23 11:38 upstream d90b0276af8f 0b6a67ac .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/23 01:18 upstream 8018e02a8703 0b6a67ac .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/22 09:01 upstream 27bbf45eae9c 0b6a67ac .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/21 19:51 upstream b5cbe7c00aa0 0b6a67ac .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/21 07:02 upstream 42dc814987c1 0b6a67ac .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/20 17:09 upstream 5d2f53532ecc 0b6a67ac .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/18 21:53 upstream 2cf0f7156238 0b6a67ac .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/18 08:50 upstream ce9ecca0238b 0b6a67ac .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/17 12:36 upstream f0b0d403eabb 0b6a67ac .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/16 22:57 upstream ad8a69f361b9 0b6a67ac .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/15 00:34 upstream 9fdfb15a3dbf 0b6a67ac .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/14 12:15 upstream aed8aee11130 0b6a67ac .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/13 22:59 upstream 23f108dc9ed2 0b6a67ac .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/13 17:08 upstream 3669558bdf35 0b6a67ac .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/12 21:47 upstream a747acc0b752 59da8366 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/12 03:23 upstream 0bb80ecc33a8 59da8366 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/11 09:15 upstream 0bb80ecc33a8 6654cf89 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/10 20:03 upstream 1548b060d6f3 6654cf89 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/10 14:18 upstream 535a265d7f0d 6654cf89 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/09 18:14 upstream 6099776f9f26 6654cf89 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/09 04:13 upstream 32bf43e4efdb 6654cf89 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/08 21:07 upstream a48fa7efaf11 6654cf89 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/08 11:23 upstream a48fa7efaf11 72324844 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/07 22:12 upstream 4a0fc73da97e 72324844 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/07 10:31 upstream 7ba2090ca64e 72324844 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/06 19:42 upstream 744a759492b5 72324844 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/06 10:49 upstream 65d6e954e378 0b6286dc .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/05 20:09 upstream 7733171926cc 0b6286dc .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/05 03:07 upstream 3f86ed6ec0b3 0b6286dc .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/04 15:58 upstream 708283abf896 db3306a6 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/03 18:12 upstream 6e32dfcccfcc 696ea0d2 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/03 00:12 upstream 92901222f83d 696ea0d2 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/02 11:10 upstream 0468be89b3fa 696ea0d2 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/01 21:23 upstream b84acc11b1c9 696ea0d2 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/09/01 07:59 upstream 99d99825fc07 696ea0d2 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/08/31 19:07 upstream b97d64c72259 696ea0d2 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/08/31 01:30 upstream ef2a0b7cdbc5 84803932 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/08/30 13:47 upstream 6c1b980a7e79 84803932 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/08/29 22:55 upstream f97e18a3f2fb ce731e62 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2023/08/29 14:49 upstream 1c59d383390f 7ba13a15 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / xas_find_marked
2021/01/17 11:08 upstream 0da0a8a0a0e1 813be542 .config console log report info ci2-upstream-kcsan-gce
2020/09/24 17:40 upstream 171d4ff79f96 54289b08 .config console log report info ci2-upstream-kcsan-gce
2020/06/21 17:45 upstream 64677779e896 4f2acff9 .config console log report ci2-upstream-kcsan-gce
* Struck through repros no longer work on HEAD.