lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Y7cEra00F9PeFFcx@dev-arch.thelio-3990X>
Date:   Thu, 5 Jan 2023 10:11:09 -0700
From:   Nathan Chancellor <nathan@...nel.org>
To:     "Mukunda,Vijendar" <vijendar.mukunda@....com>
Cc:     lgirdwood@...il.com, broonie@...nel.org, Syed.SabaKareem@....com,
        alsa-devel@...a-project.org, linux-kernel@...r.kernel.org,
        llvm@...ts.linux.dev
Subject: Re: [PATCH] ASoC: amd: ps: Fix uninitialized ret in
 create_acp64_platform_devs()m

On Thu, Jan 05, 2023 at 10:34:10PM +0530, Mukunda,Vijendar wrote:
> On 05/01/23 21:23, 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.
> >
> > Return -ENODEV, which matches the debug message's description of this block.
> >
> > 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%7CVijendar.Mukunda%40amd.com%7Cad26656c3d2f4c75d00208daef350528%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C638085308267581104%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=eeHVStOIOcy%2FdDISOKlGNeyEwx4i5AtJZmQ5dcNB7XQ%3D&reserved=0
> > Signed-off-by: Nathan Chancellor <nathan@...nel.org>
> > ---
> >  sound/soc/amd/ps/pci-ps.c | 1 +
> >  1 file changed, 1 insertion(+)
> >
> > diff --git a/sound/soc/amd/ps/pci-ps.c b/sound/soc/amd/ps/pci-ps.c
> > index 401cfd0036be..f54b9fd9c3ce 100644
> > --- a/sound/soc/amd/ps/pci-ps.c
> > +++ b/sound/soc/amd/ps/pci-ps.c
> > @@ -217,6 +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");
> > +		ret = -ENODEV;
> ACP PCI driver supports different configurations. As per design , evenĀ  when no child dev
> nodes are created , ACP driver probe should be successful. ACP PCI driver probe failure
> causes power state transition failures when no child device nodes are created.
> We should not return -ENODEV in this case.
> return 0 is enough in this case. No need to de-init the ACP.

Thank you for the review and input and sorry for getting it wrong! I
will send a v2 replacing 'break;' with 'return 0;' shortly.

> >  		goto de_init;
> >  	}
> >  
> >
> > ---
> > base-commit: 03178b4f7e2c59ead102e5ab5acb82ce1eaefe46
> > change-id: 20230105-wsometimes-uninitialized-pci-ps-c-3b5725c6ed31
> >
> > Best regards,
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ