From: HariKrishna Sagala Date: Thu, 30 Oct 2025 10:53:14 +0000 (+0530) Subject: ASoC: soc-core: check ops & auto_selectable_formats in snd_soc_dai_get_fmt() to preve... X-Git-Tag: v6.19-rc1~156^2~3^2~74 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e73b743bfe8a6ff4e05b5657d3f7586a17ac3ba0;p=thirdparty%2Fkernel%2Flinux.git ASoC: soc-core: check ops & auto_selectable_formats in snd_soc_dai_get_fmt() to prevent dereference error Smatch reported an issue that "ops" could be null (see line 174) where later "ops" is dereferenced to extract the dai fmts, also auto_selectable_formats can also be null. Add a proper null check before accessing both the ptrs to ensure a safe execution. Signed-off-by: HariKrishna Sagala Link: https://patch.msgid.link/20251030105313.32199-2-hariconscious@gmail.com Signed-off-by: Mark Brown --- diff --git a/sound/soc/soc-dai.c b/sound/soc/soc-dai.c index f231b4174b5fc..a1e05307067d9 100644 --- a/sound/soc/soc-dai.c +++ b/sound/soc/soc-dai.c @@ -177,8 +177,9 @@ u64 snd_soc_dai_get_fmt(const struct snd_soc_dai *dai, int priority) if (max < until) until = max; - for (i = 0; i < until; i++) - fmt |= ops->auto_selectable_formats[i]; + if (ops && ops->auto_selectable_formats) + for (i = 0; i < until; i++) + fmt |= ops->auto_selectable_formats[i]; return fmt; }