On 03.04.24 12:02, Jon Hunter wrote: > On 24/03/2024 22:22, Sasha Levin wrote: >> Tejun Heo (9): >> workqueue: Move pwq->max_active to wq->max_active >> workqueue: Factor out pwq_is_empty() >> workqueue: Replace pwq_activate_inactive_work() with >> [__]pwq_activate_work() >> workqueue: Move nr_active handling into helpers >> workqueue: Make wq_adjust_max_active() round-robin pwqs while >> activating >> workqueue: RCU protect wq->dfl_pwq and implement accessors for it >> workqueue: Introduce struct wq_node_nr_active >> workqueue: Implement system-wide nr_active enforcement for unbound >> workqueues >> workqueue: Don't call cpumask_test_cpu() with -1 CPU in >> wq_update_node_max_active() > > > Sorry I am late on this, but I was not copied and so did not see this. I > noticed a suspend regression on Tegra186 with v6.8.y and bisect is point > to commit "workqueue: Implement system-wide nr_active enforcement for > unbound workqueues". > > Reverting commits "workqueue: Don't call cpumask_test_cpu() with -1 CPU > in wq_update_node_max_active()" and "workqueue: Implement system-wide > nr_active enforcement for unbound workqueues" does fix the problem. > > Note that I am not seeing this regression on the mainline with v6.9-rc2 > and so I am not sure if there is something else missing? I am also still > seeing the problem with v6.8.3-rc1. FWIW, there is a ongoing discussion about the workqueue backports (and if those should be removed) due to a earlier regression report (about hibernate, not suspend) here: https://lore.kernel.org/all/ce4c2f67-c298-48a0-87a3-f933d646c73b@xxxxxxxxxxxxx/ Ciao, Thorsten