From eea00a2c8b86db230920819c866ea50b907ea357 Mon Sep 17 00:00:00 2001 From: Jan Kiszka Date: Mon, 19 Nov 2007 10:21:45 +0100 Subject: [PATCH] --- yaml --- r: 80744 b: refs/heads/master c: 15b00f32d53f31fe194b17ca0384a37756b55be2 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/kvm/vmx.c | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index d67edeadb013..85078a64a0c2 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 54f1585a8d0131bc3993902d4441f4049daed0d5 +refs/heads/master: 15b00f32d53f31fe194b17ca0384a37756b55be2 diff --git a/trunk/drivers/kvm/vmx.c b/trunk/drivers/kvm/vmx.c index 0c082faaa6db..b4c0bdce7b34 100644 --- a/trunk/drivers/kvm/vmx.c +++ b/trunk/drivers/kvm/vmx.c @@ -1165,7 +1165,8 @@ static void fix_rmode_seg(int seg, struct kvm_save_segment *save) save->base = vmcs_readl(sf->base); save->limit = vmcs_read32(sf->limit); save->ar = vmcs_read32(sf->ar_bytes); - vmcs_write16(sf->selector, vmcs_readl(sf->base) >> 4); + vmcs_write16(sf->selector, save->base >> 4); + vmcs_write32(sf->base, save->base & 0xfffff); vmcs_write32(sf->limit, 0xffff); vmcs_write32(sf->ar_bytes, 0xf3); }