Re: [PATCH v3 49/59] KVM: arm/arm64: GICv4: Propagate VLPI properties at map time

From: Christoffer Dall
Date: Wed Aug 30 2017 - 16:12:30 EST


On Wed, Aug 30, 2017 at 03:56:57PM +0100, Marc Zyngier wrote:
> On 28/08/17 19:18, Christoffer Dall wrote:
> > On Mon, Jul 31, 2017 at 06:26:27PM +0100, Marc Zyngier wrote:
> >> When the VLPI gets mapped, it must inherit the configuration of
> >> LPI configured at the vITS level. FOr that purpose, let's make
> >
> > *the LPI
> > *For that
>
> Will fix, thanks.
>
> >
> >> update_lpi_config globally available and call it just after
> >> having performed the VLPI map operation.
> >>
> >
> > I assume this means that the GIC compares the priorities of virtual
> > interrupts in the LRs with the priorities of the pending VLPIs and
> > figures out what to signal first? I couldn't find anywhere in the spec
> > where this is explicitly stated.
>
> There is this mention in IHI0069D, 5.4 (Virtual LPI support):
>
> "The Redistributor associated with the PE on which the vPE is scheduled
> determines the highest priority pending vLPI, and forwards this to the
> virtual CPU interface of the vPE. This vLPI and the interrupts in the
> List register are then prioritized together to determine the highest
> priority pending virtual interrupt for the vPE."
>

Wow, I didn't find that staring at the manual for a considerable amount
of time. Thanks for the pointer.

Thanks,
-Christoffer