|
|
|
|
|
|
|
|
|
|
xen-changelog
[Xen-changelog] [linux-2.6.18-xen] xen/PCI/MSI-X: Don't disable when it
# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1259577465 0
# Node ID 7ee9b1483445b05a2bab9466d1632f00f868f3c3
# Parent c25b2e4870ca6897ea8754e9c6ba5b1ab11c8f83
xen/PCI/MSI-X: Don't disable when it was never enabled
This is the MSI-X counterpart for c/s 945.
Signed-off-by: Jan Beulich <jbeulich@xxxxxxxxxx>
---
drivers/pci/msi-xen.c | 7 +++++++
1 files changed, 7 insertions(+)
diff -r c25b2e4870ca -r 7ee9b1483445 drivers/pci/msi-xen.c
--- a/drivers/pci/msi-xen.c Tue Nov 24 17:27:38 2009 +0000
+++ b/drivers/pci/msi-xen.c Mon Nov 30 10:37:45 2009 +0000
@@ -741,6 +741,7 @@ int pci_enable_msix(struct pci_dev* dev,
printk("get %x from pci_frontend_enable_msix\n", ret);
return ret;
}
+ dev->msix_enabled = 1;
msi_dev_entry->default_irq = temp;
for (i = 0; i < nvec; i++) {
@@ -818,6 +819,11 @@ void pci_disable_msix(struct pci_dev* de
return;
if (!dev)
return;
+ if (!dev->msix_enabled) {
+ printk(KERN_INFO "PCI: %s: Device did not enabled MSI-X.\n",
+ pci_name(dev));
+ return;
+ }
#ifdef CONFIG_XEN_PCIDEV_FRONTEND
if (!is_initial_xendomain()) {
@@ -835,6 +841,7 @@ void pci_disable_msix(struct pci_dev* de
}
dev->irq = msi_dev_entry->default_irq;
+ dev->msix_enabled = 0;
return;
}
#endif
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|
<Prev in Thread] |
Current Thread |
[Next in Thread> |
- [Xen-changelog] [linux-2.6.18-xen] xen/PCI/MSI-X: Don't disable when it was never enabled,
Xen patchbot-linux-2.6.18-xen <=
|
|
|
|
|