diff options
author | Shengjiu Wang <shengjiu.wang@nxp.com> | 2022-09-13 17:00:01 +0800 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2022-09-13 12:34:07 +0100 |
commit | d56ba9a04d7548d4149c46ec86a0e3cc41a70f4a (patch) | |
tree | c7b0cb54ba9eba71ea47884be65d0001270ba94a /sound/soc/fsl/imx-card.c | |
parent | b2ddf399d0555d3b517ed97f35767c054bbc6535 (diff) | |
download | linux-d56ba9a04d7548d4149c46ec86a0e3cc41a70f4a.tar.bz2 |
ASoC: imx-card: Fix refcount issue with of_node_put
imx_card_parse_of will search all the node with loop,
if there is defer probe happen in the middle of loop,
the previous released codec node will be released
twice, then cause refcount issue.
Here assign NULL to pointer of released nodes to fix
the issue.
Fixes: aa736700f42f ("ASoC: imx-card: Add imx-card machine driver")
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Link: https://lore.kernel.org/r/1663059601-29259-1-git-send-email-shengjiu.wang@nxp.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/fsl/imx-card.c')
-rw-r--r-- | sound/soc/fsl/imx-card.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sound/soc/fsl/imx-card.c b/sound/soc/fsl/imx-card.c index 14be29530fb5..3f128ced4180 100644 --- a/sound/soc/fsl/imx-card.c +++ b/sound/soc/fsl/imx-card.c @@ -698,6 +698,10 @@ static int imx_card_parse_of(struct imx_card_data *data) of_node_put(cpu); of_node_put(codec); of_node_put(platform); + + cpu = NULL; + codec = NULL; + platform = NULL; } return 0; |