]> git.baikalelectronics.ru Git - kernel.git/commit
PCI Hotplug: fakephp: fix deadlock... again
authorAlex Chiang <achiang@hp.com>
Fri, 5 Sep 2008 21:05:03 +0000 (14:05 -0700)
committerJesse Barnes <jbarnes@virtuousgeek.org>
Tue, 9 Sep 2008 18:44:06 +0000 (11:44 -0700)
commit90538cb9d251f8f029f7e95a605cf10341d2e7c3
tree76560726e8345829b20cf4f604de8456336ba9cb
parent62e99f3b3dd11c80bb6ffcb19422676aa1848b65
PCI Hotplug: fakephp: fix deadlock... again

Commit b593196bfcb5cfc58dd64d8626214addc696bf45 (construct one
fakephp slot per PCI slot) introduced a regression, causing a
deadlock when removing a PCI device.

We also never actually removed the device from the PCI core.

So we:

- remove the device from the PCI core
- do not directly call remove_slot() to prevent deadlock

Yu Zhao reported and diagnosed this defect.

Signed-off-by: Alex Chiang <achiang@hp.com>
Acked-by: Yu Zhao <yu.zhao@intel.com>
Cc: Matthew Wilcox <matthew@wil.cx>
Cc: Kristen Carlson Accardi <kristen.c.accardi@intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
drivers/pci/hotplug/fakephp.c