[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 09/35] kvm: x86: Fix DPL write back of segment regis
From: |
Marcelo Tosatti |
Subject: |
[Qemu-devel] [PATCH 09/35] kvm: x86: Fix DPL write back of segment registers |
Date: |
Thu, 6 Jan 2011 15:56:15 -0200 |
From: Jan Kiszka <address@hidden>
The DPL is stored in the flags and not in the selector. In fact, the RPL
may differ from the DPL at some point in time, and so we were corrupting
the guest state so far.
Signed-off-by: Jan Kiszka <address@hidden>
Signed-off-by: Avi Kivity <address@hidden>
---
target-i386/kvm.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/target-i386/kvm.c b/target-i386/kvm.c
index 9a4bf98..ee7bdf8 100644
--- a/target-i386/kvm.c
+++ b/target-i386/kvm.c
@@ -602,7 +602,7 @@ static void set_seg(struct kvm_segment *lhs, const
SegmentCache *rhs)
lhs->limit = rhs->limit;
lhs->type = (flags >> DESC_TYPE_SHIFT) & 15;
lhs->present = (flags & DESC_P_MASK) != 0;
- lhs->dpl = rhs->selector & 3;
+ lhs->dpl = (flags >> DESC_DPL_SHIFT) & 3;
lhs->db = (flags >> DESC_B_SHIFT) & 1;
lhs->s = (flags & DESC_S_MASK) != 0;
lhs->l = (flags >> DESC_L_SHIFT) & 1;
--
1.7.2.3
- [Qemu-devel] [PATCH 00/35] [PULL] qemu-kvm.git uq/master queue, Marcelo Tosatti, 2011/01/06
- [Qemu-devel] [PATCH 19/35] kvm: x86: Prepare kvm_get_mp_state for in-kernel irqchip, Marcelo Tosatti, 2011/01/06
- [Qemu-devel] [PATCH 29/35] kvm: Drop smp_cpus argument from init functions, Marcelo Tosatti, 2011/01/06
- [Qemu-devel] [PATCH 08/35] kvm: introduce kvm_inject_x86_mce_on, Marcelo Tosatti, 2011/01/06
- [Qemu-devel] [PATCH 01/35] kvm: Enable user space NMI injection for kvm guest, Marcelo Tosatti, 2011/01/06
- [Qemu-devel] [PATCH 30/35] kvm: Consolidate must-have capability checks, Marcelo Tosatti, 2011/01/06
- [Qemu-devel] [PATCH 09/35] kvm: x86: Fix DPL write back of segment registers,
Marcelo Tosatti <=
- [Qemu-devel] [PATCH 34/35] kvm: x86: Implicitly clear nmi_injected/pending on reset, Marcelo Tosatti, 2011/01/06
- [Qemu-devel] [PATCH 11/35] kvm: x86: Prevent sign extension of DR7 in guest debugging mode, Marcelo Tosatti, 2011/01/06
- [Qemu-devel] [PATCH 23/35] kvm: x86: Reset paravirtual MSRs, Marcelo Tosatti, 2011/01/06
- [Qemu-devel] [PATCH 32/35] kvm: Flush coalesced mmio buffer on IO window exits, Marcelo Tosatti, 2011/01/06
- [Qemu-devel] [PATCH 22/35] kvm: x86: Refactor msr_star/hsave_pa setup and checks, Marcelo Tosatti, 2011/01/06
- [Qemu-devel] [PATCH 02/35] kvm: convert kvm_ioctl(KVM_CHECK_EXTENSION) to kvm_check_extension(), Marcelo Tosatti, 2011/01/06
- [Qemu-devel] [PATCH 27/35] kvm: x86: Fix !CONFIG_KVM_PARA build, Marcelo Tosatti, 2011/01/06
- [Qemu-devel] [PATCH 20/35] kvm: x86: Remove redundant mp_state initialization, Marcelo Tosatti, 2011/01/06
- [Qemu-devel] [PATCH 13/35] kvm: Fix coding style violations, Marcelo Tosatti, 2011/01/06
- [Qemu-devel] [PATCH 35/35] kvm: x86: Only read/write MSR_KVM_ASYNC_PF_EN if supported, Marcelo Tosatti, 2011/01/06