|
|
|
|
|
|
|
|
|
|
xen-devel
[Xen-devel] [PATCH] linux-2.6.18/pcifront: fix PCI reference leak and po
From: Jiri Slaby <jslaby@xxxxxxx>
Subject: pcifront: fix PCI reference leak
Stanse found that when pdev is found and has no driver a reference is
leaked in pcifront_common_process. So add pci_dev_put there. For the
pdev == NULL case, pci_dev_put(NULL) is fine.
Signed-off-by: Jiri Slaby <jslaby@xxxxxxx>
Cc: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
Cc: Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx>
From: Jiri Slaby <jslaby@xxxxxxx>
Subject: pcifront: fix potential NULL dereference
Milton spotted that we dereference NULL in one fail path in
pcifront_common_process. Fix that by using different device to print
out an error.
Signed-off-by: Jiri Slaby <jslaby@xxxxxxx>
Cc: Milton Miller <miltonm@xxxxxxx>
Signed-off-by: Jan Beulich <jbeulich@xxxxxxxxxx>
--- a/drivers/xen/pcifront/pci_op.c
+++ b/drivers/xen/pcifront/pci_op.c
@@ -592,9 +592,9 @@ static pci_ers_result_t pcifront_common_
result = PCI_ERS_RESULT_NONE;
pcidev = pci_get_bus_and_slot(bus, devfn);
- if (!pcidev || !pcidev->driver){
- dev_err(&pcidev->dev,
- "device or driver is NULL\n");
+ if (!pcidev || !pcidev->driver) {
+ pci_dev_put(pcidev);
+ dev_err(&pdev->xdev->dev, "AER device or driver is NULL\n");
return result;
}
pdrv = pcidev->driver;
xen-pcifront-error-handling.patch
Description: Text document
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
<Prev in Thread] |
Current Thread |
[Next in Thread> |
- [Xen-devel] [PATCH] linux-2.6.18/pcifront: fix PCI reference leak and potential NULL dereference,
Jan Beulich <=
|
|
|
|
|