diff options
author | Keir Fraser <keir.fraser@citrix.com> | 2008-11-13 16:31:08 +0000 |
---|---|---|
committer | Keir Fraser <keir.fraser@citrix.com> | 2008-11-13 16:31:08 +0000 |
commit | f250210b16f0b955e1b47e451de3c3ab8fc484e3 (patch) | |
tree | cdf1f0deab2469d7bfcee24ad705425bda3321a9 /xen/include/asm-x86/msi.h | |
parent | f49717baeabf71c2e93ad7bac0c5989a6cf37354 (diff) | |
download | xen-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.h | 2 |
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, |