When we're in the function, hpdev->state must be hv_pcichild_ejecting: see hv_pci_eject_device().
Signed-off-by: Dexuan Cui <de...@microsoft.com> Reviewed-by: Michael Kelley <mikel...@microsoft.com> Acked-by: Haiyang Zhang <haiya...@microsoft.com> Cc: Vitaly Kuznetsov <vkuzn...@redhat.com> Cc: Jack Morgenstein <ja...@mellanox.com> Cc: Stephen Hemminger <sthem...@microsoft.com> Cc: K. Y. Srinivasan <k...@microsoft.com> --- drivers/pci/host/pci-hyperv.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/drivers/pci/host/pci-hyperv.c b/drivers/pci/host/pci-hyperv.c index 28fce2be0a5f..1d2e1cb617f4 100644 --- a/drivers/pci/host/pci-hyperv.c +++ b/drivers/pci/host/pci-hyperv.c @@ -1854,10 +1854,7 @@ static void hv_eject_device_work(struct work_struct *work) hpdev = container_of(work, struct hv_pci_dev, wrk); - if (hpdev->state != hv_pcichild_ejecting) { - put_pcichild(hpdev, hv_pcidev_ref_pnp); - return; - } + WARN_ON(hpdev->state != hv_pcichild_ejecting); /* * Ejection can come before or after the PCI bus has been set up, so -- 2.7.4 _______________________________________________ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel