summaryrefslogtreecommitdiffstats
path: root/virt
diff options
context:
space:
mode:
authorMarc Zyngier <marc.zyngier@arm.com>2017-10-27 15:28:45 +0100
committerChristoffer Dall <christoffer.dall@linaro.org>2017-11-10 09:29:38 +0100
commitaf340f992c56f824eb9b2cab6dce8d46ec31c98c (patch)
treeff42b3d5851b5ba343029d8edcb43ca60410d0ec /virt
parentff9c114394aaed2061df112b75be9835a1394be4 (diff)
downloadlinux-af340f992c56f824eb9b2cab6dce8d46ec31c98c.tar.gz
linux-af340f992c56f824eb9b2cab6dce8d46ec31c98c.tar.bz2
linux-af340f992c56f824eb9b2cab6dce8d46ec31c98c.zip
KVM: arm/arm64: GICv4: Propagate property updates to VLPIs
Upon updating a property, we propagate it all the way to the physical ITS, and ask for an INV command to be executed there. Acked-by: Christoffer Dall <cdall@linaro.org> Signed-off-by: Marc Zyngier <marc.zyngier@arm.com> Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
Diffstat (limited to 'virt')
-rw-r--r--virt/kvm/arm/vgic/vgic-its.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/virt/kvm/arm/vgic/vgic-its.c b/virt/kvm/arm/vgic/vgic-its.c
index 78d11aed1e17..4768a0e21cc5 100644
--- a/virt/kvm/arm/vgic/vgic-its.c
+++ b/virt/kvm/arm/vgic/vgic-its.c
@@ -297,6 +297,9 @@ static int update_lpi_config(struct kvm *kvm, struct vgic_irq *irq,
spin_unlock_irqrestore(&irq->irq_lock, flags);
}
+ if (irq->hw)
+ return its_prop_update_vlpi(irq->host_irq, prop, true);
+
return 0;
}