@@ -59,10 +59,10 @@ static void run_vcpu(struct kvm_vcpu *vcpu)
static void *vcpu_worker(void *data)
{
+ struct kvm_sregs __maybe_unused sregs;
struct vcpu_info *info = data;
struct kvm_vcpu *vcpu = info->vcpu;
struct kvm_vm *vm = vcpu->vm;
- struct kvm_sregs sregs;
vcpu_args_set(vcpu, 3, info->start_gpa, info->end_gpa, vm->page_size);
@@ -70,12 +70,12 @@ static void *vcpu_worker(void *data)
run_vcpu(vcpu);
rendezvous_with_boss();
+#ifdef __x86_64__
vcpu_sregs_get(vcpu, &sregs);
-#ifdef __x86_64__
/* Toggle CR0.WP to trigger a MMU context reset. */
sregs.cr0 ^= X86_CR0_WP;
-#endif
vcpu_sregs_set(vcpu, &sregs);
+#endif
rendezvous_with_boss();
run_vcpu(vcpu);