Re: [PATCH 07/38] usb: host: ehci-msm: fix handling platform_get_irq result

From: Alan Stern
Date: Mon Sep 21 2015 - 10:45:39 EST


On Mon, 21 Sep 2015, Andrzej Hajda wrote:

> The function can return negative values.
>
> The problem has been detected using proposed semantic patch
> scripts/coccinelle/tests/unsigned_lesser_than_zero.cocci [1].
>
> [1]: http://permalink.gmane.org/gmane.linux.kernel/2038576
>
> Signed-off-by: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
> ---
> drivers/usb/host/ehci-msm.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/usb/host/ehci-msm.c b/drivers/usb/host/ehci-msm.c
> index 275c92e..c4f84c8 100644
> --- a/drivers/usb/host/ehci-msm.c
> +++ b/drivers/usb/host/ehci-msm.c
> @@ -80,12 +80,12 @@ static int ehci_msm_probe(struct platform_device *pdev)
> return -ENOMEM;
> }
>
> - hcd->irq = platform_get_irq(pdev, 0);
> - if (hcd->irq < 0) {
> + ret = platform_get_irq(pdev, 0);
> + if (ret < 0) {
> dev_err(&pdev->dev, "Unable to get IRQ resource\n");
> - ret = hcd->irq;
> goto put_hcd;
> }
> + hcd->irq = ret;
>
> res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> if (!res) {

Acked-by: Alan Stern <stern@xxxxxxxxxxxxxxxxxxx>

You might consider extending the coccinelle script to look for even
worse problems. ehci-mv.c doesn't test for negative return values at
all!

Alan Stern

--
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/