aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMasami Hiramatsu <mhiramat@redhat.com>2009-08-27 13:23:32 -0400
committerFrederic Weisbecker <fweisbec@gmail.com>2009-08-29 21:15:55 -0400
commit65e234ec2c4a0659ca22531dc1372a185f088517 (patch)
tree40d36d893a8bf64e89b6eb031da7f6f8fe279bc3
parent8222d718b3ad3ae49c48f69ae4b6a1128c9a92cf (diff)
kprobes: Prohibit to probe native_get_debugreg
Since do_debug() calls get_debugreg(), native_get_debugreg() will be called from singlestepping. This can cause an int3 infinite loop. We can't put it in the .text.kprobes section because it is inlined, then we blacklist its name. Signed-off-by: Masami Hiramatsu <mhiramat@redhat.com> Acked-by: Ananth N Mavinakayanahalli <ananth@in.ibm.com> Cc: Ingo Molnar <mingo@elte.hu> LKML-Reference: <20090827172332.8246.34194.stgit@localhost.localdomain> Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
-rw-r--r--kernel/kprobes.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/kernel/kprobes.c b/kernel/kprobes.c
index f72e96c25a38..3267d90bc9d6 100644
--- a/kernel/kprobes.c
+++ b/kernel/kprobes.c
@@ -90,6 +90,7 @@ static spinlock_t *kretprobe_table_lock_ptr(unsigned long hash)
90 */ 90 */
91static struct kprobe_blackpoint kprobe_blacklist[] = { 91static struct kprobe_blackpoint kprobe_blacklist[] = {
92 {"preempt_schedule",}, 92 {"preempt_schedule",},
93 {"native_get_debugreg",},
93 {NULL} /* Terminator */ 94 {NULL} /* Terminator */
94}; 95};
95 96