Messages in this thread | | | Subject | Re: [PATCH 5/7] x86/fpu: Change fpu->fpregs_active users to fpu->fpstate_active | From | Rik van Riel <> | Date | Thu, 26 Jan 2017 09:44:12 -0500 |
| |
On Thu, 2017-01-26 at 12:26 +0100, Ingo Molnar wrote: > We want to simplify the FPU state machine by eliminating fpu- > >fpregs_active, > and we can do that because the two state flags (::fpregs_active and > ::fpstate_active) are set essentially together. > > The old lazy FPU switching code used to make a distinction - but > there's > no lazy switching code anymore, we always switch in an 'eager' > fashion.
I've been working for a while now to fix that for KVM VCPU threads.
Currently when we switch to a VCPU thread, we first load that thread's userspace FPU context, and then soon after we save that, and load the guest side FPU context.
When a VCPU thread goes idle, we also go through two FPU context transitions.
In order to skip the unnecessary FPU context switches for VCPU threads, I have been relying on separate fpstate_active and fpregs_active states.
Do you have any ideas on how I could implement that kind of change without separate fpstate_active and fpregs_active states?
| |