eeprom: 93xx46: Fix SPI device leak
authorMark Brown <broonie@kernel.org>
Wed, 20 Apr 2016 09:16:36 +0000 (10:16 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 1 May 2016 21:04:19 +0000 (14:04 -0700)
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.

Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/misc/eeprom/eeprom_93xx46.c

index 5004d72..94cc035 100644 (file)
@@ -465,7 +465,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;