================================================================== BUG: KCSAN: data-race in kick_pool / wq_worker_running read-write to 0xffff888237d2e8a4 of 4 bytes by task 35 on cpu 1: wq_worker_running+0x98/0x130 kernel/workqueue.c:1400 schedule_timeout+0xb8/0x160 kernel/time/sleep_timeout.c:99 do_wait_for_common kernel/sched/completion.c:95 [inline] __wait_for_common kernel/sched/completion.c:116 [inline] wait_for_common+0xfb/0x1c0 kernel/sched/completion.c:127 usb_start_wait_urb+0xdc/0x190 drivers/usb/core/message.c:64 usb_internal_control_msg drivers/usb/core/message.c:103 [inline] usb_control_msg+0x182/0x240 drivers/usb/core/message.c:154 get_port_status drivers/usb/core/hub.c:604 [inline] hub_ext_port_status+0xbf/0x480 drivers/usb/core/hub.c:621 usb_hub_port_status drivers/usb/core/hub.c:671 [inline] port_event drivers/usb/core/hub.c:5714 [inline] hub_event+0x538/0x2910 drivers/usb/core/hub.c:5903 process_one_work kernel/workqueue.c:3229 [inline] process_scheduled_works+0x483/0x9a0 kernel/workqueue.c:3310 worker_thread+0x51d/0x6f0 kernel/workqueue.c:3391 kthread+0x1d1/0x210 kernel/kthread.c:389 ret_from_fork+0x4b/0x60 arch/x86/kernel/process.c:147 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244 read to 0xffff888237d2e8a4 of 4 bytes by interrupt on cpu 0: need_more_worker kernel/workqueue.c:934 [inline] kick_pool+0x4d/0x2c0 kernel/workqueue.c:1240 __queue_work+0x8bb/0xb40 kernel/workqueue.c:2340 queue_work_on+0xd3/0x180 kernel/workqueue.c:2390 wg_queue_enqueue_per_device_and_peer drivers/net/wireguard/queueing.h:176 [inline] wg_packet_consume_data drivers/net/wireguard/receive.c:526 [inline] wg_packet_receive+0xf53/0x1340 drivers/net/wireguard/receive.c:576 wg_receive+0x4e/0x80 drivers/net/wireguard/socket.c:326 udpv6_queue_rcv_one_skb+0xb50/0xbe0 net/ipv6/udp.c:810 udpv6_queue_rcv_skb+0x1fa/0x2a0 net/ipv6/udp.c:872 udp6_unicast_rcv_skb+0x195/0x1b0 net/ipv6/udp.c:1012 __udp6_lib_rcv+0xa82/0xd30 net/ipv6/udp.c:1101 udpv6_rcv+0x4f/0x60 net/ipv6/udp.c:1215 ip6_protocol_deliver_rcu+0xa41/0x1060 net/ipv6/ip6_input.c:436 ip6_input_finish net/ipv6/ip6_input.c:481 [inline] NF_HOOK include/linux/netfilter.h:314 [inline] ip6_input+0xbf/0x1c0 net/ipv6/ip6_input.c:490 dst_input include/net/dst.h:460 [inline] ip6_rcv_finish+0x1fa/0x330 net/ipv6/ip6_input.c:79 NF_HOOK include/linux/netfilter.h:314 [inline] ipv6_rcv+0x74/0x150 net/ipv6/ip6_input.c:309 __netif_receive_skb_one_core net/core/dev.c:5672 [inline] __netif_receive_skb+0xa2/0x280 net/core/dev.c:5785 process_backlog+0x22e/0x440 net/core/dev.c:6117 __napi_poll+0x63/0x3c0 net/core/dev.c:6877 napi_poll net/core/dev.c:6946 [inline] net_rx_action+0x3a1/0x7f0 net/core/dev.c:7068 handle_softirqs+0xbf/0x280 kernel/softirq.c:554 do_softirq+0x5e/0x90 kernel/softirq.c:455 __local_bh_enable_ip+0x6e/0x70 kernel/softirq.c:382 __raw_read_unlock_bh include/linux/rwlock_api_smp.h:257 [inline] _raw_read_unlock_bh+0x1b/0x20 kernel/locking/spinlock.c:284 wg_socket_send_skb_to_peer+0x109/0x130 drivers/net/wireguard/socket.c:184 wg_packet_create_data_done drivers/net/wireguard/send.c:251 [inline] wg_packet_tx_worker+0x127/0x360 drivers/net/wireguard/send.c:276 process_one_work kernel/workqueue.c:3229 [inline] process_scheduled_works+0x483/0x9a0 kernel/workqueue.c:3310 worker_thread+0x51d/0x6f0 kernel/workqueue.c:3391 kthread+0x1d1/0x210 kernel/kthread.c:389 ret_from_fork+0x4b/0x60 arch/x86/kernel/process.c:147 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244 value changed: 0x00000000 -> 0x00000001 Reported by Kernel Concurrency Sanitizer on: CPU: 0 UID: 0 PID: 9 Comm: kworker/0:1 Tainted: G W 6.12.0-syzkaller-10296-gaaf20f870da0 #0 Tainted: [W]=WARN Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024 Workqueue: wg-crypt-wg0 wg_packet_tx_worker ==================================================================