This code moves FPU handling from the non-preemptible part of running a VCPU, way further out into the KVM_RUN ioctl handling. That way there is no need to continuously save and load the qemu FPU user context every time a VCPU context switches, or goes to sleep in the host kernel. v2: - move FPU switching out to kvm_arch_vcpu_ioctl_run (David Hildenbrand) - remove fpu handling from arch/x86/kvm/emulator.c (no longer needed)