Re: [PATCH] media: gp8psk: initialize stats at power control logic

From: Willem de Bruijn
Date: Fri Nov 27 2020 - 09:21:37 EST


On Fri, Nov 27, 2020 at 1:46 AM Mauro Carvalho Chehab
<mchehab+huawei@xxxxxxxxxx> wrote:
>
> As reported on:
> https://lore.kernel.org/linux-media/20190627222020.45909-1-willemdebruijn.kernel@xxxxxxxxx/
>
> if gp8psk_usb_in_op() returns an error, the status var is not
> initialized. Yet, this var is used later on, in order to
> identify:
> - if the device was already started;
> - if firmware has loaded;
> - if the LNBf was powered on.
>
> Using status = 0 seems to ensure that everything will be
> properly powered up.
>
> So, instead of the proposed solution, let's just set
> status = 0.
>
> Reported-by: syzbot <syzkaller@xxxxxxxxxxxxxxxx>
> Reported-by: Willem de Bruijn <willemb@xxxxxxxxxx>
> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@xxxxxxxxxx>
> ---
> drivers/media/usb/dvb-usb/gp8psk.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/media/usb/dvb-usb/gp8psk.c b/drivers/media/usb/dvb-usb/gp8psk.c
> index c07f46f5176e..b4f661bb5648 100644
> --- a/drivers/media/usb/dvb-usb/gp8psk.c
> +++ b/drivers/media/usb/dvb-usb/gp8psk.c
> @@ -182,7 +182,7 @@ static int gp8psk_load_bcm4500fw(struct dvb_usb_device *d)
>
> static int gp8psk_power_ctrl(struct dvb_usb_device *d, int onoff)
> {
> - u8 status, buf;
> + u8 status = 0, buf;
> int gp_product_id = le16_to_cpu(d->udev->descriptor.idProduct);
>
> if (onoff) {
> --
> 2.28.0


Is it okay to ignore the return value of gp8psk_usb_in_op here?