diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
index f85da5cb6aa6465f942468d61fc136d1d0626459..aae5969370d1ee2ed7b7da2ce0053d67df019cda 100644
--- a/arch/x86/kvm/x86.c
+++ b/arch/x86/kvm/x86.c
@@ -750,7 +750,9 @@ EXPORT_SYMBOL_GPL(kvm_set_cr4);
 
 int kvm_set_cr3(struct kvm_vcpu *vcpu, unsigned long cr3)
 {
+#ifdef CONFIG_X86_64
 	cr3 &= ~CR3_PCID_INVD;
+#endif
 
 	if (cr3 == kvm_read_cr3(vcpu) && !pdptrs_changed(vcpu)) {
 		kvm_mmu_sync_roots(vcpu);