diff options
author | Ingo Molnar <mingo@kernel.org> | 2015-04-03 12:29:47 +0200 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2015-05-19 15:47:12 +0200 |
commit | 071ae621ec51153d740c9a2252d2d46e03e80d58 (patch) | |
tree | 3376e4e07fcf2fa33d265524a6a78122c0017a99 /arch/x86/kernel/i387.c | |
parent | x86/fpu: Optimize fpu__unlazy_stopped() (diff) | |
download | linux-071ae621ec51153d740c9a2252d2d46e03e80d58.tar.xz linux-071ae621ec51153d740c9a2252d2d46e03e80d58.zip |
x86/fpu: Simplify fpu__unlazy_stopped()
Open code the PF_USED_MATH logic, to make the logic more obvious.
(We'll slowly convert the other users of *_used_math() methods as well.)
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: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'arch/x86/kernel/i387.c')
-rw-r--r-- | arch/x86/kernel/i387.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/arch/x86/kernel/i387.c b/arch/x86/kernel/i387.c index 76006a701dbb..5e4dae70ffa5 100644 --- a/arch/x86/kernel/i387.c +++ b/arch/x86/kernel/i387.c @@ -290,7 +290,7 @@ static int fpu__unlazy_stopped(struct task_struct *child) if (WARN_ON_ONCE(child == current)) return -EINVAL; - if (tsk_used_math(child)) { + if (child->flags & PF_USED_MATH) { task_disable_lazy_fpu_restore(child); return 0; } @@ -304,7 +304,9 @@ static int fpu__unlazy_stopped(struct task_struct *child) fpu_finit(&child->thread.fpu); - set_stopped_child_used_math(child); + /* Safe to do for stopped child tasks: */ + child->flags |= PF_USED_MATH; + return 0; } |