[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH] Dont call msi_unmap_pirq() if did not enabled msi
Hi, When device driver unload, it may call pci_disable_msi(), if msi did not enabled but do msi_unmap_pirq(), then later driver reload and without msi, then will failed in request_irq() for irq_desc[irq]->chip valie is no_irq_chip. So when did not enable msi during driver initializing, then unloaded driver will not try to disable it. Signed-off-by: Joe Jin <joe.jin@xxxxxxxxxx> --- msi-xen.c | 6 ++++++ 1 file changed, 6 insertions(+) --- a/drivers/pci/msi-xen.c 2009-11-16 10:48:26.000000000 +0800 +++ b/drivers/pci/msi-xen.c 2009-11-16 19:27:17.000000000 +0800 @@ -670,6 +670,12 @@ void pci_disable_msi(struct pci_dev* dev if (!pos) return; + if (!(dev->msi_enabled)) { + printk(KERN_INFO "PCI: %s: Device did not eanble MSI.\n", + pci_name(dev)); + return; + } + pirq = dev->irq; /* Restore dev->irq to its default pin-assertion vector */ dev->irq = dev->irq_old; _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |