Hello! > why not report ENXIO as an error? If probing the vgic fails due to > being unable to request the irq or something similar, then surely your > system has and error and this should be reported. It is reported by probe function itself. -ENODEV here means there's no GIC at all. -ENXIO happens when, for example, there is GIC node in the device tree, but it does not specify vGIC resources. Normally this means that vGIC is defunct on the machine. > This may be more nicely implemented by letting the vgic init/probe > functions set the vgic_present, or maybe better yet, just export a > function from vgic.c: > > bool kvm_vgic_present(void) > { > return vgic_ops != NULL; > } Is it necessary? Actually this flag is not needed anywhere else except arch/arm/kvm/arm.c, only at init time. Runtime should, i believe, use irqchip_in_kernel(), because userland can choose just not to use vGIC for some reason (testing for example). Kind regards, Pavel Fedin Expert Engineer Samsung Electronics Research center Russia -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html