summaryrefslogtreecommitdiffstats
path: root/drivers/pci
diff options
context:
space:
mode:
authorJesper Juhl <jesper.juhl@gmail.com>2006-04-17 04:02:54 +0200
committerGreg Kroah-Hartman <gregkh@suse.de>2006-04-27 22:00:51 +0200
commitf01f4182597a3bb4b6fbf92e041faf7a1016f4b6 (patch)
tree794a37798a20dd57737020fe5a550a2398fb1d9c /drivers/pci
parent[PATCH] PCI: Documentation: no more device ids (diff)
downloadlinux-f01f4182597a3bb4b6fbf92e041faf7a1016f4b6.tar.xz
linux-f01f4182597a3bb4b6fbf92e041faf7a1016f4b6.zip
[PATCH] PCI: fix potential resource leak in drivers/pci/msi.c
The coverity checker spotted (as entry #599) that we might leak `entry' in drivers/pci/msi.c::msix_capability_init() This patch should take care of that. Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/pci')
-rw-r--r--drivers/pci/msi.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/pci/msi.c b/drivers/pci/msi.c
index 2087a397ef16..9855c4c920b8 100644
--- a/drivers/pci/msi.c
+++ b/drivers/pci/msi.c
@@ -793,8 +793,10 @@ static int msix_capability_init(struct pci_dev *dev,
if (!entry)
break;
vector = get_msi_vector(dev);
- if (vector < 0)
+ if (vector < 0) {
+ kmem_cache_free(msi_cachep, entry);
break;
+ }
j = entries[i].entry;
entries[i].vector = vector;