Commit 21764863 authored by Ryan Harper's avatar Ryan Harper Committed by Avi Kivity
Browse files

KVM: MMU: Ignore reserved bits in cr3 in non-pae mode



This patch removes the fault injected when the guest attempts to set reserved
bits in cr3.  X86 hardware doesn't generate a fault when setting reserved bits.
The result of this patch is that vmware-server, running within a kvm guest,
boots and runs memtest from an iso.

Signed-off-by: default avatarRyan Harper <ryanh@us.ibm.com>
Signed-off-by: default avatarAvi Kivity <avi@qumranet.com>
parent 12b7d28f
Loading
Loading
Loading
Loading
+4 −7
Original line number Diff line number Diff line
@@ -554,14 +554,11 @@ void set_cr3(struct kvm_vcpu *vcpu, unsigned long cr3)
				inject_gp(vcpu);
				return;
			}
		} else {
			if (cr3 & CR3_NONPAE_RESERVED_BITS) {
				printk(KERN_DEBUG
				       "set_cr3: #GP, reserved bits\n");
				inject_gp(vcpu);
				return;
			}
		}
		/*
		 * We don't check reserved bits in nonpae mode, because
		 * this isn't enforced, and VMware depends on this.
		 */
	}

	mutex_lock(&vcpu->kvm->lock);