From: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
Date: Fri, 15 Nov 2013 07:50:59 +0000 (+0800)
Subject: spi: bcm63xx: fix reference leak to master in bcm63xx_spi_remove()
X-Git-Tag: firefly_0821_release~176^2~4844^2^3
X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=ec3252687ae4ad0c3889010aee726c7a05606fe0;p=firefly-linux-kernel-4.4.55.git

spi: bcm63xx: fix reference leak to master in bcm63xx_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: bcm63xx: use devm_spi_register_master()')
Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
Signed-off-by: Mark Brown <broonie@linaro.org>
---

diff --git a/drivers/spi/spi-bcm63xx.c b/drivers/spi/spi-bcm63xx.c
index 80d56b214eb5..469ecd876358 100644
--- a/drivers/spi/spi-bcm63xx.c
+++ b/drivers/spi/spi-bcm63xx.c
@@ -435,7 +435,7 @@ out:
 
 static int bcm63xx_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 bcm63xx_spi *bs = spi_master_get_devdata(master);
 
 	/* reset spi block */