Skip to content

x86/fpu: Reduce unnecessary FNINIT and MXCSR usage

Andy Lutomirski lkml stable 3 versions – Applied

Status from this message: The following commit has been merged into the x86/urgent branch of tip:

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v3 Latest4 patches 2 repliesApplied
  2. v24 patches 8 repliesSuperseded
  3. v14 patches 5 repliesSuperseded

Changes in v3 from the cover letter

- Tidy up the if statements (Sean)
- Changelog and comment improvements (Boris)

Patches in v3 Applied

#Subject and filesSizeRepliesApplied
1/4x86/fpu: Add kernel_fpu_begin_mask() to selectively initialize statearch/x86/include/asm/fpu/api.h arch/x86/kernel/fpu/core.c+18 -60 replies
2/4x86/mmx: Use KFPU_387 for MMX string operationsarch/x86/lib/mmx_32.c+15 -51 reply
3/4x86/fpu: Make the EFI FPU calling convention explicitarch/x86/include/asm/efi.h arch/x86/platform/efi/efi_64.c+22 -60 replies
4/4x86/fpu/64: Don't FNINIT in kernel_fpu_begin()arch/x86/include/asm/fpu/api.h+12 -00 replies

Reviews trailers per patch

None of the 4 patches has a Reviewed-by or Acked-by.

PatchKrzysztof Piotr OlędzkiKrzysztof Mazur
SeriesT-b
1/4
2/4T-b
3/4
4/4

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v3 thread

Cover letter [PATCH v3 0/4] x86/fpu: Reduce unnecessary FNINIT and MXCSR usage

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 v2:
- Tidy up the if statements (Sean)
- Changelog and comment improvements (Boris)

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     |  9 +++++----
 arch/x86/lib/mmx_32.c          | 20 +++++++++++++++-----
 arch/x86/platform/efi/efi_64.c |  4 ++--
 5 files changed, 67 insertions(+), 17 deletions(-)
Signature · 1 line
2.29.2