| From stable-owner@vger.kernel.org Wed May 9 06:14:27 2012 |
| From: Avi Kivity <avi@redhat.com> |
| Date: Wed, 9 May 2012 16:10:38 +0300 |
| Subject: KVM: s390: Sanitize fpc registers for KVM_SET_FPU |
| To: stable@vger.kernel.org |
| Cc: Marcelo Tosatti <mtosatti@redhat.com>, kvm@vger.kernel.org |
| Message-ID: <1336569047-23576-3-git-send-email-avi@redhat.com> |
| |
| |
| From: Christian Borntraeger <borntraeger@de.ibm.com> |
| |
| (cherry picked from commit 851755871c1f3184f4124c466e85881f17fa3226) |
| |
| commit 7eef87dc99e419b1cc051e4417c37e4744d7b661 (KVM: s390: fix |
| register setting) added a load of the floating point control register |
| to the KVM_SET_FPU path. Lets make sure that the fpc is valid. |
| |
| Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com> |
| Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com> |
| Signed-off-by: Avi Kivity <avi@redhat.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| arch/s390/kvm/kvm-s390.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/arch/s390/kvm/kvm-s390.c |
| +++ b/arch/s390/kvm/kvm-s390.c |
| @@ -418,7 +418,7 @@ int kvm_arch_vcpu_ioctl_get_sregs(struct |
| int kvm_arch_vcpu_ioctl_set_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu) |
| { |
| memcpy(&vcpu->arch.guest_fpregs.fprs, &fpu->fprs, sizeof(fpu->fprs)); |
| - vcpu->arch.guest_fpregs.fpc = fpu->fpc; |
| + vcpu->arch.guest_fpregs.fpc = fpu->fpc & FPC_VALID_MASK; |
| restore_fp_regs(&vcpu->arch.guest_fpregs); |
| return 0; |
| } |