diff options
author | Badari Pulavarty <pbadari@us.ibm.com> | 2014-06-11 18:49:33 +1000 |
---|---|---|
committer | Alexander Graf <agraf@suse.de> | 2014-06-16 13:24:46 +0200 |
commit | 9dbae97723e964692364fb43012c6fa5448a661f (patch) | |
tree | be1bb408902e1611a953552abedb7fa14dfcab53 /include/hw | |
parent | d13fc32ecf8d810ec9894a35e1cfae81f7d88039 (diff) | |
download | qemu-9dbae97723e964692364fb43012c6fa5448a661f.tar.gz qemu-9dbae97723e964692364fb43012c6fa5448a661f.tar.bz2 qemu-9dbae97723e964692364fb43012c6fa5448a661f.zip |
spapr_pci: Advertise MSI quota
Hotplug of multiple disks fails due to MSI vector quota check.
Number of MSI vectors default to 8 allowing only 4 devices.
This happens on RHEL6.5 guest. RHEL7 and SLES11 guests fallback
to INTX.
One way to workaround the issue is to increase total MSIs,
so that MSI quota check allows us to hotplug multiple disks.
This sets the quota to the maximum number of interupts XICS has
which is 1024 now (XICS_IRQS). This moves XICS_IRQS from spapr.c
to xics.h for wider visibility.
Signed-off-by: Badari Pulavarty <pbadari@us.ibm.com>
[aik: put XICS_IRQS=1024 instead of 64i, fixed endianness and size]
Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'include/hw')
-rw-r--r-- | include/hw/ppc/xics.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/hw/ppc/xics.h b/include/hw/ppc/xics.h index 0d7673de94..85e4c8a3dd 100644 --- a/include/hw/ppc/xics.h +++ b/include/hw/ppc/xics.h @@ -152,6 +152,8 @@ struct ICSIRQState { uint8_t status; }; +#define XICS_IRQS 1024 + qemu_irq xics_get_qirq(XICSState *icp, int irq); void xics_set_irq_type(XICSState *icp, int irq, bool lsi); |