aboutsummaryrefslogtreecommitdiffstats
path: root/xen/include/asm-x86/msi.h
diff options
context:
space:
mode:
authorKeir Fraser <keir.fraser@citrix.com>2008-11-13 16:31:08 +0000
committerKeir Fraser <keir.fraser@citrix.com>2008-11-13 16:31:08 +0000
commitf250210b16f0b955e1b47e451de3c3ab8fc484e3 (patch)
treecdf1f0deab2469d7bfcee24ad705425bda3321a9 /xen/include/asm-x86/msi.h
parentf49717baeabf71c2e93ad7bac0c5989a6cf37354 (diff)
downloadxen-f250210b16f0b955e1b47e451de3c3ab8fc484e3.tar.gz
xen-f250210b16f0b955e1b47e451de3c3ab8fc484e3.tar.bz2
xen-f250210b16f0b955e1b47e451de3c3ab8fc484e3.zip
x86: don't disable MSI in order to mask an IRQ
... as that's not really correct, and there are devices which can't even cope with that. Instead, check whether an MSI IRQ can be masked, and if it can't, treat it just like a level triggered IO-APIC IRQ. There's one other bug fix in here, correcting an off-by-one error on the entry_nr range check in __pci_enable_msix(). Signed-off-by: Jan Beulich <jbeulich@novell.com>
Diffstat (limited to 'xen/include/asm-x86/msi.h')
-rw-r--r--xen/include/asm-x86/msi.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/xen/include/asm-x86/msi.h b/xen/include/asm-x86/msi.h
index c72f9d69c5..f1462d2dc8 100644
--- a/xen/include/asm-x86/msi.h
+++ b/xen/include/asm-x86/msi.h
@@ -97,6 +97,8 @@ struct msi_desc {
int remap_index; /* index in interrupt remapping table */
};
+int msi_maskable_irq(const struct msi_desc *);
+
/*
* Assume the maximum number of hot plug slots supported by the system is about
* ten. The worstcase is that each of these slots is hot-added with a device,