On 07/12/16 15:16, Jan Beulich wrote: >>>> On 07.12.16 at 16:06, <andrew.coop...@citrix.com> wrote: >> On 06/12/16 14:13, Jan Beulich wrote: >>> @@ -3670,6 +3652,7 @@ x86_emulate( >>> >>> case 0xd8: /* FPU 0xd8 */ >>> host_and_vcpu_must_have(fpu); >>> + get_fpu(X86EMUL_FPU_fpu, &fic); >>> switch ( modrm ) >>> { >>> case 0xc0 ... 0xc7: /* fadd %stN,%st */ >>> @@ -3715,10 +3698,12 @@ x86_emulate( >>> break; >>> } >>> } >>> + put_fpu(&fic); >>> break; >> This repositioning does mean that we might skip the put_fpu() call, >> although we still retain the catch-all _put_fpu(). >> >> I think this is still safe as we only skip this put_fpu() in cases where >> we didn't emulate an instruction, and there isn't the risk of missing a >> pending FPU exception. > Correct - the catch-all one is sufficient for all cases.
Ok. Reviewed-by: Andrew Cooper <andrew.coop...@citrix.com> _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org https://lists.xen.org/xen-devel