提交 394838c9 编写于 作者: A Andy Lutomirski 提交者: Ingo Molnar

x86/asm/entry/32: Fix user_mode() misuses

The one in do_debug() is probably harmless, but better safe than sorry.
Signed-off-by: NAndy Lutomirski <luto@amacapital.net>
Cc: <stable@vger.kernel.org>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/d67deaa9df5458363623001f252d1aee3215d014.1425948056.git.luto@amacapital.netSigned-off-by: NIngo Molnar <mingo@kernel.org>
上级 e8932869
...@@ -384,7 +384,7 @@ dotraplinkage void do_bounds(struct pt_regs *regs, long error_code) ...@@ -384,7 +384,7 @@ dotraplinkage void do_bounds(struct pt_regs *regs, long error_code)
goto exit; goto exit;
conditional_sti(regs); conditional_sti(regs);
if (!user_mode(regs)) if (!user_mode_vm(regs))
die("bounds", regs, error_code); die("bounds", regs, error_code);
if (!cpu_feature_enabled(X86_FEATURE_MPX)) { if (!cpu_feature_enabled(X86_FEATURE_MPX)) {
...@@ -637,7 +637,7 @@ dotraplinkage void do_debug(struct pt_regs *regs, long error_code) ...@@ -637,7 +637,7 @@ dotraplinkage void do_debug(struct pt_regs *regs, long error_code)
* then it's very likely the result of an icebp/int01 trap. * then it's very likely the result of an icebp/int01 trap.
* User wants a sigtrap for that. * User wants a sigtrap for that.
*/ */
if (!dr6 && user_mode(regs)) if (!dr6 && user_mode_vm(regs))
user_icebp = 1; user_icebp = 1;
/* Catch kmemcheck conditions first of all! */ /* Catch kmemcheck conditions first of all! */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册