]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
spi: pxa2xx: Add missed security checks
authorChuhong Yuan <hslester96@gmail.com>
Sat, 9 Nov 2019 08:09:43 +0000 (16:09 +0800)
committerMark Brown <broonie@kernel.org>
Mon, 11 Nov 2019 12:51:08 +0000 (12:51 +0000)
pxa2xx_spi_init_pdata misses checks for devm_clk_get and
platform_get_irq.
Add checks for them to fix the bugs.

Since ssp->clk and ssp->irq are used in probe, they are mandatory here.
So we cannot use _optional() for devm_clk_get and platform_get_irq.

Signed-off-by: Chuhong Yuan <hslester96@gmail.com>
Link: https://lore.kernel.org/r/20191109080943.30428-1-hslester96@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/spi/spi-pxa2xx.c

index 6eb6805ee51da1ebd53c136de5f8feeb994a8f7a..9bc710c1b9e519baf4f622eb30ca02a57a2732e9 100644 (file)
@@ -1557,7 +1557,13 @@ pxa2xx_spi_init_pdata(struct platform_device *pdev)
 #endif
 
        ssp->clk = devm_clk_get(&pdev->dev, NULL);
+       if (IS_ERR(ssp->clk))
+               return NULL;
+
        ssp->irq = platform_get_irq(pdev, 0);
+       if (ssp->irq < 0)
+               return NULL;
+
        ssp->type = type;
        ssp->dev = &pdev->dev;
        ssp->port_id = pxa2xx_spi_get_port_id(&pdev->dev);