On Thu, 2017-11-16 at 10:50 +0800, Quan Xu wrote:
On 2017-11-15 22:43, Rik van Riel wrote:At context switch time, the context switch code will save
Can you explain why you believe that?for example, a vcpu thread is running in kvm mode under cretical
condition to stop. QEMU send an IPI to cause a VM-exit to happen
immediately, and this IPI doesn't make vcpu return to QEMU. IIUC
this vcpu thread will still continue to run in kvm mode when is
waked up at targer machine. with your patch, I don't see a chance
to load guest FPU or XSTATE, until return to QEMU and run kvm mode
again.
then the FPU or XSTATE status is inconsistent for a small window,
what's
even
worse is that the vcpu is running.
Did I misunderstand?
the guest FPU state to current->thread.fpu when the
VCPU thread is scheduled out.
When the VCPU thread is scheduled back in, the context
switch code will restore current->thread.fpu to the FPU
registers.
The VCPU thread will never run with anything else than
the guest FPU state, while inside the KVM_RUN code.