diff options
| author | Mark Brown <broonie@kernel.org> | 2026-04-14 12:47:16 +0100 |
|---|---|---|
| committer | Mark Brown <broonie@kernel.org> | 2026-04-14 12:47:16 +0100 |
| commit | 6e5b0fac1063ba0b3c0e3fe1c605f95a3f45d440 (patch) | |
| tree | 42b5784e66a4a3e264b5821b2118d73ba51a5d18 /kernel/workqueue.c | |
| parent | cf162476f7e082662691e75f96bfc99c6a64810d (diff) | |
| parent | a158fe7b0c817eebcf2871fe1306347a376030e8 (diff) | |
| download | linux-6e5b0fac1063ba0b3c0e3fe1c605f95a3f45d440.tar.gz linux-6e5b0fac1063ba0b3c0e3fe1c605f95a3f45d440.zip | |
ASoC: SOF: Intel: NVL/NVL-S: add platform name
Bard Liao <yung-chuan.liao@linux.intel.com> says:
The platform name will be used in the topology name.
Link: https://patch.msgid.link/20260413060800.3156425-1-yung-chuan.liao@linux.intel.com
Diffstat (limited to 'kernel/workqueue.c')
| -rw-r--r-- | kernel/workqueue.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/kernel/workqueue.c b/kernel/workqueue.c index eda756556341..c6ea96d5b716 100644 --- a/kernel/workqueue.c +++ b/kernel/workqueue.c @@ -1849,8 +1849,20 @@ static void unplug_oldest_pwq(struct workqueue_struct *wq) raw_spin_lock_irq(&pwq->pool->lock); if (pwq->plugged) { pwq->plugged = false; - if (pwq_activate_first_inactive(pwq, true)) + if (pwq_activate_first_inactive(pwq, true)) { + /* + * While plugged, queueing skips activation which + * includes bumping the nr_active count and adding the + * pwq to nna->pending_pwqs if the count can't be + * obtained. We need to restore both for the pwq being + * unplugged. The first call activates the first + * inactive work item and the second, if there are more + * inactive, puts the pwq on pending_pwqs. + */ + pwq_activate_first_inactive(pwq, false); + kick_pool(pwq->pool); + } } raw_spin_unlock_irq(&pwq->pool->lock); } |
