================================================================== BUG: KCSAN: data-race in kick_pool / wq_worker_running read-write to 0xffff888237d29de4 of 4 bytes by task 36 on cpu 1: wq_worker_running+0x95/0x120 kernel/workqueue.c:1406 schedule_timeout+0xb7/0x170 kernel/time/sleep_timeout.c:99 schedule_timeout_uninterruptible kernel/time/sleep_timeout.c:158 [inline] msleep+0x50/0x90 kernel/time/sleep_timeout.c:318 nsim_fib6_rt_add drivers/net/netdevsim/fib.c:693 [inline] nsim_fib6_rt_insert drivers/net/netdevsim/fib.c:759 [inline] nsim_fib6_event drivers/net/netdevsim/fib.c:856 [inline] nsim_fib_event drivers/net/netdevsim/fib.c:889 [inline] nsim_fib_event_work+0x42e6/0x4790 drivers/net/netdevsim/fib.c:1493 process_one_work kernel/workqueue.c:3263 [inline] process_scheduled_works+0x4ce/0x9d0 kernel/workqueue.c:3346 worker_thread+0x582/0x770 kernel/workqueue.c:3427 kthread+0x489/0x510 kernel/kthread.c:463 ret_from_fork+0x122/0x1b0 arch/x86/kernel/process.c:158 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245 read to 0xffff888237d29de4 of 4 bytes by interrupt on cpu 0: need_more_worker kernel/workqueue.c:940 [inline] kick_pool+0x49/0x2d0 kernel/workqueue.c:1246 __queue_work+0x8cb/0xb50 kernel/workqueue.c:2342 queue_work_on+0xd1/0x160 kernel/workqueue.c:2392 wg_queue_enqueue_per_device_and_peer drivers/net/wireguard/queueing.h:171 [inline] wg_packet_create_data drivers/net/wireguard/send.c:320 [inline] wg_packet_send_staged_packets+0xa3c/0xce0 drivers/net/wireguard/send.c:388 wg_xmit+0x5c7/0x6b0 drivers/net/wireguard/device.c:218 __netdev_start_xmit include/linux/netdevice.h:5248 [inline] netdev_start_xmit include/linux/netdevice.h:5257 [inline] xmit_one net/core/dev.c:3845 [inline] dev_hard_start_xmit+0x125/0x3e0 net/core/dev.c:3861 __dev_queue_xmit+0x10f9/0x2000 net/core/dev.c:4763 dev_queue_xmit include/linux/netdevice.h:3365 [inline] neigh_connected_output+0x253/0x2c0 net/core/neighbour.c:1624 neigh_output include/net/neighbour.h:547 [inline] ip6_finish_output2+0xa5f/0xd10 net/ipv6/ip6_output.c:136 __ip6_finish_output net/ipv6/ip6_output.c:-1 [inline] ip6_finish_output+0x3a4/0x540 net/ipv6/ip6_output.c:220 NF_HOOK_COND include/linux/netfilter.h:307 [inline] ip6_output+0x10a/0x250 net/ipv6/ip6_output.c:247 dst_output include/net/dst.h:464 [inline] NF_HOOK include/linux/netfilter.h:318 [inline] ndisc_send_skb+0x50f/0x760 net/ipv6/ndisc.c:512 ndisc_send_rs+0x2e7/0x360 net/ipv6/ndisc.c:722 addrconf_rs_timer+0x1e5/0x310 net/ipv6/addrconf.c:4037 call_timer_fn+0x3b/0x2c0 kernel/time/timer.c:1747 expire_timers kernel/time/timer.c:1798 [inline] __run_timers kernel/time/timer.c:2372 [inline] __run_timer_base+0x415/0x610 kernel/time/timer.c:2384 run_timer_base kernel/time/timer.c:2393 [inline] run_timer_softirq+0x31/0x70 kernel/time/timer.c:2403 handle_softirqs+0xba/0x290 kernel/softirq.c:622 __do_softirq kernel/softirq.c:656 [inline] invoke_softirq kernel/softirq.c:496 [inline] __irq_exit_rcu+0x3a/0xc0 kernel/softirq.c:723 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1052 [inline] sysvec_apic_timer_interrupt+0x74/0x80 arch/x86/kernel/apic/apic.c:1052 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:697 kcsan_setup_watchpoint+0x415/0x430 kernel/kcsan/core.c:705 sysctl_check_table fs/proc/proc_sysctl.c:1149 [inline] __register_sysctl_table+0x20f/0xc00 fs/proc/proc_sysctl.c:1386 register_net_sysctl_sz+0x19e/0x1c0 net/sysctl_net.c:171 __devinet_sysctl_register+0x1cd/0x260 net/ipv4/devinet.c:2677 devinet_sysctl_register+0x101/0x150 net/ipv4/devinet.c:2717 inetdev_init+0x1fb/0x370 net/ipv4/devinet.c:291 inetdev_event+0x423/0xc10 net/ipv4/devinet.c:1590 notifier_call_chain kernel/notifier.c:85 [inline] raw_notifier_call_chain+0x6f/0x1b0 kernel/notifier.c:453 call_netdevice_notifiers_info+0xae/0x100 net/core/dev.c:2229 call_netdevice_notifiers_extack net/core/dev.c:2267 [inline] call_netdevice_notifiers net/core/dev.c:2281 [inline] register_netdevice+0xd48/0xf00 net/core/dev.c:11332 __ip_tunnel_create+0x328/0x450 net/ipv4/ip_tunnel.c:268 ip_tunnel_init_net+0x1ff/0x480 net/ipv4/ip_tunnel.c:1147 erspan_init_net+0x35/0x40 net/ipv4/ip_gre.c:1769 ops_init+0x22a/0x2e0 net/core/net_namespace.c:137 setup_net+0x83/0x210 net/core/net_namespace.c:445 copy_net_ns+0x28c/0x3b0 net/core/net_namespace.c:580 create_new_namespaces+0x20e/0x3d0 kernel/nsproxy.c:110 copy_namespaces+0x1ad/0x210 kernel/nsproxy.c:175 copy_process+0xd32/0x2000 kernel/fork.c:2184 kernel_clone+0x16c/0x5c0 kernel/fork.c:2609 __do_sys_clone kernel/fork.c:2750 [inline] __se_sys_clone kernel/fork.c:2734 [inline] __x64_sys_clone+0xe6/0x120 kernel/fork.c:2734 x64_sys_call+0x119c/0x3000 arch/x86/include/generated/asm/syscalls_64.h:57 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xd2/0x200 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f value changed: 0x00000000 -> 0x00000001 Reported by Kernel Concurrency Sanitizer on: CPU: 0 UID: 0 PID: 3599 Comm: syz.4.30 Not tainted syzkaller #0 PREEMPT(voluntary) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/02/2025 ==================================================================