diff options
author | Ingo Molnar <[email protected]> | 2015-05-25 10:57:06 +0200 |
---|---|---|
committer | Ingo Molnar <[email protected]> | 2015-05-27 14:11:27 +0200 |
commit | ce2a1e67f1738535b011a7b4bd42cc114b1d805f (patch) | |
tree | dfb7d99bc746b40a2e656038b30503c1ea589cfe | |
parent | 343763c3b0a4fa2d29f7c3ba405abf8771b90876 (diff) |
x86/fpu: Add debugging check to fpu__restore()
The copy_fpstate_to_fpregs() function is never supposed to fail,
so add a debugging check to its call site in fpu__restore().
Cc: Andy Lutomirski <[email protected]>
Cc: Bobby Powers <[email protected]>
Cc: Borislav Petkov <[email protected]>
Cc: Dave Hansen <[email protected]>
Cc: Fenghua Yu <[email protected]>
Cc: H. Peter Anvin <[email protected]>
Cc: Linus Torvalds <[email protected]>
Cc: Oleg Nesterov <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Signed-off-by: Ingo Molnar <[email protected]>
-rw-r--r-- | arch/x86/kernel/fpu/core.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/x86/kernel/fpu/core.c b/arch/x86/kernel/fpu/core.c index 86a9a9a086fa..874ef1701750 100644 --- a/arch/x86/kernel/fpu/core.c +++ b/arch/x86/kernel/fpu/core.c @@ -371,6 +371,8 @@ void fpu__restore(struct fpu *fpu) kernel_fpu_disable(); fpregs_activate(fpu); if (unlikely(copy_fpstate_to_fpregs(fpu))) { + /* Copying the kernel state to FPU registers should never fail: */ + WARN_ON_FPU(1); fpu__clear(fpu); force_sig_info(SIGSEGV, SEND_SIG_PRIV, current); } else { |