diff options
author | Paolo Bonzini <pbonzini@redhat.com> | 2019-03-28 19:07:30 +0100 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2019-03-28 19:07:30 +0100 |
commit | 690edec54cbaa0e98dc592aae6864272f48f3c84 (patch) | |
tree | b2240e1aa7f39f65d042e0d1dee94df6b67d4a60 /virt/kvm/arm/hyp/vgic-v3-sr.c | |
parent | e2788c4a41cb5fa68096f5a58bccacec1a700295 (diff) | |
parent | 8324c3d518cfd69f2a17866b52c13bf56d3042d8 (diff) | |
download | linux-690edec54cbaa0e98dc592aae6864272f48f3c84.tar.bz2 |
Merge tag 'kvmarm-fixes-for-5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into kvm-master
KVM/ARM fixes for 5.1
- Fix THP handling in the presence of pre-existing PTEs
- Honor request for PTE mappings even when THPs are available
- GICv4 performance improvement
- Take the srcu lock when writing to guest-controlled ITS data structures
- Reset the virtual PMU in preemptible context
- Various cleanups
Diffstat (limited to 'virt/kvm/arm/hyp/vgic-v3-sr.c')
-rw-r--r-- | virt/kvm/arm/hyp/vgic-v3-sr.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/virt/kvm/arm/hyp/vgic-v3-sr.c b/virt/kvm/arm/hyp/vgic-v3-sr.c index 264d92da3240..370bd6c5e6cb 100644 --- a/virt/kvm/arm/hyp/vgic-v3-sr.c +++ b/virt/kvm/arm/hyp/vgic-v3-sr.c @@ -222,7 +222,7 @@ void __hyp_text __vgic_v3_save_state(struct kvm_vcpu *vcpu) } } - if (used_lrs) { + if (used_lrs || cpu_if->its_vpe.its_vm) { int i; u32 elrsr; @@ -247,7 +247,7 @@ void __hyp_text __vgic_v3_restore_state(struct kvm_vcpu *vcpu) u64 used_lrs = vcpu->arch.vgic_cpu.used_lrs; int i; - if (used_lrs) { + if (used_lrs || cpu_if->its_vpe.its_vm) { write_gicreg(cpu_if->vgic_hcr, ICH_HCR_EL2); for (i = 0; i < used_lrs; i++) |