Re: [PATCH 1/2] x86,kvm: move qemu/guest FPU switching out to vcpu_run

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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



[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux