aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/irqchip
diff options
context:
space:
mode:
authorMarc Zyngier <maz@kernel.org>2021-03-15 21:56:47 +0000
committerMarc Zyngier <maz@kernel.org>2021-06-01 10:45:59 +0100
commitf6c3e24fb721dda247f6691c809d6e6c413f22c7 (patch)
tree00666e47954e63bf8423c1d5a248ddbe9eda9a87 /include/linux/irqchip
parentKVM: arm64: vgic: Be tolerant to the lack of maintenance interrupt masking (diff)
downloadlinux-dev-f6c3e24fb721dda247f6691c809d6e6c413f22c7.tar.xz
linux-dev-f6c3e24fb721dda247f6691c809d6e6c413f22c7.zip
KVM: arm64: vgic: Let an interrupt controller advertise lack of HW deactivation
The vGIC, as architected by ARM, allows a virtual interrupt to trigger the deactivation of a physical interrupt. This allows the following interrupt to be delivered without requiring an exit. However, some implementations have choosen not to implement this, meaning that we will need some unsavoury workarounds to deal with this. On detecting such a case, taint the kernel and spit a nastygram. We'll deal with this in later patches. Signed-off-by: Marc Zyngier <maz@kernel.org>
Diffstat (limited to 'include/linux/irqchip')
-rw-r--r--include/linux/irqchip/arm-vgic-info.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/irqchip/arm-vgic-info.h b/include/linux/irqchip/arm-vgic-info.h
index 7c0d08ebb82c..a75b2c7de69d 100644
--- a/include/linux/irqchip/arm-vgic-info.h
+++ b/include/linux/irqchip/arm-vgic-info.h
@@ -32,6 +32,8 @@ struct gic_kvm_info {
bool has_v4;
/* rvpeid support */
bool has_v4_1;
+ /* Deactivation impared, subpar stuff */
+ bool no_hw_deactivation;
};
#ifdef CONFIG_KVM