On Mon, 5 Oct 2020 18:51:43 +0200
Cédric Le Goater <c...@kaod.org> wrote:

> Signed-off-by: Cédric Le Goater <c...@kaod.org>
> ---
>  hw/ppc/spapr_caps.c | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 
> diff --git a/hw/ppc/spapr_caps.c b/hw/ppc/spapr_caps.c
> index 57c62c22e4cc..b0a9d0227db2 100644
> --- a/hw/ppc/spapr_caps.c
> +++ b/hw/ppc/spapr_caps.c
> @@ -535,6 +535,14 @@ static void cap_storeeoi_apply(SpaprMachineState *spapr, 
> uint8_t val,
>          return; /* Disabled by default */
>      }
>  
> +    /* For POWER8 CPUs, setting StoreEOI is useless as XIVE is not used */
> +    if (!ppc_type_check_compat(machine->cpu_type, CPU_POWERPC_LOGICAL_3_00, 
> 0,
> +                               spapr->max_compat_pvr)) {

It seems that this check is already done during machine init before
we get here:

 spapr_machine_init()
  spapr_irq_init()
   spapr_irq_check()

So you could maybe just check !spapr->irq->xive I think.

And s/on POWER8 CPUs/with XICS/ in the title.

> +        warn_report("StoreEOI is for the XIVE interrupt mode "
> +                    "(POWER9 and above)");
> +        return;
> +    }
> +
>      /* Check host support when the KVM device is in use */
>      if (kvm_irqchip_in_kernel()) {
>          if (!kvm_storeeoi) {


Reply via email to