Re: [PATCH] KVM: x86: Fix load damaged SSEx MXCSR register

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 10/05/2017 12:19, Wanpeng Li wrote:
>  		 * with old userspace.
>  		 */
> -		if (xstate_bv & ~kvm_supported_xcr0())
> +		if (xstate_bv & ~kvm_supported_xcr0() ||
> +			mxcsr & ~vcpu->arch.guest_fpu.state.xsave.i387.mxcsr_mask)
>  			return -EINVAL;
>  		load_xsave(vcpu, (u8 *)guest_xsave->region);
>  	} else {
> -		if (xstate_bv & ~XFEATURE_MASK_FPSSE)
> +		if (xstate_bv & ~XFEATURE_MASK_FPSSE ||
> +			mxcsr & ~vcpu->arch.guest_fpu.state.fxsave.mxcsr_mask)
>  			return -EINVAL;
>  		memcpy(&vcpu->arch.guest_fpu.state.fxsave,
>  			guest_xsave->region, sizeof(struct fxregs_state));

Hmm, thinking more about it, maybe use mxcsr_feature_mask instead of
digging into vcpu->arch.guest_fpu?  If you send v2, please remember to
Cc stable@xxxxxxxxxxxxxxx.

Paolo



[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux