syzbot


KCSAN: data-race in __mod_timer / timer_clear_idle (2)

Status: auto-closed as invalid on 2020/11/04 00:53
Subsystems: kernel
[Documentation on labels]
First crash: 1304d, last: 1304d
Similar bugs (3)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KCSAN: data-race in __mod_timer / timer_clear_idle kernel 74 1360d 1374d 0/26 auto-closed as invalid on 2020/09/08 21:36
upstream KCSAN: data-race in __mod_timer / timer_clear_idle (4) kernel 1 595d 595d 0/26 auto-obsoleted due to no activity on 2022/10/14 01:10
upstream KCSAN: data-race in __mod_timer / timer_clear_idle (3) kernel 8 1101d 1209d 0/26 auto-closed as invalid on 2021/05/25 13:49

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

write to 0xffff88812c11cb25 of 1 bytes by task 0 on cpu 1:
 timer_clear_idle+0x2e/0x40 kernel/time/timer.c:1695
 tick_nohz_restart_sched_tick kernel/time/tick-sched.c:868 [inline]
 __tick_nohz_idle_restart_tick+0x20/0x190 kernel/time/tick-sched.c:1169
 tick_nohz_idle_exit+0x13c/0x290 kernel/time/tick-sched.c:1210
 do_idle+0x280/0x2c0 kernel/sched/idle.c:286
 cpu_startup_entry+0x15/0x20 kernel/sched/idle.c:369
 secondary_startup_64+0xa4/0xb0 arch/x86/kernel/head_64.S:243

read to 0xffff88812c11cb25 of 1 bytes by interrupt on cpu 0:
 trigger_dyntick_cpu kernel/time/timer.c:568 [inline]
 enqueue_timer kernel/time/timer.c:599 [inline]
 __mod_timer+0x892/0xc90 kernel/time/timer.c:1061
 mod_timer+0x1b/0x20 kernel/time/timer.c:1109
 sk_reset_timer+0x1f/0xa0 net/core/sock.c:2952
 tcp_send_delayed_ack+0x191/0x250 net/ipv4/tcp_output.c:3763
 __tcp_ack_snd_check+0x313/0x530 net/ipv4/tcp_input.c:5328
 tcp_ack_snd_check net/ipv4/tcp_input.c:5368 [inline]
 tcp_rcv_established+0xb3e/0x1520 net/ipv4/tcp_input.c:5789
 tcp_v4_do_rcv+0x25e/0x480 net/ipv4/tcp_ipv4.c:1642
 tcp_v4_rcv+0x219b/0x2420 net/ipv4/tcp_ipv4.c:2024
 ip_protocol_deliver_rcu+0x1f9/0x400 net/ipv4/ip_input.c:204
 ip_local_deliver_finish net/ipv4/ip_input.c:231 [inline]
 NF_HOOK include/linux/netfilter.h:301 [inline]
 ip_local_deliver+0x1d6/0x2a0 net/ipv4/ip_input.c:252
 dst_input include/net/dst.h:449 [inline]
 ip_sublist_rcv_finish net/ipv4/ip_input.c:550 [inline]
 ip_list_rcv_finish net/ipv4/ip_input.c:600 [inline]
 ip_sublist_rcv+0x4d4/0x5a0 net/ipv4/ip_input.c:608
 ip_list_rcv+0x262/0x290 net/ipv4/ip_input.c:643
 __netif_receive_skb_list_ptype net/core/dev.c:5329 [inline]
 __netif_receive_skb_list_core+0x34b/0x450 net/core/dev.c:5377
 __netif_receive_skb_list+0x298/0x310 net/core/dev.c:5429
 netif_receive_skb_list_internal+0xda/0x330 net/core/dev.c:5534
 gro_normal_list net/core/dev.c:5645 [inline]
 napi_complete_done+0x1a1/0x3c0 net/core/dev.c:6370
 virtqueue_napi_complete+0x28/0x80 drivers/net/virtio_net.c:329
 virtnet_poll+0x64f/0x780 drivers/net/virtio_net.c:1455
 napi_poll+0x178/0x4f0 net/core/dev.c:6688
 net_rx_action+0x1ba/0x530 net/core/dev.c:6758
 __do_softirq+0x198/0x360 kernel/softirq.c:298
 asm_call_irq_on_stack+0xf/0x20
 __run_on_irqstack arch/x86/include/asm/irq_stack.h:26 [inline]
 run_on_irqstack_cond arch/x86/include/asm/irq_stack.h:77 [inline]
 do_softirq_own_stack+0x5b/0x70 arch/x86/kernel/irq_64.c:77
 invoke_softirq kernel/softirq.c:393 [inline]
 __irq_exit_rcu+0x115/0x120 kernel/softirq.c:423
 common_interrupt+0x14e/0x1e0 arch/x86/kernel/irq.c:239
 asm_common_interrupt+0x1e/0x40 arch/x86/include/asm/idtentry.h:572
 native_safe_halt+0xe/0x10 arch/x86/include/asm/irqflags.h:60
 arch_safe_halt arch/x86/include/asm/paravirt.h:150 [inline]
 acpi_safe_halt drivers/acpi/processor_idle.c:111 [inline]
 acpi_idle_do_entry+0x94/0x120 drivers/acpi/processor_idle.c:517
 acpi_idle_enter+0x22e/0x260 drivers/acpi/processor_idle.c:648
 cpuidle_enter_state+0x2ba/0x840 drivers/cpuidle/cpuidle.c:237
 cpuidle_enter+0x3c/0x60 drivers/cpuidle/cpuidle.c:350
 call_cpuidle kernel/sched/idle.c:132 [inline]
 cpuidle_idle_call kernel/sched/idle.c:213 [inline]
 do_idle+0x1e7/0x2c0 kernel/sched/idle.c:273
 cpu_startup_entry+0x15/0x20 kernel/sched/idle.c:369
 rest_init+0xd8/0xe0 init/main.c:709
 arch_call_rest_init+0xa/0xb
 start_kernel+0x608/0x6d0 init/main.c:1049
 secondary_startup_64+0xa4/0xb0 arch/x86/kernel/head_64.S:243

Reported by Kernel Concurrency Sanitizer on:
CPU: 0 PID: 0 Comm: swapper/0 Not tainted 5.9.0-rc7-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
==================================================================

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2020/09/30 00:52 upstream fb0155a09b02 5abc3f1a .config console log report info ci2-upstream-kcsan-gce
* Struck through repros no longer work on HEAD.