On 2017-11-17 01:50, Paolo Bonzini wrote:
On 16/11/2017 15:28, Quan Xu wrote:
        vcpu->srcu_idx = srcu_read_lock(&kvm->srcu);
+ kvm_load_guest_fpu(vcpu);
+
        for (;;) {
                if (kvm_vcpu_running(vcpu)) {
                        r = vcpu_enter_guest(vcpu);

<<



   as Rik dropped  kvm_load_guest_fpu(vcpu) in  vcpu_enter_guest() ..
   in case still in kvm mode, how to make sure to pkru is always the
right one before enter guest mode, not be preempted before
preempt_disable()  after migration? :(
As you know:

1) kvm_load_guest_fpu doesn't load the guest PKRU, it keeps the
userspace PKRU.

2) the guest PKRU is only ever set in a preemption-disabled area

Thus, context switch always sees the userspace PKRU.  The guest PKRU is
only set the next time vmx_vcpu_run executes.

Paolo


Paolo, thanks for your explanation!!:-)
Rik, could you cc me in v2?

Quan

Reply via email to