From 5fbf9be9382c3290d60d2a4bcb9020832b549b8a Mon Sep 17 00:00:00 2001 From: Konrad Rzeszutek Wilk Date: Wed, 16 Feb 2011 15:43:25 -0500 Subject: [PATCH] --- yaml --- r: 255278 b: refs/heads/master c: e17ab35f05cb8b3d19c70454a41ea67207caf484 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/xen/xen-pciback/pciback_ops.c | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 3c75e1af62fd..a18fbd4df0e4 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: a0b2fa8ef8fee0493f6c1e2ac08b9e50a629a7c2 +refs/heads/master: e17ab35f05cb8b3d19c70454a41ea67207caf484 diff --git a/trunk/drivers/xen/xen-pciback/pciback_ops.c b/trunk/drivers/xen/xen-pciback/pciback_ops.c index 6c398fde7a83..28a2a5584831 100644 --- a/trunk/drivers/xen/xen-pciback/pciback_ops.c +++ b/trunk/drivers/xen/xen-pciback/pciback_ops.c @@ -48,6 +48,13 @@ void pciback_control_isr(struct pci_dev *dev, int reset) if (enable) dev_data->irq = dev->irq; + /* + * SR-IOV devices in all use MSI-X and have no legacy + * interrupts, so inhibit creating a fake IRQ handler for them. + */ + if (dev_data->irq == 0) + goto out; + dev_dbg(&dev->dev, "%s: #%d %s %s%s %s-> %s\n", dev_data->irq_name, dev_data->irq,