提交 48c88211 编写于 作者: S Stas Sergeev 提交者: Linus Torvalds

[PATCH] x86: entry.S trap return fixes

do_debug() and do_int3() return void.

This patch fixes the CONFIG_KPROBES variant of do_int3() to return void too
and adjusts entry.S accordingly.
Signed-off-by: NStas Sergeev <stsp@aknet.ru>
Signed-off-by: NAndrew Morton <akpm@osdl.org>
Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
上级 a2f7c354
......@@ -514,8 +514,6 @@ debug_stack_correct:
xorl %edx,%edx # error code 0
movl %esp,%eax # pt_regs pointer
call do_debug
testl %eax,%eax
jnz restore_all
jmp ret_from_exception
/*
......@@ -596,8 +594,6 @@ ENTRY(int3)
xorl %edx,%edx # zero error code
movl %esp,%eax # pt_regs pointer
call do_int3
testl %eax,%eax
jnz restore_all
jmp ret_from_exception
ENTRY(overflow)
......
......@@ -643,16 +643,15 @@ void unset_nmi_callback(void)
}
#ifdef CONFIG_KPROBES
fastcall int do_int3(struct pt_regs *regs, long error_code)
fastcall void do_int3(struct pt_regs *regs, long error_code)
{
if (notify_die(DIE_INT3, "int3", regs, error_code, 3, SIGTRAP)
== NOTIFY_STOP)
return 1;
return;
/* This is an interrupt gate, because kprobes wants interrupts
disabled. Normal trap handlers don't. */
restore_interrupts(regs);
do_trap(3, SIGTRAP, "int3", 1, regs, error_code, NULL);
return 0;
}
#endif
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册