2015-02-09 10:46-0700, Jim Davis: > Building with the attached random configuration file, Thank you for catching it! > arch/x86/kvm/vmx.c: In function ‘vmx_deliver_nested_posted_interrupt’: > arch/x86/kvm/vmx.c:4378:4: error: ‘apic’ undeclared (first use in this function) > apic->send_IPI_mask(get_cpu_mask(vcpu->cpu), > ^ ---8<--- KVM: VMX: include <asm/apic.h> to fix build error <asm/apic.h> isn't included directly and without CONFIG_SMP, an option that automagically pulls it can't be enabled. Reported-by: Jim Davis <jim.epost@xxxxxxxxx> Signed-off-by: Radim Krčmář <rkrcmar@xxxxxxxxxx> --- We could just #ifdef because the vcpu isn't running at that time, but I think that including the header instead of introducing an exception is worth the slowdown on UP. #ifdef for comparison: @@ -4374,9 +4374,11 @@ static int vmx_deliver_nested_posted_interrupt(struct kvm_vcpu *vcpu, if (is_guest_mode(vcpu) && vector == vmx->nested.posted_intr_nv) { /* the PIR and ON have been set by L1. */ +#ifdef CONFIG_SMP if (vcpu->mode == IN_GUEST_MODE) apic->send_IPI_mask(get_cpu_mask(vcpu->cpu), POSTED_INTR_VECTOR); +#endif /* * If a posted intr is not recognized by hardware, * we will accomplish it in the next vmentry. arch/x86/kvm/vmx.c | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c index 6e112472b0b3..3f73bfad0349 100644 --- a/arch/x86/kvm/vmx.c +++ b/arch/x86/kvm/vmx.c @@ -45,6 +45,7 @@ #include <asm/perf_event.h> #include <asm/debugreg.h> #include <asm/kexec.h> +#include <asm/apic.h> #include "trace.h" -- 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