On 25/05/20 16:41, Vitaly Kuznetsov wrote: > + case MSR_KVM_ASYNC_PF_ACK: > + if (data & 0x1) { > + vcpu->arch.apf.pageready_pending = false; > + kvm_check_async_pf_completion(vcpu); > + } > + break; > case MSR_KVM_STEAL_TIME: > > if (unlikely(!sched_info_on())) > @@ -3183,6 +3189,9 @@ int kvm_get_msr_common(struct kvm_vcpu *vcpu, struct msr_data *msr_info) > case MSR_KVM_ASYNC_PF_INT: > msr_info->data = vcpu->arch.apf.msr_int_val; > break; > + case MSR_KVM_ASYNC_PF_ACK: > + msr_info->data = 0; > + break; How is the pageready_pending flag migrated? Should we revert the direction of the MSR (i.e. read the flag, and write 0 to clear it)? Paolo