summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Mirosław <mirq-linux@rere.qmqm.pl>2011-07-28 22:55:27 +0400
committerChris Ball <cjb@laptop.org>2011-08-13 22:50:23 +0400
commit1ccd4b7bfdcfcc8cc7ffc4a9c11d3ac5b6da8ca0 (patch)
tree40b9a74eda985efb482dd1ebccd30f85f18dd6c2
parent38ca285044be88a0fb47b6eb91deeeb729435fd0 (diff)
downloadlinux-1ccd4b7bfdcfcc8cc7ffc4a9c11d3ac5b6da8ca0.tar.xz
mmc: cb710: fix possible pci_dev leak in cb710_pci_configure()
Reported-by: Julia Lawall <julia@diku.dk> Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl> Signed-off-by: Chris Ball <cjb@laptop.org>
-rw-r--r--drivers/misc/cb710/core.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/misc/cb710/core.c b/drivers/misc/cb710/core.c
index efec4139c3f6..68cd05b6d829 100644
--- a/drivers/misc/cb710/core.c
+++ b/drivers/misc/cb710/core.c
@@ -33,7 +33,7 @@ EXPORT_SYMBOL_GPL(cb710_pci_update_config_reg);
static int __devinit cb710_pci_configure(struct pci_dev *pdev)
{
unsigned int devfn = PCI_DEVFN(PCI_SLOT(pdev->devfn), 0);
- struct pci_dev *pdev0 = pci_get_slot(pdev->bus, devfn);
+ struct pci_dev *pdev0;
u32 val;
cb710_pci_update_config_reg(pdev, 0x48,
@@ -43,6 +43,7 @@ static int __devinit cb710_pci_configure(struct pci_dev *pdev)
if (val & 0x80000000)
return 0;
+ pdev0 = pci_get_slot(pdev->bus, devfn);
if (!pdev0)
return -ENODEV;