[PATCH] Asoc: au1x: Use devm_snd_soc_register_component()

Zhen Ni posted 1 patch 4 years, 3 months ago
sound/soc/au1x/ac97c.c    | 2 +-
sound/soc/au1x/i2sc.c     | 2 +-
sound/soc/au1x/psc-ac97.c | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
[PATCH] Asoc: au1x: Use devm_snd_soc_register_component()
Posted by Zhen Ni 4 years, 3 months ago
Using devm_snd_soc_register_component()
instead of snd_soc_register_component()

Signed-off-by: Zhen Ni <nizhen@uniontech.com>
---
 sound/soc/au1x/ac97c.c    | 2 +-
 sound/soc/au1x/i2sc.c     | 2 +-
 sound/soc/au1x/psc-ac97.c | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/sound/soc/au1x/ac97c.c b/sound/soc/au1x/ac97c.c
index 3b1700e665f5..795bba756585 100644
--- a/sound/soc/au1x/ac97c.c
+++ b/sound/soc/au1x/ac97c.c
@@ -275,7 +275,7 @@ static int au1xac97c_drvprobe(struct platform_device *pdev)
 	if (ret)
 		return ret;
 
-	ret = snd_soc_register_component(&pdev->dev, &au1xac97c_component,
+	ret = devm_snd_soc_register_component(&pdev->dev, &au1xac97c_component,
 					 &au1xac97c_dai_driver, 1);
 	if (ret)
 		return ret;
diff --git a/sound/soc/au1x/i2sc.c b/sound/soc/au1x/i2sc.c
index 740d4e052e4d..a3c9d52ef337 100644
--- a/sound/soc/au1x/i2sc.c
+++ b/sound/soc/au1x/i2sc.c
@@ -265,7 +265,7 @@ static int au1xi2s_drvprobe(struct platform_device *pdev)
 
 	platform_set_drvdata(pdev, ctx);
 
-	return snd_soc_register_component(&pdev->dev, &au1xi2s_component,
+	return devm_snd_soc_register_component(&pdev->dev, &au1xi2s_component,
 					  &au1xi2s_dai_driver, 1);
 }
 
diff --git a/sound/soc/au1x/psc-ac97.c b/sound/soc/au1x/psc-ac97.c
index 05eb36991f14..3f60313822e7 100644
--- a/sound/soc/au1x/psc-ac97.c
+++ b/sound/soc/au1x/psc-ac97.c
@@ -411,7 +411,7 @@ static int au1xpsc_ac97_drvprobe(struct platform_device *pdev)
 	if (ret)
 		return ret;
 
-	ret = snd_soc_register_component(&pdev->dev, &au1xpsc_ac97_component,
+	ret = devm_snd_soc_register_component(&pdev->dev, &au1xpsc_ac97_component,
 					 &wd->dai_drv, 1);
 	if (ret)
 		return ret;
-- 
2.20.1
Re: [PATCH] Asoc: au1x: Use devm_snd_soc_register_component()
Posted by Mark Brown 4 years, 3 months ago
On Tue, Mar 01, 2022 at 05:23:22PM +0800, Zhen Ni wrote:

> +++ b/sound/soc/au1x/psc-ac97.c
> @@ -411,7 +411,7 @@ static int au1xpsc_ac97_drvprobe(struct platform_device *pdev)
>  	if (ret)
>  		return ret;
>  
> -	ret = snd_soc_register_component(&pdev->dev, &au1xpsc_ac97_component,
> +	ret = devm_snd_soc_register_component(&pdev->dev, &au1xpsc_ac97_component,
>  					 &wd->dai_drv, 1);
>  	if (ret)
>  		return ret;
> -- 

This introduces a double free since there is a remove() function which
calls snd_soc_unregister_component().