mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-11-01 17:08:10 +00:00
ASoC: soc-pcm: don't call flush_delayed_work() many times in soc_pcm_private_free()
commit f523acebbb
("ASoC: add Component level pcm_new/pcm_free v2")
added component level pcm_new/pcm_free, but flush_delayed_work()
on soc_pcm_private_free() is called in for_each_rtdcom() loop.
It doesn't need to be called many times.
This patch moves it out of loop.
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
4fbd8d194f
commit
f30a4c313e
1 changed files with 2 additions and 3 deletions
|
@ -2831,10 +2831,9 @@ static void soc_pcm_private_free(struct snd_pcm *pcm)
|
||||||
struct snd_soc_rtdcom_list *rtdcom;
|
struct snd_soc_rtdcom_list *rtdcom;
|
||||||
struct snd_soc_component *component;
|
struct snd_soc_component *component;
|
||||||
|
|
||||||
|
/* need to sync the delayed work before releasing resources */
|
||||||
|
flush_delayed_work(&rtd->delayed_work);
|
||||||
for_each_rtdcom(rtd, rtdcom) {
|
for_each_rtdcom(rtd, rtdcom) {
|
||||||
/* need to sync the delayed work before releasing resources */
|
|
||||||
|
|
||||||
flush_delayed_work(&rtd->delayed_work);
|
|
||||||
component = rtdcom->component;
|
component = rtdcom->component;
|
||||||
|
|
||||||
if (component->pcm_free)
|
if (component->pcm_free)
|
||||||
|
|
Loading…
Reference in a new issue