diff options
author | Navid Emamdoost <navid.emamdoost@gmail.com> | 2019-09-30 05:46:01 +0200 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2019-10-01 19:39:12 +0200 |
commit | 057b8945f78f76d0b04eeb5c27cd9225e5e7ad86 (patch) | |
tree | 3eced86d3ef37df84a2cf7c36a7907275d5c91e1 /drivers/spi/spi-fsl-lpspi.c | |
parent | spi: gpio: prevent memory leak in spi_gpio_probe (diff) | |
download | linux-057b8945f78f76d0b04eeb5c27cd9225e5e7ad86.tar.xz linux-057b8945f78f76d0b04eeb5c27cd9225e5e7ad86.zip |
spi: lpspi: fix memory leak in fsl_lpspi_probe
In fsl_lpspi_probe an SPI controller is allocated either via
spi_alloc_slave or spi_alloc_master. In all but one error cases this
controller is put by going to error handling code. This commit fixes the
case when pm_runtime_get_sync fails and it should go to the error
handling path.
Fixes: 944c01a889d9 ("spi: lpspi: enable runtime pm for lpspi")
Signed-off-by: Navid Emamdoost <navid.emamdoost@gmail.com>
Link: https://lore.kernel.org/r/20190930034602.1467-1-navid.emamdoost@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'drivers/spi/spi-fsl-lpspi.c')
-rw-r--r-- | drivers/spi/spi-fsl-lpspi.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/spi/spi-fsl-lpspi.c b/drivers/spi/spi-fsl-lpspi.c index d08e9324140e..3528ed5eea9b 100644 --- a/drivers/spi/spi-fsl-lpspi.c +++ b/drivers/spi/spi-fsl-lpspi.c @@ -938,7 +938,7 @@ static int fsl_lpspi_probe(struct platform_device *pdev) ret = pm_runtime_get_sync(fsl_lpspi->dev); if (ret < 0) { dev_err(fsl_lpspi->dev, "failed to enable clock\n"); - return ret; + goto out_controller_put; } temp = readl(fsl_lpspi->base + IMX7ULP_PARAM); |