Re: [PATCH 10/35] irqchip/gic-v4.1: VPE table (aka GICR_VPROPBASER) allocation

From: Zenghui Yu
Date: Thu Sep 26 2019 - 22:02:04 EST


On 2019/9/26 23:57, Marc Zyngier wrote:
On 26/09/2019 16:19, Zenghui Yu wrote:
On 2019/9/25 22:41, Marc Zyngier wrote:

Indeed. The whole idea is that ITSs and RDs can share a vPE table if
they are in the same affinity group (such as a socket, for example).
This is what is missing from v4.0 where the ITS knows about vPEs, but
doesn't know about residency. With that in place, the HW is able to do a
lot more for us.

Thanks for your education!

I really want to know *how* does GICv4.1 ITS know about the vPE
residency (in hardware level)?

Hey, I'm a SW guy, I don't design the hardware! ;-)

I can understand that Redistributor can easily achieve it by
VPENDBASER's Valid and vPEID field. And it's necessary for ITS to
know the residency so that it can determine whether it's appropriate
to trigger default doorbell for vPE. But I have no knowledge about
how can it be achieved in hardware details.

My take is that the RD and the ITS can communicate over the shared
table, hence my remark above about SVPET==0. But as I said, I'm not a HW
guy.

;-) I should have asked our GIC engineers for these things.


Thanks,
zenghui