diff options
author | Wei Yongjun <yongjun_wei@trendmicro.com.cn> | 2013-11-15 15:43:27 +0800 |
---|---|---|
committer | Mark Brown <broonie@linaro.org> | 2013-11-15 10:22:53 +0000 |
commit | e0b35b89d8d150eeb12437159bf059acd34758e5 (patch) | |
tree | 5e1af56c88363fd8b1a5d9c98186a135c50b41e1 | |
parent | 82f85cf98f0eb60093e8b3d606711c2d49538478 (diff) |
spi: bcm2835: fix reference leak to master in bcm2835_spi_remove()
Once a spi_master_get() call succeeds, we need an additional
spi_master_put() call to free the memory, otherwise we will
leak a reference to master. Fix by removing the unnecessary
spi_master_get() call.
Fixes: 247263dba208 ('spi: bcm2835: use devm_spi_register_master()')
Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
Signed-off-by: Mark Brown <broonie@linaro.org>
-rw-r--r-- | drivers/spi/spi-bcm2835.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/spi/spi-bcm2835.c b/drivers/spi/spi-bcm2835.c index 4c332143a310..3c5aca8d677a 100644 --- a/drivers/spi/spi-bcm2835.c +++ b/drivers/spi/spi-bcm2835.c @@ -377,7 +377,7 @@ out_master_put: static int bcm2835_spi_remove(struct platform_device *pdev) { - struct spi_master *master = spi_master_get(platform_get_drvdata(pdev)); + struct spi_master *master = platform_get_drvdata(pdev); struct bcm2835_spi *bs = spi_master_get_devdata(master); free_irq(bs->irq, master); |