PCI: Fix reference counting bug
authorMatthew Wilcox <matthew@wil.cx>
Tue, 21 Oct 2008 01:13:08 +0000 (19:13 -0600)
committerJesse Barnes <jbarnes@virtuousgeek.org>
Wed, 22 Oct 2008 23:42:35 +0000 (16:42 -0700)
commitc4ed02fae78bf6cea0b22edd34a67df972f29832
treeeaa2a319b16f601d43f1d39db768d3b6d7a5a4ff
parentd389fec6a2aec1ea7d47833f36a0413a619c8c12
PCI: Fix reference counting bug

pci_get_subsys() will decrement the reference count of the device that
it starts searching from.  Unfortunately, the pci_find_device() interface
will already have decremented the reference count of the device earlier,
so the device will end up losing all reference counts and be freed.

We can fix this by incrementing the reference count of the device to
start searching from before calling pci_get_subsys().

Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
drivers/pci/search.c