summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuenter Roeck <linux@roeck-us.net>2012-08-23 20:08:49 -0700
committerMark Brown <broonie@opensource.wolfsonmicro.com>2012-08-27 09:37:52 -0700
commit63002e84a80c02b0be0f73932b955755903baabf (patch)
tree4e14dc4afd02f063daab3f36dd56849b472697b5
parentc68025bf0363a7b44be2de512a88a57d57e63d81 (diff)
downloadlinux-stable-63002e84a80c02b0be0f73932b955755903baabf.tar.gz
linux-stable-63002e84a80c02b0be0f73932b955755903baabf.tar.bz2
linux-stable-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>
-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;
}