Re: [PATCH] [RESEND] orinoco_usb: Fix broken firmware load error checking

From: John W. Linville
Date: Fri May 16 2014 - 14:15:22 EST


This is already merged in wireless-next...

commit fe5d96246e9c4d266c4a8dca99f82ad82f2305b5
Author: Ondrej Zary <linux@xxxxxxxxxxxxxxxxxxxx>
Date: Fri May 9 18:10:34 2014 +0200

orinoco_usb: Fix broken firmware load error checking

The check of ezusb_firmware_download() return value (added by commit
488ec878034eccb852267b0e27ce9d511f75c587) is broken because
ezusb_firmware_download() returns 1 on success.
This causes the driver not to work with the following error:
orinoco_usb: probe of 3-3:1.0 failed with error -14

Check the return value only for negative values.

This fix should be applied to -stable kernels too.

Signed-off-by: Ondrej Zary <linux@xxxxxxxxxxxxxxxxxxxx>
Signed-off-by: John W. Linville <linville@xxxxxxxxxxxxx>

On Fri, May 16, 2014 at 08:01:59PM +0200, Ondrej Zary wrote:
> The check of ezusb_firmware_download() return value (added by commit
> 488ec878034eccb852267b0e27ce9d511f75c587) is broken because
> ezusb_firmware_download() returns 1 on success.
> This causes the driver not to work with the following error:
> orinoco_usb: probe of 3-3:1.0 failed with error -14
>
> Check the return value only for negative values.
>
> This fix should be applied to -stable kernels too.
>
> Signed-off-by: Ondrej Zary <linux@xxxxxxxxxxxxxxxxxxxx>
> ---
> drivers/net/wireless/orinoco/orinoco_usb.c | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/net/wireless/orinoco/orinoco_usb.c b/drivers/net/wireless/orinoco/orinoco_usb.c
> index f9805c9..1cbb783 100644
> --- a/drivers/net/wireless/orinoco/orinoco_usb.c
> +++ b/drivers/net/wireless/orinoco/orinoco_usb.c
> @@ -1687,7 +1687,7 @@ static int ezusb_probe(struct usb_interface *interface,
> firmware.code = fw_entry->data;
> }
> if (firmware.size && firmware.code) {
> - if (ezusb_firmware_download(upriv, &firmware))
> + if (ezusb_firmware_download(upriv, &firmware) < 0)
> goto error;
> } else {
> err("No firmware to download");
> --
> Ondrej Zary
>

--
John W. Linville Someday the world will need a hero, and you
linville@xxxxxxxxxxxxx might be all we have. Be ready.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/