On Sun, 03/29 17:04, Michael S. Tsirkin wrote: > This partially reverts commit d52877c7b1afb8c37ebe17e2005040b79cb618b0: > "pci/irq: let pci_device_shutdown to call pci_msi_shutdown v2" > > It's un-necessary now that we disable msi at start, and it actually > turns out to cause problems: some device drivers don't register a level > interrupt handler when they detect msi/msix capability, switching off > msi while device is going causes device to assert a level interrupt > which is never de-asserted, causing a kernel hang. > > In particular, this was observed with virtio. > > Cc: Yinghai Lu <yhlu.kernel.send@xxxxxxxxx> > Cc: Ulrich Obergfell <uobergfe@xxxxxxxxxx> > Cc: Rusty Russell <rusty@xxxxxxxxxxxxxxx> > Reported-by: Fam Zheng <famz@xxxxxxxxxx> > Signed-off-by: Michael S. Tsirkin <mst@xxxxxxxxxx> Reviewed-by: Fam Zheng <famz@xxxxxxxxxx> Tested-by: Fam Zheng <famz@xxxxxxxxxx> > --- > drivers/pci/pci-driver.c | 2 -- > 1 file changed, 2 deletions(-) > > diff --git a/drivers/pci/pci-driver.c b/drivers/pci/pci-driver.c > index 3cb2210..38a602c 100644 > --- a/drivers/pci/pci-driver.c > +++ b/drivers/pci/pci-driver.c > @@ -450,8 +450,6 @@ static void pci_device_shutdown(struct device *dev) > > if (drv && drv->shutdown) > drv->shutdown(pci_dev); > - pci_msi_shutdown(pci_dev); > - pci_msix_shutdown(pci_dev); > > #ifdef CONFIG_KEXEC > /* > -- > MST > -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html