KVM: PPC: BookE: Add GET/SET_ONE_REG interface for VRSAVE
authorPaul Mackerras <paulus@samba.org>
Fri, 20 Sep 2013 04:52:37 +0000 (14:52 +1000)
committerAlexander Graf <agraf@suse.de>
Thu, 17 Oct 2013 12:45:01 +0000 (14:45 +0200)
This makes the VRSAVE register value for a vcpu accessible through
the GET/SET_ONE_REG interface on Book E systems (in addition to the
existing GET/SET_SREGS interface), for consistency with Book 3S.

Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Alexander Graf <agraf@suse.de>
arch/powerpc/kvm/booke.c

index 17722d82f1d1f500bd5579f544cf29b18e6cbd80..65fa7754b1949313159814b03d2726b405a8fbed 100644 (file)
@@ -1479,6 +1479,9 @@ int kvm_vcpu_ioctl_get_one_reg(struct kvm_vcpu *vcpu, struct kvm_one_reg *reg)
        case KVM_REG_PPC_DEBUG_INST:
                val = get_reg_val(reg->id, KVMPPC_INST_EHPRIV);
                break;
+       case KVM_REG_PPC_VRSAVE:
+               val = get_reg_val(reg->id, vcpu->arch.vrsave);
+               break;
        default:
                r = kvmppc_get_one_reg(vcpu, reg->id, &val);
                break;
@@ -1552,6 +1555,9 @@ int kvm_vcpu_ioctl_set_one_reg(struct kvm_vcpu *vcpu, struct kvm_one_reg *reg)
                kvmppc_set_tcr(vcpu, tcr);
                break;
        }
+       case KVM_REG_PPC_VRSAVE:
+               vcpu->arch.vrsave = set_reg_val(reg->id, val);
+               break;
        default:
                r = kvmppc_set_one_reg(vcpu, reg->id, &val);
                break;