On 29/04/20 11:36, Vitaly Kuznetsov wrote: > + > + if (__this_cpu_read(apf_reason.enabled)) { > + reason = __this_cpu_read(apf_reason.reason); > + if (reason == KVM_PV_REASON_PAGE_READY) { > + token = __this_cpu_read(apf_reason.token); > + /* > + * Make sure we read 'token' before we reset > + * 'reason' or it can get lost. > + */ > + mb(); > + __this_cpu_write(apf_reason.reason, 0); > + kvm_async_pf_task_wake(token); > + } If tokens cannot be zero, could we avoid using reason for the page ready interrupt (and ultimately retire "reason" completely)? Paolo