[PATCH 3/4] kvm: cpuid: fix xsave area size of XSAVEC

From: Wanpeng Li
Date: Thu Dec 04 2014 - 03:25:00 EST


XSAVEC also use the compacted format for the extended region
of the XSAVE area. This patch fix it by caculate the size of
XSAVEC extended region of XSAVE area as compact format.

Signed-off-by: Wanpeng Li <wanpeng.li@xxxxxxxxxxxxxxx>
---
arch/x86/kvm/cpuid.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/x86/kvm/cpuid.c b/arch/x86/kvm/cpuid.c
index 70f0fa1..e16a0c7 100644
--- a/arch/x86/kvm/cpuid.c
+++ b/arch/x86/kvm/cpuid.c
@@ -92,7 +92,7 @@ int kvm_update_cpuid(struct kvm_vcpu *vcpu)
}

best = kvm_find_cpuid_entry(vcpu, 0xD, 1);
- if (best && (best->eax & F(XSAVES)))
+ if (best && (best->eax & (F(XSAVES) || F(XSAVEC))))
best->ebx = xstate_required_size(vcpu->arch.xcr0, true);

/*
--
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/