Re: [PATCH v2] ASoC: amd: ps: Fix uninitialized ret in create_acp64_platform_devs()

From: syed saba kareem
Date: Mon Jan 09 2023 - 06:35:41 EST



On 1/6/23 06:13, Nathan Chancellor wrote:
Clang warns:

sound/soc/amd/ps/pci-ps.c:218:2: error: variable 'ret' is used uninitialized whenever switch default is taken [-Werror,-Wsometimes-uninitialized]
default:
^~~~~~~
sound/soc/amd/ps/pci-ps.c:239:9: note: uninitialized use occurs here
return ret;
^~~
sound/soc/amd/ps/pci-ps.c:190:9: note: initialize the variable 'ret' to silence this warning
int ret;
^
= 0
1 error generated.

ret is used uninitialized if 'goto de_init' is taken. As this is not an
error nor should the ACP be deinitialized, just directly return 0 in
this case statement, which resolves the warning.

Fixes: 1d325cdaf7a2 ("ASoC: amd: ps: refactor platform device creation logic")
Link: https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FClangBuiltLinux%2Flinux%2Fissues%2F1779&data=05%7C01%7CSyed.SabaKareem%40amd.com%7Cab19d64e997043ee07ae08daef7f10d0%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C638085626264112039%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=ximBlRFOMQKg0q6Rac19%2FaVNnyNaBUfkHm9Me5NYj2k%3D&reserved=0
Suggested-by: Vijendar Mukunda <Vijendar.Mukunda@xxxxxxx>
Signed-off-by: Nathan Chancellor <nathan@xxxxxxxxxx>

Reviewed-by : Syed Saba Kareem<syed.sabakareem@xxxxxxx>

---
Changes in v2:
- Instead of setting ret to -ENODEV and going to de_init, just 'return 0' in
the default case (Vijendar)
Link to v1: https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Flore.kernel.org%2Fr%2F20230105-wsometimes-uninitialized-pci-ps-c-v1-1-4022fd077959%40kernel.org&data=05%7C01%7CSyed.SabaKareem%40amd.com%7Cab19d64e997043ee07ae08daef7f10d0%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C638085626264112039%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=rjsus%2BLxO7v%2F94R48F8VxQXtkt8QnibZLcCbEFLq%2F1g%3D&reserved=0
---
sound/soc/amd/ps/pci-ps.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sound/soc/amd/ps/pci-ps.c b/sound/soc/amd/ps/pci-ps.c
index 401cfd0036be..64648b75de6b 100644
--- a/sound/soc/amd/ps/pci-ps.c
+++ b/sound/soc/amd/ps/pci-ps.c
@@ -217,7 +217,7 @@ static int create_acp63_platform_devs(struct pci_dev *pci, struct acp63_dev_data
break;
default:
dev_dbg(&pci->dev, "No PDM devices found\n");
- goto de_init;
+ return 0;
}
for (index = 0; index < adata->pdev_count; index++) {

---
base-commit: 03178b4f7e2c59ead102e5ab5acb82ce1eaefe46
change-id: 20230105-wsometimes-uninitialized-pci-ps-c-3b5725c6ed31

Best regards,