[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <Pine.LNX.4.44L0.1509211040010.1713-100000@iolanthe.rowland.org>
Date: Mon, 21 Sep 2015 10:45:33 -0400 (EDT)
From: Alan Stern <stern@...land.harvard.edu>
To: Andrzej Hajda <a.hajda@...sung.com>
cc: linux-kernel@...r.kernel.org,
Bartlomiej Zolnierkiewicz <b.zolnierkie@...sung.com>,
Marek Szyprowski <m.szyprowski@...sung.com>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
<linux-usb@...r.kernel.org>
Subject: Re: [PATCH 07/38] usb: host: ehci-msm: fix handling platform_get_irq
result
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@...sung.com>
> ---
> 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@...land.harvard.edu>
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@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists