syzbot


KCSAN: data-race in fprop_new_period / fprop_reflect_period_percpu (9)

Status: auto-obsoleted due to no activity on 2023/09/13 06:09
Subsystems: fs mm
[Documentation on labels]
First crash: 504d, last: 422d
Similar bugs (10)
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 833d 912d 0/28 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 1415d 1396d 0/28 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 1161d 1161d 0/28 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 1337d 1369d 0/28 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 952d 952d 0/28 auto-closed as invalid on 2022/04/01 06:25
upstream KCSAN: data-race in fprop_new_period / fprop_reflect_period_percpu (8) fs mm 20 548d 748d 0/28 auto-obsoleted due to no activity on 2023/05/10 03:18
upstream KCSAN: data-race in fprop_new_period / fprop_reflect_period_percpu (11) fs mm 1 96d 96d 0/28 auto-obsoleted due to no activity on 2024/08/04 03:47
upstream KCSAN: data-race in fprop_new_period / fprop_reflect_period_percpu fs mm 1 1484d 1484d 0/28 auto-closed as invalid on 2020/10/15 13:11
upstream KCSAN: data-race in fprop_new_period / fprop_reflect_period_percpu (4) mm fs 3 1225d 1292d 0/28 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 31 138d 299d 0/28 auto-obsoleted due to no activity on 2024/06/22 10:03

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

read-write to 0xffffffff86f87b90 of 4 bytes by interrupt on cpu 0:
 fprop_new_period+0xaa/0xe0 lib/flex_proportions.c:79
 writeout_period+0x59/0xe0 mm/page-writeback.c:613
 call_timer_fn+0x35/0x290 kernel/time/timer.c:1700
 expire_timers kernel/time/timer.c:1751 [inline]
 __run_timers+0x46c/0x650 kernel/time/timer.c:2022
 run_timer_softirq+0x31/0x40 kernel/time/timer.c:2037
 __do_softirq+0xc1/0x265 kernel/softirq.c:553
 invoke_softirq kernel/softirq.c:427 [inline]
 __irq_exit_rcu kernel/softirq.c:632 [inline]
 irq_exit_rcu+0x3b/0x90 kernel/softirq.c:644
 sysvec_apic_timer_interrupt+0x6d/0x80 arch/x86/kernel/apic/apic.c:1109
 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:645
 console_flush_all+0x495/0x6a0
 console_unlock+0xf3/0x210 kernel/printk/printk.c:3007
 vprintk_emit+0x107/0x430 kernel/printk/printk.c:2307
 vprintk_default+0x26/0x30 kernel/printk/printk.c:2318
 vprintk+0x83/0x90 kernel/printk/printk_safe.c:50
 _printk+0x7a/0xa0 kernel/printk/printk.c:2328
 __netdev_printk+0x2bf/0x3b0 net/core/dev.c:11239
 netdev_info+0x99/0xc0 net/core/dev.c:11286
 dev_change_name+0x5a0/0x610 net/core/dev.c:1207
 do_setlink+0x67d/0x2430 net/core/rtnetlink.c:2840
 __rtnl_newlink net/core/rtnetlink.c:3655 [inline]
 rtnl_newlink+0x1125/0x1600 net/core/rtnetlink.c:3702
 rtnetlink_rcv_msg+0x807/0x8c0 net/core/rtnetlink.c:6428
 netlink_rcv_skb+0x126/0x220 net/netlink/af_netlink.c:2549
 rtnetlink_rcv+0x1c/0x20 net/core/rtnetlink.c:6446
 netlink_unicast_kernel net/netlink/af_netlink.c:1339 [inline]
 netlink_unicast+0x56f/0x640 net/netlink/af_netlink.c:1365
 netlink_sendmsg+0x665/0x770 net/netlink/af_netlink.c:1914
 sock_sendmsg_nosec net/socket.c:725 [inline]
 sock_sendmsg net/socket.c:748 [inline]
 sock_write_iter+0x1aa/0x230 net/socket.c:1129
 do_iter_write+0x4b4/0x7b0 fs/read_write.c:860
 vfs_writev+0x1a8/0x320 fs/read_write.c:933
 do_writev+0xf8/0x220 fs/read_write.c:976
 __do_sys_writev fs/read_write.c:1049 [inline]
 __se_sys_writev fs/read_write.c:1046 [inline]
 __x64_sys_writev+0x45/0x50 fs/read_write.c:1046
 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 0xffffffff86f87b90 of 4 bytes by task 3130 on cpu 1:
 fprop_reflect_period_percpu+0x22/0x1a0 lib/flex_proportions.c:188
 __fprop_add_percpu lib/flex_proportions.c:219 [inline]
 __fprop_add_percpu_max+0x58/0x180 lib/flex_proportions.c:277
 wb_domain_writeout_add mm/page-writeback.c:560 [inline]
 __wb_writeout_add+0x7e/0x1d0 mm/page-writeback.c:584
 __folio_end_writeback+0x26f/0x500 mm/page-writeback.c:2985
 folio_end_writeback+0x5b/0x150 mm/filemap.c:1616
 ext4_finish_bio+0x3f2/0x870 fs/ext4/page-io.c:145
 ext4_release_io_end+0x8c/0x1e0 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+0x2d3/0x360 fs/ext4/page-io.c:273
 process_one_work+0x434/0x860 kernel/workqueue.c:2600
 worker_thread+0x5f2/0xa10 kernel/workqueue.c:2751
 kthread+0x1d7/0x210 kernel/kthread.c:389
 ret_from_fork+0x2e/0x40 arch/x86/kernel/process.c:145
 ret_from_fork_asm+0x11/0x20 arch/x86/entry/entry_64.S:304

value changed: 0x00000127 -> 0x00000128

Reported by Kernel Concurrency Sanitizer on:
CPU: 1 PID: 3130 Comm: kworker/u4:7 Not tainted 6.5.0-rc5-syzkaller-00053-g13b937206866 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/26/2023
Workqueue: ext4-rsv-conversion ext4_end_io_rsv_work
==================================================================

Crashes (8):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2023/08/09 06:02 upstream 13b937206866 8ad1a287 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in fprop_new_period / fprop_reflect_period_percpu
2023/07/06 05:10 upstream d528014517f2 ba5dba36 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in fprop_new_period / fprop_reflect_period_percpu
2023/07/04 21:23 upstream 24be4d0b46bb f99c2404 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in fprop_new_period / fprop_reflect_period_percpu
2023/06/29 15:24 upstream 3a8a670eeeaa 134ddc02 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in fprop_new_period / fprop_reflect_period_percpu
2023/06/24 05:39 upstream 61dabacdad4e 79782afc .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in fprop_new_period / fprop_reflect_period_percpu
2023/06/21 04:56 upstream 99ec1ed7c2ed 79782afc .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in fprop_new_period / fprop_reflect_period_percpu
2023/06/18 04:02 upstream 1b29d271614a f3921d4d .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in fprop_new_period / fprop_reflect_period_percpu
2023/05/19 00:21 upstream 2d1bcbc6cd70 3bb7af1d .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in fprop_new_period / fprop_reflect_period_percpu
* Struck through repros no longer work on HEAD.