Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1316125 > unrolled thread

[PATCH v2 0/5] x86/fpu: eagerfpu fixes, speedups, and default enablement

Started byAndy Lutomirski <luto@kernel.org>
First post2016-01-24 23:40 +0100
Last post2016-01-24 23:40 +0100
Articles 1 — 1 participant

Back to article view | Back to linux.kernel


Contents

  [PATCH v2 0/5] x86/fpu: eagerfpu fixes, speedups, and default enablement Andy Lutomirski <luto@kernel.org> - 2016-01-24 23:40 +0100

#1316125 — [PATCH v2 0/5] x86/fpu: eagerfpu fixes, speedups, and default enablement

FromAndy Lutomirski <luto@kernel.org>
Date2016-01-24 23:40 +0100
Subject[PATCH v2 0/5] x86/fpu: eagerfpu fixes, speedups, and default enablement
Message-ID<qUBua-2ZJ-13@gated-at.bofh.it>
Hi all-

Here's v2 to celebrate the end of the merge window :)

Patches 1, 2, and 3 are fixes.

Patch 4 is probably a small speedup.  It also only matters in lazy
FPU mode, which means that, most likely, no one cares.  Apply or
don't -- I don't care much.

Patch 5 is, in some sense, a radical change.  Currently we select
eager or lazy mode depending on CPU type.  I think that lazy mode
sucks and that we should deprecate and remove it.

With patches 1-3 applied, I think that eagerfpu works on all
systems.  Patch 5 will use it on all systems subject to a chicken
flag -- eagerfpu=off will still disable it.

I propose that we apply patch 5, let it soak in -next until the 4.6
merge window opens, possibly let it actually land in 4.6, and then
remove lazy mode entirely for 4.7.  This will open up enormous
cleanup possibilities, and it will make the fpu code vastly more
comprehensible.

Changes from v1:
 - Get rid of cpu_has_fpu (Boris)

Andy Lutomirski (5):
  x86/fpu: Fix math emulation in eager fpu mode
  x86/fpu: Fix FNSAVE usage in eagerfpu mode
  x86/fpu: Fold fpu_copy into fpu__copy
  x86/fpu: Speed up lazy FPU restores slightly
  x86/fpu: Default eagerfpu=on on all CPUs

 arch/x86/include/asm/fpu/internal.h |  3 ++-
 arch/x86/kernel/fpu/core.c          | 52 +++++++++++++++++++------------------
 arch/x86/kernel/fpu/init.c          | 13 ++++------
 arch/x86/kernel/traps.c             |  3 +--
 4 files changed, 35 insertions(+), 36 deletions(-)

-- 
2.5.0

[toc] | [standalone]


Back to top | Article view | linux.kernel


csiph-web