Modify the InterruptStatsProvider output to reflect the interrupt mode
currently in use by the machine.
Signed-off-by: Cédric Le Goater <clg@kaod.org>
---
hw/ppc/spapr.c | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
index b7389dbdf5ca..9fe3a9966b12 100644
--- a/hw/ppc/spapr.c
+++ b/hw/ppc/spapr.c
@@ -3785,10 +3785,18 @@ static void spapr_pic_print_info(InterruptStatsProvider *obj,
CPU_FOREACH(cs) {
PowerPCCPU *cpu = POWERPC_CPU(cs);
- icp_pic_print_info(ICP(cpu->intc), mon);
+ if (spapr_ovec_test(spapr->ov5_cas, OV5_XIVE_EXPLOIT)) {
+ spapr_xive_icp_pic_print_info(SPAPR_XIVE_ICP(cpu->intc), mon);
+ } else {
+ icp_pic_print_info(ICP(cpu->intc), mon);
+ }
}
- ics_pic_print_info(spapr->ics, mon);
+ if (spapr_ovec_test(spapr->ov5_cas, OV5_XIVE_EXPLOIT)) {
+ spapr_xive_pic_print_info(spapr->xive, mon);
+ } else {
+ ics_pic_print_info(spapr->ics, mon);
+ }
}
int spapr_vcpu_id(PowerPCCPU *cpu)
--
2.13.6