KVM: arm64: Ensure LRs are clear when they should be
authorChristoffer Dall <christoffer.dall@linaro.org>
Sat, 18 Mar 2017 12:56:56 +0000 (13:56 +0100)
committerChristoffer Dall <cdall@linaro.org>
Tue, 4 Apr 2017 12:33:58 +0000 (14:33 +0200)
commit5b0d2cc2805897c14257f6dbb949639c499c3c25
treeb9cf3a2d817ef80a8aeface5563e7d256c38daed
parent8b3405e345b5a098101b0c31b264c812bba045d9
KVM: arm64: Ensure LRs are clear when they should be

We currently have some code to clear the list registers on GICv3, but we
never call this code, because the caller got nuked when removing the old
vgic.  We also used to have a similar GICv2 part, but that got lost in
the process too.

Let's reintroduce the logic for GICv2 and call the logic when we
initialize the use of hypervisors on the CPU, for example when first
loading KVM or when exiting a low power state.

Reviewed-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
arch/arm/kvm/arm.c
include/kvm/arm_vgic.h
virt/kvm/arm/vgic/vgic-init.c
virt/kvm/arm/vgic/vgic-v2.c
virt/kvm/arm/vgic/vgic.h