Changes since v1 are: Patch 1, 6: no change since v1. Patch 2,4,5: I added these new patches, as suggested by Michael Kelley. Patch 3: Removed the unnecessary drain_workqueue(), as suggested by Michael Kelley. Dexuan Cui (6): PCI: hv: fix a comment typo in _hv_pcifront_read_config() PCI: hv: hv_eject_device_work(): remove the bogus test PCI: hv: serialize the present/eject work items PCI: hv: remove hbus->enum_sem PCI: hv: hv_pci_devices_present(): only queue a new work when necessary PCI: hv: fix 2 hang issues in hv_compose_msi_msg() drivers/pci/host/pci-hyperv.c | 116 ++++++++++++++++++++++++++++++++---------- 1 file changed, 90 insertions(+), 26 deletions(-) -- 2.7.4