summaryrefslogtreecommitdiffstats
path: root/drivers/spi
diff options
context:
space:
mode:
authorGuenter Roeck <linux@roeck-us.net>2012-08-24 05:08:49 +0200
committerMark Brown <broonie@opensource.wolfsonmicro.com>2012-08-27 18:37:52 +0200
commit63002e84a80c02b0be0f73932b955755903baabf (patch)
tree4e14dc4afd02f063daab3f36dd56849b472697b5 /drivers/spi
parentspi/tegra: Fix device remove function (diff)
downloadlinux-63002e84a80c02b0be0f73932b955755903baabf.tar.xz
linux-63002e84a80c02b0be0f73932b955755903baabf.zip
spi/topcliff-pch: Fix device remove function
The call sequence spi_alloc_master/spi_register_master/spi_unregister_master is complete; it reduces the device reference count to zero, which results in device memory being freed. An extra call to spi_master_put is unnecessary and results in an access to free memory. Drop it. Also, the device subsystem resets device driver data to NULL after the call to the remove function returns, so there is no need to do it here. Signed-off-by: Guenter Roeck <linux@roeck-us.net> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'drivers/spi')
-rw-r--r--drivers/spi/spi-topcliff-pch.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/drivers/spi/spi-topcliff-pch.c b/drivers/spi/spi-topcliff-pch.c
index cd56dcf46320..159dafd2f908 100644
--- a/drivers/spi/spi-topcliff-pch.c
+++ b/drivers/spi/spi-topcliff-pch.c
@@ -1536,8 +1536,6 @@ static int __devexit pch_spi_pd_remove(struct platform_device *plat_dev)
pci_iounmap(board_dat->pdev, data->io_remap_addr);
spi_unregister_master(data->master);
- spi_master_put(data->master);
- platform_set_drvdata(plat_dev, NULL);
return 0;
}