BUG: workqueue lockup - pool cpus=0 node=0 flags=0x0 nice=0 stuck for 39s! Showing busy workqueues and worker pools: workqueue events: flags=0x100 pwq 2: cpus=0 node=0 flags=0x0 nice=0 active=2 refcnt=3 pending: nsim_dev_hwstats_traffic_work, vmstat_shepherd workqueue events_unbound: flags=0x2 pwq 8: cpus=0-1 flags=0x4 nice=0 active=1 refcnt=2 in-flight: 4120:nsim_dev_trap_report_work for 0s workqueue events_power_efficient: flags=0x82 pwq 8: cpus=0-1 flags=0x4 nice=0 active=3 refcnt=4 in-flight: 43:wg_ratelimiter_gc_entries for 39s pending: 2*neigh_managed_work workqueue mm_percpu_wq: flags=0x108 pwq 2: cpus=0 node=0 flags=0x0 nice=0 active=1 refcnt=2 pending: vmstat_update workqueue writeback: flags=0x4a pwq 8: cpus=0-1 flags=0x4 nice=0 active=1 refcnt=2 in-flight: 6453:wb_workfn for 0s workqueue wg-kex-wg0: flags=0x124 pwq 2: cpus=0 node=0 flags=0x0 nice=0 active=1 refcnt=2 pending: wg_packet_handshake_receive_worker workqueue wg-crypt-wg0: flags=0x128 pwq 2: cpus=0 node=0 flags=0x0 nice=0 active=2 refcnt=3 pending: wg_packet_encrypt_worker, wg_packet_tx_worker workqueue wg-kex-wg1: flags=0x124 pwq 2: cpus=0 node=0 flags=0x0 nice=0 active=1 refcnt=2 pending: wg_packet_handshake_receive_worker workqueue wg-crypt-wg1: flags=0x128 pwq 2: cpus=0 node=0 flags=0x0 nice=0 active=1 refcnt=2 pending: wg_packet_decrypt_worker pwq 6: cpus=1 node=0 flags=0x0 nice=0 active=1 refcnt=2 pending: wg_packet_encrypt_worker workqueue wg-crypt-wg2: flags=0x128 pwq 2: cpus=0 node=0 flags=0x0 nice=0 active=1 refcnt=2 pending: wg_packet_encrypt_worker pwq 6: cpus=1 node=0 flags=0x0 nice=0 active=1 refcnt=2 pending: wg_packet_encrypt_worker workqueue wg-crypt-wg0: flags=0x128 pwq 2: cpus=0 node=0 flags=0x0 nice=0 active=2 refcnt=3 pending: wg_packet_encrypt_worker, wg_packet_tx_worker workqueue wg-crypt-wg1: flags=0x128 pwq 2: cpus=0 node=0 flags=0x0 nice=0 active=3 refcnt=4 pending: wg_packet_encrypt_worker, wg_packet_tx_worker, wg_packet_decrypt_worker pwq 6: cpus=1 node=0 flags=0x0 nice=0 active=1 refcnt=2 pending: wg_packet_tx_worker workqueue wg-crypt-wg2: flags=0x128 pwq 2: cpus=0 node=0 flags=0x0 nice=0 active=1 refcnt=2 pending: wg_packet_encrypt_worker pwq 6: cpus=1 node=0 flags=0x0 nice=0 active=1 refcnt=2 pending: wg_packet_encrypt_worker workqueue krds_cp_wq#0/0: flags=0x20002 pwq 8: cpus=0-1 flags=0x4 nice=0 active=1 refcnt=4 in-flight: 5694:rds_connect_worker for 0s workqueue wg-crypt-wg0: flags=0x128 pwq 2: cpus=0 node=0 flags=0x0 nice=0 active=3 refcnt=4 pending: wg_packet_encrypt_worker, wg_packet_decrypt_worker, wg_packet_tx_worker pwq 6: cpus=1 node=0 flags=0x0 nice=0 active=1 refcnt=2 in-flight: 7313:wg_packet_tx_worker for 0s workqueue wg-crypt-wg1: flags=0x128 pwq 2: cpus=0 node=0 flags=0x0 nice=0 active=3 refcnt=4 pending: wg_packet_encrypt_worker, wg_packet_tx_worker, wg_packet_decrypt_worker pwq 6: cpus=1 node=0 flags=0x0 nice=0 active=1 refcnt=2 pending: wg_packet_decrypt_worker workqueue wg-crypt-wg2: flags=0x128 pwq 2: cpus=0 node=0 flags=0x0 nice=0 active=1 refcnt=2 pending: wg_packet_encrypt_worker pwq 6: cpus=1 node=0 flags=0x0 nice=0 active=1 refcnt=2 pending: wg_packet_encrypt_worker pool 6: cpus=1 node=0 flags=0x0 nice=0 hung=0s workers=5 idle: 5593 8133 6885 3463 pool 8: cpus=0-1 flags=0x4 nice=0 hung=0s workers=9 idle: 1022 7920 7231 7314 12 Showing backtraces of busy workers in stalled worker pools: pool 2: no worker in running state, cpu=0 is busy (nr_workers=4 nr_idle=4) The pool might have trouble waking an idle worker. Backtrace of last woken worker: task:kworker/0:3 state:R running task stack:0 pid:6510 tgid:6510 ppid:2 task_flags:0x4208060 flags:0x00000010 Workqueue: 0x0 (wg-crypt-wg2) Call trace: __switch_to+0x20c/0x520 arch/arm64/kernel/process.c:775 (T) context_switch kernel/sched/core.c:5520 [inline] __schedule+0xf98/0x34f4 kernel/sched/core.c:7270 __schedule_loop kernel/sched/core.c:7347 [inline] schedule+0xcc/0x288 kernel/sched/core.c:7362 worker_thread+0x200/0xc90 kernel/workqueue.c:3566 kthread+0x2ec/0x384 kernel/kthread.c:436 ret_from_fork+0x10/0x20 arch/arm64/kernel/entry.S:854 NMI backtrace for cpu 0 CPU: 0 UID: 0 PID: 43 Comm: kworker/u8:2 Tainted: G W syzkaller #0 PREEMPT Tainted: [W]=WARN Hardware name: linux,dummy-virt (DT) Workqueue: events_power_efficient wg_ratelimiter_gc_entries Call trace: show_stack+0x18/0x24 arch/arm64/kernel/stacktrace.c:499 (C) __dump_stack lib/dump_stack.c:94 [inline] dump_stack_lvl+0x7c/0xb0 lib/dump_stack.c:120 dump_stack+0x1c/0x28 lib/dump_stack.c:129 nmi_cpu_backtrace+0x198/0x228 lib/nmi_backtrace.c:123 nmi_trigger_cpumask_backtrace+0x244/0x358 lib/nmi_backtrace.c:66 arch_trigger_cpumask_backtrace+0x18/0x24 arch/arm64/kernel/smp.c:972 cpumask_backtrace+0x10/0x20 lib/nmi_backtrace.c:136 trigger_single_cpu_backtrace include/linux/nmi.h:182 [inline] show_cpu_pool_busy_workers kernel/workqueue.c:7852 [inline] show_cpu_pools_busy_workers kernel/workqueue.c:7866 [inline] wq_watchdog_timer_fn+0xa48/0xb5c kernel/workqueue.c:7982 call_timer_fn+0x1b4/0xa8c kernel/time/timer.c:1748 expire_timers kernel/time/timer.c:1799 [inline] __run_timers+0x890/0xb04 kernel/time/timer.c:2374 __run_timer_base kernel/time/timer.c:2386 [inline] __run_timer_base kernel/time/timer.c:2378 [inline] run_timer_base+0x110/0x180 kernel/time/timer.c:2395 run_timer_softirq+0x24/0x50 kernel/time/timer.c:2406 handle_softirqs+0x2d8/0x1048 kernel/softirq.c:645 __do_softirq+0x14/0x20 kernel/softirq.c:679 ____do_softirq+0x10/0x20 arch/arm64/kernel/irq.c:78 call_on_irq_stack+0x30/0x48 arch/arm64/kernel/entry.S:885 do_softirq_own_stack+0x1c/0x40 arch/arm64/kernel/irq.c:83 invoke_softirq kernel/softirq.c:526 [inline] __irq_exit_rcu+0x470/0x598 kernel/softirq.c:767 irq_exit_rcu+0x14/0x80 kernel/softirq.c:784 __el1_irq arch/arm64/kernel/entry-common.c:531 [inline] el1_interrupt+0x40/0x60 arch/arm64/kernel/entry-common.c:543 el1h_64_irq_handler+0x18/0x30 arch/arm64/kernel/entry-common.c:548 el1h_64_irq+0x6c/0x70 arch/arm64/kernel/entry.S:586 __daif_local_irq_restore arch/arm64/include/asm/irqflags.h:175 [inline] (P) arch_local_irq_restore arch/arm64/include/asm/irqflags.h:195 [inline] (P) lock_release+0x3e0/0x458 kernel/locking/lockdep.c:5910 (P) __raw_spin_unlock include/linux/spinlock_api_smp.h:199 [inline] _raw_spin_unlock+0x24/0x84 kernel/locking/spinlock.c:213 spin_unlock include/linux/spinlock.h:401 [inline] wg_ratelimiter_gc_entries+0x314/0x3e4 drivers/net/wireguard/ratelimiter.c:76 process_one_work+0x830/0x1c00 kernel/workqueue.c:3387 process_scheduled_works kernel/workqueue.c:3470 [inline] worker_thread+0x42c/0xc90 kernel/workqueue.c:3551 kthread+0x2ec/0x384 kernel/kthread.c:436 ret_from_fork+0x10/0x20 arch/arm64/kernel/entry.S:854