]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
ASoC: soc-core: call missing INIT_LIST_HEAD() for card_aux_list
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Fri, 27 Mar 2026 02:43:54 +0000 (02:43 +0000)
committerMark Brown <broonie@kernel.org>
Mon, 30 Mar 2026 17:24:56 +0000 (18:24 +0100)
commitb9eff9732cb0f86a68c9d1592a98ceab47c01e95
treec83e0a1d8c66ac1fd899a505690409a6b214ef34
parent8ec017cf31299c4b6287ebe27afe81c986aeef88
ASoC: soc-core: call missing INIT_LIST_HEAD() for card_aux_list

Component has "card_aux_list" which is added/deled in bind/unbind aux dev
function (A), and used in for_each_card_auxs() loop (B).

static void soc_unbind_aux_dev(...)
{
...
for_each_card_auxs_safe(...) {
...
(A) list_del(&component->card_aux_list);
}      ^^^^^^^^^^^^^
}

static int soc_bind_aux_dev(...)
{
...
for_each_card_pre_auxs(...) {
...
(A) list_add(&component->card_aux_list, ...);
}      ^^^^^^^^^^^^^
...
}

#define for_each_card_auxs(card, component) \
(B) list_for_each_entry(component, ..., card_aux_list)
    ^^^^^^^^^^^^^

But it has been used without calling INIT_LIST_HEAD().

> git grep card_aux_list sound/soc
sound/soc/soc-core.c:           list_del(&component->card_aux_list);
sound/soc/soc-core.c:           list_add(&component->card_aux_list, ...);

call missing INIT_LIST_HEAD() for it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://patch.msgid.link/87341mxa8l.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/soc-core.c