[PATCH v2 0/4] x86/fpu: Reduce unnecessary FNINIT and MXCSR usage

From: Andy Lutomirski
Date: Tue Jan 19 2021 - 13:54:42 EST


This series fixes two regressions: a boot failure on AMD K7 and a
performance regression on everything.

I did a double-take here -- the regressions were reported by different
people, both named Krzysztof :)

Changes from v1:
- Fix MMX better -- MMX really does need FNINIT.
- Improve the EFI code.
- Rename the KFPU constants.
- Changelog improvements.

Andy Lutomirski (4):
x86/fpu: Add kernel_fpu_begin_mask() to selectively initialize state
x86/mmx: Use KFPU_387 for MMX string operations
x86/fpu: Make the EFI FPU calling convention explicit
x86/fpu/64: Don't FNINIT in kernel_fpu_begin()

arch/x86/include/asm/efi.h | 24 ++++++++++++++++++++----
arch/x86/include/asm/fpu/api.h | 27 +++++++++++++++++++++++++--
arch/x86/kernel/fpu/core.c | 17 +++++++++++------
arch/x86/lib/mmx_32.c | 20 +++++++++++++++-----
arch/x86/platform/efi/efi_64.c | 4 ++--
5 files changed, 73 insertions(+), 19 deletions(-)

--
2.29.2