]> git.baikalelectronics.ru Git - kernel.git/commit
ASoC: hdac_hda: Avoid unexpected match when pcm_name is "Analog"
authorMeng Tang <tangmeng@uniontech.com>
Wed, 2 Mar 2022 09:43:51 +0000 (17:43 +0800)
committerMark Brown <broonie@kernel.org>
Thu, 3 Mar 2022 12:48:36 +0000 (12:48 +0000)
commitf0e51a85f9a64bd8d65b06359f593eaa31c81a43
treec2d630a64aaeb61d6ad807553c9cb8f9116303ca
parente41c432bf7c20d48e5d6512121e048e572f6cc76
ASoC: hdac_hda: Avoid unexpected match when pcm_name is "Analog"

pcm name can be "Analog" and "Alt Analog", cpcm->name can be
"Analog Codec DAI" and "Alt Analog Codec DAI". When pcm_name
is "Analog", "Analog Codec DAI" and "Alt Analog Codec DAI" are
both satisfy the 'if (strstr(cpcm->name, pcm_name))' condition,
which may cause the returned cpcm to be "Alt Analog Codec DAI".

Even if we get the pcm name by id, and "Analog Codec DAI" goes
into the loop before "Alt Analog Codec DAI", but I still think
we'd better have multiple insurances against unexpected return
values. After, we can correctly return the expected result
even if other relevant places are changed.

Signed-off-by: Meng Tang <tangmeng@uniontech.com>
Link: https://lore.kernel.org/r/20220302094351.3487-1-tangmeng@uniontech.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/codecs/hdac_hda.c