]> git.baikalelectronics.ru Git - kernel.git/commit
KVM: arm64: vgic-v3: Align emulated cpuif LPI state machine with the pseudocode
authorMarc Zyngier <maz@kernel.org>
Sun, 10 Oct 2021 15:09:10 +0000 (16:09 +0100)
committerMarc Zyngier <maz@kernel.org>
Sun, 17 Oct 2021 10:06:36 +0000 (11:06 +0100)
commit04af8e4415b9e40ed9c43847478ad357c455f10b
treedbdd9102002376f863725ac55fd94cd14d3d43ca
parenta067cd5fbba7749ccd9eef1e274294a20ad495d0
KVM: arm64: vgic-v3: Align emulated cpuif LPI state machine with the pseudocode

Having realised that a virtual LPI does transition through an active
state that does not exist on bare metal, align the CPU interface
emulation with the behaviour specified in the architecture pseudocode.

The LPIs now transition to active on IAR read, and to inactive on
EOI write. Special care is taken not to increment the EOIcount for
an LPI that isn't present in the LRs.

Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20211010150910.2911495-6-maz@kernel.org
arch/arm64/kvm/hyp/vgic-v3-sr.c