Re: [Outreachy kernel] [PATCH v2] staging: rtl8723bs: Remove useless led_blink_hdl()

From: Greg Kroah-Hartman
Date: Wed Apr 14 2021 - 13:57:09 EST


On Wed, Apr 14, 2021 at 08:48:09PM +0300, Dan Carpenter wrote:
> On Wed, Apr 14, 2021 at 07:00:41PM +0200, Greg Kroah-Hartman wrote:
> > On Wed, Apr 14, 2021 at 06:26:14PM +0200, Fabio M. De Francesco wrote:
> > > Removed useless led_blink_hdl() prototype and definition. In wlancmds[]
> > > the slot #60 is now set to NULL using the macro GEN_MLME_EXT_HANDLER. This
> > > change has not unwanted side effects because the code in rtw_cmd.c checks
> > > if the function pointer is valid before using it.
> > >
> > > Reported-by: Julia Lawall <julia.lawall@xxxxxxxx>
> > > Suggested-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
> > > Signed-off-by: Fabio M. De Francesco <fmdefrancesco@xxxxxxxxx>
> > > ---
> > >
> > > Changes since v1: Corrected a bad solution to this issue that made use of
> > > an unnecessary dummy function.
> > >
> > > drivers/staging/rtl8723bs/core/rtw_cmd.c | 2 +-
> > > drivers/staging/rtl8723bs/core/rtw_mlme_ext.c | 9 ---------
> > > drivers/staging/rtl8723bs/include/rtw_mlme_ext.h | 1 -
> > > 3 files changed, 1 insertion(+), 11 deletions(-)
> > >
> > > diff --git a/drivers/staging/rtl8723bs/core/rtw_cmd.c b/drivers/staging/rtl8723bs/core/rtw_cmd.c
> > > index 0297fbad7bce..f82dbd4f4c3d 100644
> > > --- a/drivers/staging/rtl8723bs/core/rtw_cmd.c
> > > +++ b/drivers/staging/rtl8723bs/core/rtw_cmd.c
> > > @@ -150,7 +150,7 @@ static struct cmd_hdl wlancmds[] = {
> > >
> > > GEN_MLME_EXT_HANDLER(0, h2c_msg_hdl) /*58*/
> > > GEN_MLME_EXT_HANDLER(sizeof(struct SetChannelPlan_param), set_chplan_hdl) /*59*/
> > > - GEN_MLME_EXT_HANDLER(sizeof(struct LedBlink_param), led_blink_hdl) /*60*/
> > > + GEN_MLME_EXT_HANDLER(0, NULL) /*60*/
> >
> > Better, but you really do not need to keep this here, right? Remove the
> > "led blink command" entirely, you didn't do that here.
>
> No, this is right. We have to put a NULL function pointer in the array
> or the indexing will be off. But Fabio is correct that the struct
> type should be removed.

The indexing can be off, just remove the other place where the "command"
is in the index and all is good as rebuilding will fix it. These are
not external "values" we have to keep stable.

This has been done for other drivers exactly like this, there are loads
of "odd" commands in there that should not be.

thanks,

greg k-h