From: Ingo Molnar Date: Fri, 3 Apr 2015 10:29:47 +0000 (+0200) Subject: x86/fpu: Simplify fpu__unlazy_stopped() X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=071ae621ec51153d740c9a2252d2d46e03e80d58;p=deliverable%2Flinux.git 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 Cc: Andy Lutomirski Cc: Dave Hansen Cc: Fenghua Yu Cc: H. Peter Anvin Cc: Linus Torvalds Cc: Oleg Nesterov Cc: Peter Zijlstra Cc: Thomas Gleixner Signed-off-by: Ingo Molnar --- 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; }