* [PATCH] ASoC: cs35l56: Destroy workqueue in probe error path
@ 2026-05-01 10:30 Richard Fitzgerald
2026-05-01 12:29 ` Richard Fitzgerald
0 siblings, 1 reply; 2+ messages in thread
From: Richard Fitzgerald @ 2026-05-01 10:30 UTC (permalink / raw)
To: broonie; +Cc: linux-sound, linux-kernel, patches
The error path in cs35l56_common_probe() should call destroy_workqueue()
on the workqueue that was created by cs35l56_dsp_init().
Fixes: e49611252900 ("ASoC: cs35l56: Add driver for Cirrus Logic CS35L56")
Signed-off-by: Richard Fitzgerald <rf@opensource.cirrus.com>
---
sound/soc/codecs/cs35l56.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/sound/soc/codecs/cs35l56.c b/sound/soc/codecs/cs35l56.c
index 378017fcea10..401a41b648f5 100644
--- a/sound/soc/codecs/cs35l56.c
+++ b/sound/soc/codecs/cs35l56.c
@@ -1970,6 +1970,9 @@ int cs35l56_common_probe(struct cs35l56_private *cs35l56)
gpiod_set_value_cansleep(cs35l56->base.reset_gpio, 0);
regulator_bulk_disable(ARRAY_SIZE(cs35l56->supplies), cs35l56->supplies);
+ if (cs35l56->dsp_wq)
+ destroy_workqueue(cs35l56->dsp_wq);
+
return ret;
}
EXPORT_SYMBOL_NS_GPL(cs35l56_common_probe, "SND_SOC_CS35L56_CORE");
--
2.47.3
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] ASoC: cs35l56: Destroy workqueue in probe error path
2026-05-01 10:30 [PATCH] ASoC: cs35l56: Destroy workqueue in probe error path Richard Fitzgerald
@ 2026-05-01 12:29 ` Richard Fitzgerald
0 siblings, 0 replies; 2+ messages in thread
From: Richard Fitzgerald @ 2026-05-01 12:29 UTC (permalink / raw)
To: broonie; +Cc: linux-sound, linux-kernel, patches
On 1/5/26 11:30, Richard Fitzgerald wrote:
> The error path in cs35l56_common_probe() should call destroy_workqueue()
> on the workqueue that was created by cs35l56_dsp_init().
>
> Fixes: e49611252900 ("ASoC: cs35l56: Add driver for Cirrus Logic CS35L56")
> Signed-off-by: Richard Fitzgerald <rf@opensource.cirrus.com>
> ---
> sound/soc/codecs/cs35l56.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/sound/soc/codecs/cs35l56.c b/sound/soc/codecs/cs35l56.c
> index 378017fcea10..401a41b648f5 100644
> --- a/sound/soc/codecs/cs35l56.c
> +++ b/sound/soc/codecs/cs35l56.c
> @@ -1970,6 +1970,9 @@ int cs35l56_common_probe(struct cs35l56_private *cs35l56)
> gpiod_set_value_cansleep(cs35l56->base.reset_gpio, 0);
> regulator_bulk_disable(ARRAY_SIZE(cs35l56->supplies), cs35l56->supplies);
>
> + if (cs35l56->dsp_wq)
> + destroy_workqueue(cs35l56->dsp_wq);
> +
> return ret;
> }
> EXPORT_SYMBOL_NS_GPL(cs35l56_common_probe, "SND_SOC_CS35L56_CORE");
On second thoughts, it would be better to change the queue creation to
use the new devm-managed functions. I'll do a V2 to fix it that way.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-05-01 12:29 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-01 10:30 [PATCH] ASoC: cs35l56: Destroy workqueue in probe error path Richard Fitzgerald
2026-05-01 12:29 ` Richard Fitzgerald
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox