mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-06-06 22:55:11 +00:00
x86: Clean up and extend do_int3()
Since there is a possibility of !KPROBES int3 listeners (such as kgdb) and since DIE_TRAP is currently not being used by anybody, notify all listeners with DIE_INT3. Signed-off-by: Ananth N Mavinakayanahalli <ananth@in.ibm.com> Signed-off-by: Srikar Dronamraju <srikar@linux.vnet.ibm.com> Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Linus Torvalds <torvalds@linux-foundation.org> Link: http://lkml.kernel.org/r/20111025142159.GB21225@linux.vnet.ibm.com Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
3596ff4e6b
commit
cc3a1bf52a
1 changed files with 1 additions and 6 deletions
|
@ -306,15 +306,10 @@ dotraplinkage void __kprobes do_int3(struct pt_regs *regs, long error_code)
|
||||||
== NOTIFY_STOP)
|
== NOTIFY_STOP)
|
||||||
return;
|
return;
|
||||||
#endif /* CONFIG_KGDB_LOW_LEVEL_TRAP */
|
#endif /* CONFIG_KGDB_LOW_LEVEL_TRAP */
|
||||||
#ifdef CONFIG_KPROBES
|
|
||||||
if (notify_die(DIE_INT3, "int3", regs, error_code, 3, SIGTRAP)
|
if (notify_die(DIE_INT3, "int3", regs, error_code, 3, SIGTRAP)
|
||||||
== NOTIFY_STOP)
|
== NOTIFY_STOP)
|
||||||
return;
|
return;
|
||||||
#else
|
|
||||||
if (notify_die(DIE_TRAP, "int3", regs, error_code, 3, SIGTRAP)
|
|
||||||
== NOTIFY_STOP)
|
|
||||||
return;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
preempt_conditional_sti(regs);
|
preempt_conditional_sti(regs);
|
||||||
do_trap(3, SIGTRAP, "int3", regs, error_code, NULL);
|
do_trap(3, SIGTRAP, "int3", regs, error_code, NULL);
|
||||||
|
|
Loading…
Add table
Reference in a new issue