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] [day] [month] [year] [list]
Date:   Wed, 13 Apr 2022 08:35:55 +0200
From:   "Fabio M. De Francesco" <fmdefrancesco@...il.com>
To:     Julia Lawall <julia.lawall@...ia.fr>
Cc:     johan@...nel.org, Jaehee Park <jhpark1013@...il.com>,
        elder@...nel.org, gregkh@...uxfoundation.org,
        greybus-dev@...ts.linaro.org, linux-staging@...ts.linux.dev,
        linux-kernel@...r.kernel.org, outreachy@...ts.linux.dev
Subject: Re: [PATCH v2 2/2] staging: greybus: remove unneeded return

On mercoledì 13 aprile 2022 08:16:20 CEST Julia Lawall wrote:
> 
> On Tue, 12 Apr 2022, Fabio M. De Francesco wrote:
> 
> > On martedì 12 aprile 2022 21:59:15 CEST Jaehee Park wrote:
> > > An empty function with void return type does not need an explicit
> > > return. Issue found by checkpatch.
> > >
> > > Signed-off-by: Jaehee Park <jhpark1013@...il.com>
> > > ---
> > >  drivers/staging/greybus/audio_codec.c | 1 -
> > >  1 file changed, 1 deletion(-)
> > >
> > > diff --git a/drivers/staging/greybus/audio_codec.c b/drivers/staging/
> > greybus/audio_codec.c
> > > index 0f50d1e51e2c..3e3a16568def 100644
> > > --- a/drivers/staging/greybus/audio_codec.c
> > > +++ b/drivers/staging/greybus/audio_codec.c
> > > @@ -1032,7 +1032,6 @@ static int gbcodec_probe(struct 
snd_soc_component
> > *comp)
> > >  static void gbcodec_remove(struct snd_soc_component *comp)
> > >  {
> > >  	/* Empty function for now */
> > > -	return;
> > >  }
> > >
> > >  static int gbcodec_write(struct snd_soc_component *comp, unsigned 
int
> > reg,
> > > --
> > > 2.25.1
> > >
> > Hi Jaehee,
> >
> > If I recall it correctly, Dan Carpenter suggested to remove this empty
> > function.
> >
> > When developers remove lines of code from a function which becomes 
empty
> > after the removals, they also remove the resulting empty function and
> > delete all the calls (if there are any left) at the same time.
> 
> It's probably not relevant in this case, 

No, it's relevant :)
I should have been more exhaustive :(

> but the function could be needed
> if it is a branch of an ifdef.  Also if it is stored in a structure field
> and the user of the structure does not check for NULL.

Here we have one of special cases you've mentioned. The pointer to the 
function is stored in a structure field _but_ we know that the user does 
check for NULL.

Thanks,

Fabio

> julia




Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ