[PATCH 038/208] x86/fpu: Make kernel_fpu_disable/enable() static

Ingo Molnar
2015-05-05T16:28:50Z

This allows the compiler to inline them and to eliminate them:

arch/x86/kernel/fpu/core.o:

text data bss dec hex filename
6741 4 8 6753 1a61 core.o.before
6716 4 8 6728 1a48 core.o.after

Reviewed-by: Borislav Petkov <bp@alien8.de>
Cc: Andy Lutomirski <luto@amacapital.net>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: Fenghua Yu <fenghua.yu@intel.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Oleg Nesterov <oleg@redhat.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
---
arch/x86/include/asm/i387.h | 4 ----
arch/x86/kernel/fpu/core.c | 8 ++++----
2 files changed, 4 insertions(+), 8 deletions(-)

diff --git a/arch/x86/include/asm/i387.h b/arch/x86/include/asm/i387.h
index 89ae3e051741..e69989f95da5 100644
--- a/arch/x86/include/asm/i387.h
+++ b/arch/x86/include/asm/i387.h
@@ -54,10 +54,6 @@ static inline void kernel_fpu_end(void)
preempt_enable();
}

-/* Must be called with preempt disabled */
-extern void kernel_fpu_disable(void);
-extern void kernel_fpu_enable(void);
-
/*
* Some instructions like VIA's padlock instructions generate a spurious
* DNA fault but don't modify SSE registers. And these instructions
diff --git a/arch/x86/kernel/fpu/core.c b/arch/x86/kernel/fpu/core.c
index 1896e96f1082..587e4ab46f59 100644
--- a/arch/x86/kernel/fpu/core.c
+++ b/arch/x86/kernel/fpu/core.c
@@ -9,13 +9,13 @@

static DEFINE_PER_CPU(bool, in_kernel_fpu);

-void kernel_fpu_disable(void)
+static void kernel_fpu_disable(void)
{
WARN_ON(this_cpu_read(in_kernel_fpu));
this_cpu_write(in_kernel_fpu, true);
}

-void kernel_fpu_enable(void)
+static void kernel_fpu_enable(void)
{
this_cpu_write(in_kernel_fpu, false);
}
@@ -32,7 +32,7 @@ void kernel_fpu_enable(void)
* Except for the eagerfpu case when we return true; in the likely case
* the thread has FPU but we are not going to set/clear TS.
*/
-static inline bool interrupted_kernel_fpu_idle(void)
+static bool interrupted_kernel_fpu_idle(void)
{
if (this_cpu_read(in_kernel_fpu))
return false;
@@ -52,7 +52,7 @@ static inline bool interrupted_kernel_fpu_idle(void)
* in an interrupt context from user mode - we'll just
* save the FPU state as required.
*/
-static inline bool interrupted_user_mode(void)
+static bool interrupted_user_mode(void)
{
struct pt_regs *regs = get_irq_regs();
return regs && user_mode(regs);
--
2.1.0