]> rtime.felk.cvut.cz Git - mcf548x/linux.git/commitdiff
KVM: x86 emulator: fix LMSW able to clear cr0.pe
authorAvi Kivity <avi@redhat.com>
Sun, 1 Aug 2010 15:35:24 +0000 (18:35 +0300)
committerAvi Kivity <avi@redhat.com>
Sun, 24 Oct 2010 08:50:28 +0000 (10:50 +0200)
LMSW is documented not to be able to clear cr0.pe; make it so.

Signed-off-by: Avi Kivity <avi@redhat.com>
arch/x86/kvm/emulate.c

index 904fc1c99b973dc17ae9b455d4c415a61231ad55..4d49514a919e568409aa88a660fa277a5a50eb2d 100644 (file)
@@ -3211,7 +3211,7 @@ twobyte_insn:
                        c->dst.val = ops->get_cr(0, ctxt->vcpu);
                        break;
                case 6: /* lmsw */
-                       ops->set_cr(0, (ops->get_cr(0, ctxt->vcpu) & ~0x0ful) |
+                       ops->set_cr(0, (ops->get_cr(0, ctxt->vcpu) & ~0x0eul) |
                                    (c->src.val & 0x0f), ctxt->vcpu);
                        c->dst.type = OP_NONE;
                        break;