Message ID | 1417691470-5221-3-git-send-email-wanpeng.li@linux.intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
2014-12-04 19:11+0800, Wanpeng Li: > 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. (I'll believe as it makes sense, but SDM could mention that.) > Signed-off-by: Wanpeng Li <wanpeng.li@linux.intel.com> > --- Reviewed-by: Radim Kr?má? <rkrcmar@redhat.com> (Nested part later.) > v1 -> v2: > * use | (bitwise or) instead of II (logical or) > > 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 5b78e9b..7d5bdb4 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 kvm" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/arch/x86/kvm/cpuid.c b/arch/x86/kvm/cpuid.c index 5b78e9b..7d5bdb4 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); /*
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@linux.intel.com> --- v1 -> v2: * use | (bitwise or) instead of II (logical or) arch/x86/kvm/cpuid.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)