summaryrefslogtreecommitdiffstats
path: root/include/kvm
diff options
context:
space:
mode:
authorChristoffer Dall <cdall@kernel.org>2018-03-05 11:36:38 +0100
committerMarc Zyngier <marc.zyngier@arm.com>2018-03-14 18:29:14 +0000
commit413aa807ae39fed7e387c175d2d0ae9fcf6c0c9d (patch)
treeb1a6f9ebd348103896f0e9c153d37341475f5b67 /include/kvm
parente21a4f3a930cda6e4902cb5b3213365e5ff3ce7c (diff)
downloadlinux-stable-413aa807ae39fed7e387c175d2d0ae9fcf6c0c9d.tar.gz
linux-stable-413aa807ae39fed7e387c175d2d0ae9fcf6c0c9d.tar.bz2
linux-stable-413aa807ae39fed7e387c175d2d0ae9fcf6c0c9d.zip
KVM: arm/arm64: Reset mapped IRQs on VM reset
We currently don't allow resetting mapped IRQs from userspace, because their state is controlled by the hardware. But we do need to reset the state when the VM is reset, so we provide a function for the 'owner' of the mapped interrupt to reset the interrupt state. Currently only the timer uses mapped interrupts, so we call this function from the timer reset logic. Cc: stable@vger.kernel.org Fixes: 4c60e360d6df ("KVM: arm/arm64: Provide a get_input_level for the arch timer") Signed-off-by: Christoffer Dall <cdall@kernel.org> Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Diffstat (limited to 'include/kvm')
-rw-r--r--include/kvm/arm_vgic.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/kvm/arm_vgic.h b/include/kvm/arm_vgic.h
index cdbd142ca7f2..02924ae2527e 100644
--- a/include/kvm/arm_vgic.h
+++ b/include/kvm/arm_vgic.h
@@ -360,6 +360,7 @@ void kvm_vgic_put(struct kvm_vcpu *vcpu);
bool kvm_vcpu_has_pending_irqs(struct kvm_vcpu *vcpu);
void kvm_vgic_sync_hwstate(struct kvm_vcpu *vcpu);
void kvm_vgic_flush_hwstate(struct kvm_vcpu *vcpu);
+void kvm_vgic_reset_mapped_irq(struct kvm_vcpu *vcpu, u32 vintid);
void vgic_v3_dispatch_sgi(struct kvm_vcpu *vcpu, u64 reg);