syzbot


KCSAN: data-race in fprop_new_period / fprop_reflect_period_percpu

Status: auto-closed as invalid on 2020/10/15 13:11
Subsystems: fs mm
[Documentation on labels]
First crash: 1316d, last: 1316d
Similar bugs (9)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KCSAN: data-race in fprop_new_period / fprop_reflect_period_percpu (7) fs mm 5 665d 744d 0/26 auto-closed as invalid on 2022/07/28 18:16
upstream KCSAN: data-race in fprop_new_period / fprop_reflect_period_percpu (2) fs mm 2 1248d 1229d 0/26 auto-closed as invalid on 2020/12/23 11:14
upstream KCSAN: data-race in fprop_new_period / fprop_reflect_period_percpu (5) fs mm 2 993d 993d 0/26 auto-closed as invalid on 2021/09/04 07:15
upstream KCSAN: data-race in fprop_new_period / fprop_reflect_period_percpu (3) fs mm 2 1169d 1201d 0/26 auto-closed as invalid on 2021/03/11 15:36
upstream KCSAN: data-race in fprop_new_period / fprop_reflect_period_percpu (6) fs mm 1 784d 784d 0/26 auto-closed as invalid on 2022/04/01 06:25
upstream KCSAN: data-race in fprop_new_period / fprop_reflect_period_percpu (9) fs mm 8 254d 336d 0/26 auto-obsoleted due to no activity on 2023/09/13 06:09
upstream KCSAN: data-race in fprop_new_period / fprop_reflect_period_percpu (8) fs mm 20 380d 580d 0/26 auto-obsoleted due to no activity on 2023/05/10 03:18
upstream KCSAN: data-race in fprop_new_period / fprop_reflect_period_percpu (4) mm fs 3 1057d 1124d 0/26 auto-closed as invalid on 2021/07/02 00:21
upstream KCSAN: data-race in fprop_new_period / fprop_reflect_period_percpu (10) fs mm 29 2d02h 131d 0/26 moderation: reported on 2023/12/10 00:01

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

write to 0xffffffff89524eb0 of 4 bytes by interrupt on cpu 1:
 fprop_new_period+0x126/0x1a0 lib/flex_proportions.c:83
 writeout_period+0x55/0xe0 mm/page-writeback.c:628
 call_timer_fn+0x30/0x2a0 kernel/time/timer.c:1413
 expire_timers+0x116/0x290 kernel/time/timer.c:1458
 __run_timers+0x348/0x3e0 kernel/time/timer.c:1755
 run_timer_softirq+0x56/0x60 kernel/time/timer.c:1770
 __do_softirq+0x198/0x360 kernel/softirq.c:298
 asm_call_on_stack+0xf/0x20 arch/x86/entry/entry_64.S:706
 __run_on_irqstack arch/x86/include/asm/irq_stack.h:22 [inline]
 run_on_irqstack_cond arch/x86/include/asm/irq_stack.h:48 [inline]
 do_softirq_own_stack+0x5d/0x80 arch/x86/kernel/irq_64.c:77
 invoke_softirq kernel/softirq.c:393 [inline]
 __irq_exit_rcu+0x115/0x120 kernel/softirq.c:423
 sysvec_apic_timer_interrupt+0xba/0xd0 arch/x86/kernel/apic/apic.c:1091
 asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:581
 find_watchpoint kernel/kcsan/core.c:123 [inline]
 check_access kernel/kcsan/core.c:588 [inline]
 __tsan_read8+0x42/0x180 kernel/kcsan/core.c:801
 tomoyo_compare_name_union security/tomoyo/file.c:87 [inline]
 tomoyo_check_path_acl+0x8f/0xe0 security/tomoyo/file.c:260
 tomoyo_check_acl+0xcc/0x220 security/tomoyo/domain.c:175
 tomoyo_path_permission security/tomoyo/file.c:586 [inline]
 tomoyo_check_open_permission+0x29f/0x370 security/tomoyo/file.c:780
 tomoyo_file_open+0xd0/0xe0 security/tomoyo/tomoyo.c:313
 security_file_open+0x3f/0x90 security/security.c:1574
 do_dentry_open+0x22d/0x890 fs/open.c:804
 vfs_open+0x43/0x50 fs/open.c:931
 do_open fs/namei.c:3251 [inline]
 path_openat+0x1844/0x20a0 fs/namei.c:3368
 do_filp_open+0xbd/0x1d0 fs/namei.c:3395
 do_sys_openat2+0x33b/0x500 fs/open.c:1168
 do_sys_open fs/open.c:1184 [inline]
 __do_sys_open fs/open.c:1192 [inline]
 __se_sys_open fs/open.c:1188 [inline]
 __x64_sys_open+0xe2/0x110 fs/open.c:1188
 do_syscall_64+0x39/0x80 arch/x86/entry/common.c:46
 entry_SYSCALL_64_after_hwframe+0x44/0xa9

read to 0xffffffff89524eb0 of 4 bytes by task 16965 on cpu 0:
 fprop_reflect_period_percpu+0x22/0x1a0 lib/flex_proportions.c:192
 __fprop_inc_percpu+0x1a/0x80 lib/flex_proportions.c:222
 __fprop_inc_percpu_max+0x3f/0x190 lib/flex_proportions.c:271
 wb_domain_writeout_inc mm/page-writeback.c:575 [inline]
 __wb_writeout_inc+0x54/0x1a0 mm/page-writeback.c:599
 test_clear_page_writeback+0x2ef/0x480 mm/page-writeback.c:2745
 end_page_writeback+0xa7/0x110 mm/filemap.c:1369
 ext4_finish_bio+0x429/0x490 fs/ext4/page-io.c:146
 ext4_release_io_end+0x98/0x200 fs/ext4/page-io.c:161
 ext4_end_io_end fs/ext4/page-io.c:195 [inline]
 ext4_do_flush_completed_IO fs/ext4/page-io.c:260 [inline]
 ext4_end_io_rsv_work+0x306/0x360 fs/ext4/page-io.c:274
 process_one_work+0x3e1/0x9a0 kernel/workqueue.c:2269
 worker_thread+0x665/0xbe0 kernel/workqueue.c:2415
 kthread+0x20d/0x230 kernel/kthread.c:292
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:294

Reported by Kernel Concurrency Sanitizer on:
CPU: 0 PID: 16965 Comm: kworker/u4:7 Not tainted 5.9.0-rc4-syzkaller #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 (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2020/09/10 13:03 upstream 7fe10096c150 ac7ca78e .config console log report ci2-upstream-kcsan-gce
* Struck through repros no longer work on HEAD.