Hi Marc, On 6/11/21 5:38 PM, Alexandru Elisei wrote: > Hi Marc, > > On 6/1/21 11:39 AM, Marc Zyngier wrote: >> As it turns out, not all the interrupt controllers are able to >> expose a vGIC maintenance interrupt that can be independently >> enabled/disabled. >> >> And to be fair, it doesn't really matter as all we require is >> for the interrupt to kick us out of guest mode out way or another. >> >> To that effect, add gic_kvm_info.no_maint_irq_mask for an interrupt >> controller to advertise the lack of masking. >> >> Signed-off-by: Marc Zyngier <maz@xxxxxxxxxx> >> --- >> arch/arm64/kvm/vgic/vgic-init.c | 8 +++++++- >> include/linux/irqchip/arm-vgic-info.h | 2 ++ >> 2 files changed, 9 insertions(+), 1 deletion(-) >> >> diff --git a/arch/arm64/kvm/vgic/vgic-init.c b/arch/arm64/kvm/vgic/vgic-init.c >> index 2fdb65529594..6752d084934d 100644 >> --- a/arch/arm64/kvm/vgic/vgic-init.c >> +++ b/arch/arm64/kvm/vgic/vgic-init.c >> @@ -519,12 +519,15 @@ void kvm_vgic_init_cpu_hardware(void) >> */ >> int kvm_vgic_hyp_init(void) >> { >> + bool has_mask; >> int ret; >> >> if (!gic_kvm_info) >> return -ENODEV; >> >> - if (!gic_kvm_info->maint_irq) { >> + has_mask = !gic_kvm_info->no_maint_irq_mask; > This double negative is pretty awkward, I suppose this was done to avoid changes > to the gic drivers, because the default value is 0 (false). Just an idea, maybe > renaming it to maint_irq_unmaskable would be more readable? Actually, after another look, the current name stopped looking awkward to me. Thanks, Alex