diff options
author | Wei Yongjun <yongjun_wei@trendmicro.com.cn> | 2013-11-15 02:50:59 -0500 |
---|---|---|
committer | Mark Brown <broonie@linaro.org> | 2013-12-17 17:41:50 -0500 |
commit | 9637b86fd1b75c913b42957b322d0871464f5a1b (patch) | |
tree | 9ef0494ec3e7a73b7feca5a910a1f7c5c23ff432 /drivers/spi/spi-bcm63xx.c | |
parent | 86b3bde003e6bf60ccb9c09b4115b8a2f533974c (diff) |
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>
Diffstat (limited to 'drivers/spi/spi-bcm63xx.c')
-rw-r--r-- | drivers/spi/spi-bcm63xx.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/spi/spi-bcm63xx.c b/drivers/spi/spi-bcm63xx.c index 89331cd0ddaa..dceb7b216f46 100644 --- a/drivers/spi/spi-bcm63xx.c +++ b/drivers/spi/spi-bcm63xx.c | |||
@@ -433,7 +433,7 @@ out: | |||
433 | 433 | ||
434 | static int bcm63xx_spi_remove(struct platform_device *pdev) | 434 | static int bcm63xx_spi_remove(struct platform_device *pdev) |
435 | { | 435 | { |
436 | struct spi_master *master = spi_master_get(platform_get_drvdata(pdev)); | 436 | struct spi_master *master = platform_get_drvdata(pdev); |
437 | struct bcm63xx_spi *bs = spi_master_get_devdata(master); | 437 | struct bcm63xx_spi *bs = spi_master_get_devdata(master); |
438 | 438 | ||
439 | /* reset spi block */ | 439 | /* reset spi block */ |