]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
usb: host: ehci-msm: fix handling platform_get_irq result
authorAndrzej Hajda <a.hajda@samsung.com>
Mon, 21 Sep 2015 13:33:39 +0000 (15:33 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 20 Feb 2019 09:09:09 +0000 (10:09 +0100)
commit 0c43e9d835b003d862a5f76e3affcc1f973fb3c0 upstream.

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@samsung.com>
Acked-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/host/ehci-msm.c

index 9dc2118ae8088a0b19018709869b43788d75bc2c..d48f53163dbe5c3ef48aee13317d6c30d45fce9e 100644 (file)
@@ -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) {