aboutsummaryrefslogtreecommitdiff
path: root/drivers/pci/controller/pci-host-common.c
diff options
context:
space:
mode:
authorWei Hu <[email protected]>2020-07-27 15:17:31 +0800
committerLorenzo Pieralisi <[email protected]>2020-07-27 12:10:16 +0100
commitd6af2ed29c7c1c311b96dac989dcb991e90ee195 (patch)
tree2d2bd2aa86b746c90a30bcae85c6622f93c6d5a9 /drivers/pci/controller/pci-host-common.c
parentb3a9e3b9622ae10064826dccb4f7a52bd88c7407 (diff)
PCI: hv: Fix a timing issue which causes kdump to fail occasionally
Kdump could fail sometime on Hyper-V guest because the retry in hv_pci_enter_d0() releases child device structures in hv_pci_bus_exit(). Although there is a second asynchronous device relations message sending from the host, if this message arrives to the guest after hv_send_resource_allocated() is called, the retry would fail. Fix the problem by moving retry to hv_pci_probe() and start the retry from hv_pci_query_relations() call. This will cause a device relations message to arrive to the guest synchronously; the guest would then be able to rebuild the child device structures before calling hv_send_resource_allocated(). Link: https://lore.kernel.org/r/[email protected] Fixes: c81992e7f4aa ("PCI: hv: Retry PCI bus D0 entry on invalid device state") Signed-off-by: Wei Hu <[email protected]> [[email protected]: fixed a comment and commit log] Signed-off-by: Lorenzo Pieralisi <[email protected]> Reviewed-by: Michael Kelley <[email protected]>
Diffstat (limited to 'drivers/pci/controller/pci-host-common.c')
0 files changed, 0 insertions, 0 deletions