linux-stable/sound/soc/generic
Kuninori Morimoto 41bae58df4
ASoC: simple-card: fixup asoc_simple_probe() error handling
asoc_simple_probe() is used for both "DT probe" (A) and "platform probe"
(B). It uses "goto err" when error case, but it is not needed for
"platform probe" case (B). Thus it is using "return" directly there.

	static int asoc_simple_probe(...)
	{
 ^		if (...) {
 |			...
(A)			if (ret < 0)
 |				goto err;
 v		} else {
 ^			...
 |			if (ret < 0)
(B)				return -Exxx;
 v		}

		...
 ^		if (ret < 0)
(C)			goto err;
 v		...

	err:
(D)		simple_util_clean_reference(card);

		return ret;
	}

Both case are using (C) part, and it calls (D) when err case.
But (D) will do nothing for (B) case.
Because of these behavior, current code itself is not wrong,
but is confusable, and more, static analyzing tool will warning on
(B) part (should use goto err).

To avoid static analyzing tool warning, this patch uses "goto err"
on (B) part.

Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87o7hy7mlh.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-09-19 13:48:38 +01:00
..
Kconfig ASoC: add Audio Graph Card2 Custom Sample 2021-10-15 16:10:43 +01:00
Makefile ASoC: add Audio Graph Card2 Custom Sample 2021-10-15 16:10:43 +01:00
audio-graph-card.c ASoC: audio-graph-card.c: move audio_graph_parse_of() 2023-08-24 18:22:01 +01:00
audio-graph-card2-custom-sample.c ASoC: audio-graph-card2-custom-sample.dtsi: use card->name to avoid long name 2023-03-27 13:09:49 +01:00
audio-graph-card2-custom-sample.dtsi ASoC: audio-graph-card2: add comment for format property 2023-08-23 17:40:09 +01:00
audio-graph-card2.c ASoC: audio-graph-card2: add comment for format property 2023-08-23 17:40:09 +01:00
simple-card-utils.c ASoC: simple-card-utils: fixup simple_util_startup() error handling 2023-09-19 13:48:37 +01:00
simple-card.c ASoC: simple-card: fixup asoc_simple_probe() error handling 2023-09-19 13:48:38 +01:00
test-component.c ASoC: generic: test-component: Convert to platform remove callback returning void 2023-03-20 13:08:16 +00:00