I tested on AMD hardware, I thought I had turned on the Intel KVM module as well, but it turns out I hadn't. Will fix in v3.---noskip is used without being declared ... it shouldn't compile.
diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
@@ -4995,7 +4995,7 @@ static int handle_rmode_exception(struct kvm_vcpu *vcpu,
if (emulate_instruction(vcpu, 0) == EMULATE_DONE) {
if (vcpu->arch.halt_request) {
vcpu->arch.halt_request = 0;
- return kvm_emulate_halt(vcpu);
+ return kvm_emulate_halt_noskip(vcpu);
*_noskip makes the usual case harder to undertand: we just want to haltI like that better. Will make the change in v3.
the vcpu, so name it more directly ... like kvm_vcpu_halt()?