aboutsummaryrefslogtreecommitdiffstats
path: root/arch/s390/kvm
diff options
context:
space:
mode:
Diffstat (limited to 'arch/s390/kvm')
-rw-r--r--arch/s390/kvm/kvm-s390.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/s390/kvm/kvm-s390.c b/arch/s390/kvm/kvm-s390.c
index 9bdc9f927e82..bfb2b990da9b 100644
--- a/arch/s390/kvm/kvm-s390.c
+++ b/arch/s390/kvm/kvm-s390.c
@@ -936,6 +936,8 @@ static int kvm_arch_vcpu_ioctl_set_one_reg(struct kvm_vcpu *vcpu,
936 case KVM_REG_S390_PFTOKEN: 936 case KVM_REG_S390_PFTOKEN:
937 r = get_user(vcpu->arch.pfault_token, 937 r = get_user(vcpu->arch.pfault_token,
938 (u64 __user *)reg->addr); 938 (u64 __user *)reg->addr);
939 if (vcpu->arch.pfault_token == KVM_S390_PFAULT_TOKEN_INVALID)
940 kvm_clear_async_pf_completion_queue(vcpu);
939 break; 941 break;
940 case KVM_REG_S390_PFCOMPARE: 942 case KVM_REG_S390_PFCOMPARE:
941 r = get_user(vcpu->arch.pfault_compare, 943 r = get_user(vcpu->arch.pfault_compare,
@@ -1408,6 +1410,8 @@ static void sync_regs(struct kvm_vcpu *vcpu, struct kvm_run *kvm_run)
1408 vcpu->arch.pfault_token = kvm_run->s.regs.pft; 1410 vcpu->arch.pfault_token = kvm_run->s.regs.pft;
1409 vcpu->arch.pfault_select = kvm_run->s.regs.pfs; 1411 vcpu->arch.pfault_select = kvm_run->s.regs.pfs;
1410 vcpu->arch.pfault_compare = kvm_run->s.regs.pfc; 1412 vcpu->arch.pfault_compare = kvm_run->s.regs.pfc;
1413 if (vcpu->arch.pfault_token == KVM_S390_PFAULT_TOKEN_INVALID)
1414 kvm_clear_async_pf_completion_queue(vcpu);
1411 } 1415 }
1412 kvm_run->kvm_dirty_regs = 0; 1416 kvm_run->kvm_dirty_regs = 0;
1413} 1417}