On 04/27/2014 05:40 PM, Paolo Bonzini wrote: > Il 27/04/2014 17:32, Toralf Förster ha scritto: >> diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c >> index 8b8fc0b..a6ca7e0 100644 >> --- a/arch/x86/kvm/x86.c >> +++ b/arch/x86/kvm/x86.c >> @@ -5680,15 +5680,17 @@ int kvm_hv_hypercall(struct kvm_vcpu *vcpu) >> kvm_x86_ops->get_cs_db_l_bits(vcpu, &cs_db, &cs_l); >> longmode = is_long_mode(vcpu) && cs_l == 1; >> >> +#ifdef CONFIG_X86_64 >> if (!longmode) { >> +#endif > > This is ugly... +1 > >> param = ((u64)kvm_register_read(vcpu, VCPU_REGS_RDX) << 32) | >> (kvm_register_read(vcpu, VCPU_REGS_RAX) & 0xffffffff); >> ingpa = ((u64)kvm_register_read(vcpu, VCPU_REGS_RBX) << 32) | >> (kvm_register_read(vcpu, VCPU_REGS_RCX) & 0xffffffff); >> outgpa = ((u64)kvm_register_read(vcpu, VCPU_REGS_RDI) << 32) | >> (kvm_register_read(vcpu, VCPU_REGS_RSI) & 0xffffffff); >> - } >> #ifdef CONFIG_X86_64 > > ... can you just remove this #ifdef instead? It will be dead code, but > the compiler will detect it as such and remove it. > ok, but VCPU_REGS_R8 is #ifdef'ed in arch/x86/include/asm/kvm_host.h around line 120 and therefore I get : tfoerste@n22 ~/devel/linux $ sudo make modules ... CHK include/config/kernel.release CHK include/generated/uapi/linux/version.h CHK include/generated/utsrelease.h CALL scripts/checksyscalls.sh CC [M] arch/x86/kvm/x86.o arch/x86/kvm/x86.c: In function ‘kvm_hv_hypercall’: arch/x86/kvm/x86.c:5694:36: error: ‘VCPU_REGS_R8’ undeclared (first use in this function) arch/x86/kvm/x86.c:5694:36: note: each undeclared identifier is reported only once for each function it appears in make[2]: *** [arch/x86/kvm/x86.o] Error 1 make[1]: *** [arch/x86/kvm] Error 2 make: *** [arch/x86] Error 2 > Paolo > >> + } >> else { >> param = kvm_register_read(vcpu, VCPU_REGS_RCX); >> ingpa = kvm_register_read(vcpu, VCPU_REGS_RDX); > > -- Toralf -- 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