Unverified Commit c1e6414c authored by Dinghao Liu's avatar Dinghao Liu Committed by Mark Brown
Browse files

ASoC: qcom: common: Fix refcount imbalance on error



for_each_child_of_node returns a node pointer np with
refcount incremented. So when devm_kzalloc fails, a
pairing refcount decrement is needed to keep np's
refcount balanced.

Fixes: 16395cee ("ASoC: qcom: common: Fix NULL pointer in of parser")
Signed-off-by: default avatarDinghao Liu <dinghao.liu@zju.edu.cn>
Link: https://lore.kernel.org/r/20200820042828.10308-1-dinghao.liu@zju.edu.cn


Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent d062085d
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -52,8 +52,10 @@ int qcom_snd_parse_of(struct snd_soc_card *card)

	for_each_child_of_node(dev->of_node, np) {
		dlc = devm_kzalloc(dev, 2 * sizeof(*dlc), GFP_KERNEL);
		if (!dlc)
			return -ENOMEM;
		if (!dlc) {
			ret = -ENOMEM;
			goto err;
		}

		link->cpus	= &dlc[0];
		link->platforms	= &dlc[1];