Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d5af7d98 authored by Jiang Liu's avatar Jiang Liu Committed by Bjorn Helgaas
Browse files

PCI: Fix reference count leak in pci_dev_present()



Function pci_get_dev_by_id() takes a reference on the pci_dev returned, so
pci_dev_present() should release the corresponding reference.

Signed-off-by: default avatarJiang Liu <jiang.liu@huawei.com>
Signed-off-by: default avatarYinghai Lu <yinghai@kernel.org>
Signed-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
Acked-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
parent 7629d19a
Loading
Loading
Loading
Loading
+5 −5
Original line number Diff line number Diff line
@@ -319,13 +319,13 @@ int pci_dev_present(const struct pci_device_id *ids)
	WARN_ON(in_interrupt());
	while (ids->vendor || ids->subvendor || ids->class_mask) {
		found = pci_get_dev_by_id(ids, NULL);
		if (found)
			goto exit;
		if (found) {
			pci_dev_put(found);
			return 1;
		}
		ids++;
	}
exit:
	if (found)
		return 1;

	return 0;
}
EXPORT_SYMBOL(pci_dev_present);