syzbot


KCSAN: data-race in __wb_writeout_add / writeout_period

Status: auto-closed as invalid on 2022/06/12 20:11
Subsystems: mm fs
[Documentation on labels]
First crash: 735d, last: 710d
Similar bugs (3)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KCSAN: data-race in __wb_writeout_add / writeout_period (2) mm fs 2 654d 662d 0/26 auto-closed as invalid on 2022/08/08 01:40
upstream KCSAN: data-race in __wb_writeout_add / writeout_period (4) fs mm 141 6d21h 132d 0/26 moderation: reported on 2023/12/08 00:07
upstream KCSAN: data-race in __wb_writeout_add / writeout_period (3) fs mm 1 611d 611d 0/26 auto-closed as invalid on 2022/09/20 00:41

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

write to 0xffffffff86e8f448 of 8 bytes by interrupt on cpu 0:
 writeout_period+0xa6/0xe0 mm/page-writeback.c:611
 call_timer_fn+0x2e/0x240 kernel/time/timer.c:1421
 expire_timers+0x116/0x240 kernel/time/timer.c:1466
 __run_timers+0x350/0x400 kernel/time/timer.c:1737
 run_timer_softirq+0x56/0x60 kernel/time/timer.c:1752
 __do_softirq+0x158/0x2e3 kernel/softirq.c:558
 __irq_exit_rcu kernel/softirq.c:637 [inline]
 irq_exit_rcu+0x41/0x70 kernel/softirq.c:649
 sysvec_apic_timer_interrupt+0x8d/0xb0 arch/x86/kernel/apic/apic.c:1097
 asm_sysvec_apic_timer_interrupt+0x12/0x20
 __raw_spin_unlock_irq include/linux/spinlock_api_smp.h:160 [inline]
 _raw_spin_unlock_irq+0x29/0x50 kernel/locking/spinlock.c:202
 spin_unlock_irq include/linux/spinlock.h:399 [inline]
 __filemap_add_folio+0x30a/0x7f0 mm/filemap.c:914
 filemap_add_folio+0x6b/0x150 mm/filemap.c:959
 __filemap_get_folio+0x4bd/0x680 mm/filemap.c:2003
 pagecache_get_page+0x26/0x190 mm/folio-compat.c:126
 find_or_create_page include/linux/pagemap.h:615 [inline]
 grow_dev_page+0x74/0x540 fs/buffer.c:946
 grow_buffers fs/buffer.c:1011 [inline]
 __getblk_slow fs/buffer.c:1038 [inline]
 __getblk_gfp+0x112/0x1c0 fs/buffer.c:1333
 __getblk include/linux/buffer_head.h:381 [inline]
 jbd2_journal_get_descriptor_buffer+0xa6/0x1d0 fs/jbd2/journal.c:1016
 journal_submit_commit_record+0x80/0x4b0 fs/jbd2/commit.c:131
 jbd2_journal_commit_transaction+0x1f38/0x3180 fs/jbd2/commit.c:914
 kjournald2+0x253/0x460 fs/jbd2/journal.c:213
 kthread+0x1a9/0x1e0 kernel/kthread.c:376
 ret_from_fork+0x1f/0x30

read to 0xffffffff86e8f448 of 8 bytes by task 261 on cpu 1:
 wb_domain_writeout_add mm/page-writeback.c:560 [inline]
 __wb_writeout_add+0x8a/0x1d0 mm/page-writeback.c:581
 __folio_end_writeback+0x2f4/0x540 mm/page-writeback.c:2809
 folio_end_writeback+0x57/0x130 mm/filemap.c:1646
 end_page_writeback+0x3b/0xe0 mm/folio-compat.c:26
 ext4_finish_bio+0x421/0x520 fs/ext4/page-io.c:145
 ext4_release_io_end+0x98/0x200 fs/ext4/page-io.c:160
 ext4_end_io_end fs/ext4/page-io.c:194 [inline]
 ext4_do_flush_completed_IO fs/ext4/page-io.c:259 [inline]
 ext4_end_io_rsv_work+0x319/0x3a0 fs/ext4/page-io.c:273
 process_one_work+0x3d3/0x720 kernel/workqueue.c:2289
 worker_thread+0x618/0xa70 kernel/workqueue.c:2436
 kthread+0x1a9/0x1e0 kernel/kthread.c:376
 ret_from_fork+0x1f/0x30

value changed: 0x00000000ffff9fec -> 0x00000000ffffa118

Reported by Kernel Concurrency Sanitizer on:
CPU: 1 PID: 261 Comm: kworker/u4:3 Not tainted 5.18.0-rc5-syzkaller-00207-g379c72654524 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Workqueue: ext4-rsv-conversion ext4_end_io_rsv_work
==================================================================

Crashes (2):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2022/05/08 20:05 upstream 379c72654524 e60b1103 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in __wb_writeout_add / writeout_period
2022/04/13 06:55 upstream a19944809fe9 faabdb86 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in __wb_writeout_add / writeout_period
* Struck through repros no longer work on HEAD.