Skip to contentSkip to conversation

eeprom: at25: Fix SPI device leak

PATCH New Mark Brown 1 participant 2 messages Apr 20, 2016 Char and misc drivers

lore
Share & tools
lore

Mark Brown

author
#0 lore raw

PATCH 1/2 eeprom: at25: Fix SPI device leak

The at25 driver is using spi_dev_get() apparently just to take a copy of the SPI device used to instantiate it but never calls spi_dev_put() to free it. Since the device is guaranteed to exist between probe() and remove() there should be no need for the driver to take an extra reference to it so fix the leak by just using a straight assignment.

---
 drivers/misc/eeprom/at25.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/misc/eeprom/at25.c +1 -1
index fa36a6e37084..a8ec227a7ff9 100644
@@ -390,7 +390,7 @@ static int at25_probe(struct spi_device *spi)
 
 	mutex_init(&at25->lock);
 	at25->chip = chip;
-	at25->spi = spi_dev_get(spi);
+	at25->spi = spi;
 	spi_set_drvdata(spi, at25);
 	at25->addrlen = addrlen;
 
Signature · 1 line
2.8.0.rc3
author
#1 lore raw

PATCH 2/2 eeprom: 93xx46: Fix SPI device leak

The 93xx46 driver is using spi_dev_get() apparently just to take a copy of the SPI device used to instantiate it but never calls spi_dev_put() to free it. Since the device is guaranteed to exist between probe() and remove() there should be no need for the driver to take an extra reference to it so fix the leak by just using a straight assignment.

---
 drivers/misc/eeprom/eeprom_93xx46.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/misc/eeprom/eeprom_93xx46.c +1 -1
index 426fe2fd5238..d971ae9eefde 100644
@@ -511,7 +511,7 @@ static int eeprom_93xx46_probe(struct spi_device *spi)
 
 	mutex_init(&edev->lock);
 
-	edev->spi = spi_dev_get(spi);
+	edev->spi = spi;
 	edev->pdata = pd;
 
 	edev->size = 128;
Signature · 1 line
2.8.0.rc3