]> 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)
commit4c3664ffd081eca48fd780cf95ebb7465818f7fe
treedbdd9102002376f863725ac55fd94cd14d3d43ca
parentc4fcc700674756a062ef55ea66a0744ca1349a24
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