From: Zhang Shurong Date: Sat, 22 Jul 2023 15:29:51 +0000 (+0800) Subject: uio: pruss: fix to check return value of platform_get_irq() in pruss_probe() X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=2fd84b9b839c3541815733701a06d9df48297a91;p=linux.git uio: pruss: fix to check return value of platform_get_irq() in pruss_probe() The platform_get_irq might be failed and return a negative result. So there should have an error handling code. Fixed this by adding an error handling code. Signed-off-by: Zhang Shurong Link: https://lore.kernel.org/r/tencent_8E383752B54E5BF860711E500AD8A8971208@qq.com Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/uio/uio_pruss.c b/drivers/uio/uio_pruss.c index 83966dbd3bbfa..122c38e2fbbd9 100644 --- a/drivers/uio/uio_pruss.c +++ b/drivers/uio/uio_pruss.c @@ -175,8 +175,12 @@ static int pruss_probe(struct platform_device *pdev) goto err_free_ddr_vaddr; } + ret = platform_get_irq(pdev, 0); + if (ret < 0) + goto err_free_ddr_vaddr; + + gdev->hostirq_start = ret; gdev->pintc_base = pdata->pintc_base; - gdev->hostirq_start = platform_get_irq(pdev, 0); for (cnt = 0, p = gdev->info; cnt < MAX_PRUSS_EVT; cnt++, p++) { p->mem[0].addr = regs_prussio->start;