|
@@ -1497,6 +1497,10 @@ static int kvmppc_get_one_reg_hv(struct kvm_vcpu *vcpu, u64 id,
|
|
case KVM_REG_PPC_ARCH_COMPAT:
|
|
case KVM_REG_PPC_ARCH_COMPAT:
|
|
*val = get_reg_val(id, vcpu->arch.vcore->arch_compat);
|
|
*val = get_reg_val(id, vcpu->arch.vcore->arch_compat);
|
|
break;
|
|
break;
|
|
|
|
+ case KVM_REG_PPC_DEC_EXPIRY:
|
|
|
|
+ *val = get_reg_val(id, vcpu->arch.dec_expires +
|
|
|
|
+ vcpu->arch.vcore->tb_offset);
|
|
|
|
+ break;
|
|
default:
|
|
default:
|
|
r = -EINVAL;
|
|
r = -EINVAL;
|
|
break;
|
|
break;
|
|
@@ -1724,6 +1728,10 @@ static int kvmppc_set_one_reg_hv(struct kvm_vcpu *vcpu, u64 id,
|
|
case KVM_REG_PPC_ARCH_COMPAT:
|
|
case KVM_REG_PPC_ARCH_COMPAT:
|
|
r = kvmppc_set_arch_compat(vcpu, set_reg_val(id, *val));
|
|
r = kvmppc_set_arch_compat(vcpu, set_reg_val(id, *val));
|
|
break;
|
|
break;
|
|
|
|
+ case KVM_REG_PPC_DEC_EXPIRY:
|
|
|
|
+ vcpu->arch.dec_expires = set_reg_val(id, *val) -
|
|
|
|
+ vcpu->arch.vcore->tb_offset;
|
|
|
|
+ break;
|
|
default:
|
|
default:
|
|
r = -EINVAL;
|
|
r = -EINVAL;
|
|
break;
|
|
break;
|