From: Kuninori Morimoto Date: Thu, 12 Sep 2019 04:39:32 +0000 (+0900) Subject: ASoC: soc-core: create rtd->codec_dais first X-Git-Tag: microblaze-v5.6-rc1~33^2~76^2~266 X-Git-Url: http://git.monstr.eu/?a=commitdiff_plain;h=929deb849b9e4319015070ead7ca976a4f16e303;p=linux-2.6-microblaze.git ASoC: soc-core: create rtd->codec_dais first soc_new_pcm_runtime() allocs rtd and rtd->codec_dais. This patch allocs both first, and setup these after that. This is prepare for soc_new_pcm_runtime() cleanup. Signed-off-by: Kuninori Morimoto Link: https://lore.kernel.org/r/87blvqf7qz.wl-kuninori.morimoto.gx@renesas.com Signed-off-by: Mark Brown --- diff --git a/sound/soc/soc-core.c b/sound/soc/soc-core.c index 7a3f4783adf6..bc45b0db05ab 100644 --- a/sound/soc/soc-core.c +++ b/sound/soc/soc-core.c @@ -372,12 +372,6 @@ static struct snd_soc_pcm_runtime *soc_new_pcm_runtime( if (!rtd) return NULL; - INIT_LIST_HEAD(&rtd->component_list); - rtd->card = card; - rtd->dai_link = dai_link; - if (!rtd->dai_link->ops) - rtd->dai_link->ops = &null_snd_soc_ops; - rtd->codec_dais = kcalloc(dai_link->num_codecs, sizeof(struct snd_soc_dai *), GFP_KERNEL); @@ -386,6 +380,12 @@ static struct snd_soc_pcm_runtime *soc_new_pcm_runtime( return NULL; } + INIT_LIST_HEAD(&rtd->component_list); + rtd->card = card; + rtd->dai_link = dai_link; + if (!rtd->dai_link->ops) + rtd->dai_link->ops = &null_snd_soc_ops; + /* see for_each_card_rtds */ list_add_tail(&rtd->list, &card->rtd_list); rtd->num = card->num_rtd;