summaryrefslogtreecommitdiff
path: root/drivers/spi
diff options
context:
space:
mode:
authorWei Yongjun <yongjun_wei@trendmicro.com.cn>2013-11-15 11:43:27 +0400
committerMark Brown <broonie@linaro.org>2013-11-15 14:22:53 +0400
commite0b35b89d8d150eeb12437159bf059acd34758e5 (patch)
tree5e1af56c88363fd8b1a5d9c98186a135c50b41e1 /drivers/spi
parent82f85cf98f0eb60093e8b3d606711c2d49538478 (diff)
downloadlinux-e0b35b89d8d150eeb12437159bf059acd34758e5.tar.xz
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>
Diffstat (limited to 'drivers/spi')
-rw-r--r--drivers/spi/spi-bcm2835.c2
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);