[tip:perf/urgent] tracing: Fix null pointer deref with SEND_SIG_FORCED
From: tip-bot for Oleg Nesterov
Date: Wed Jun 09 2010 - 01:25:41 EST
Commit-ID: b9b76dfaac6fa2c289ee8a005be637afd2da7e2f
Gitweb: http://git.kernel.org/tip/b9b76dfaac6fa2c289ee8a005be637afd2da7e2f
Author: Oleg Nesterov <oleg@xxxxxxxxxx>
AuthorDate: Thu, 3 Jun 2010 23:34:09 +0200
Committer: Frederic Weisbecker <fweisbec@xxxxxxxxx>
CommitDate: Tue, 8 Jun 2010 23:51:32 +0200
tracing: Fix null pointer deref with SEND_SIG_FORCED
BUG: unable to handle kernel NULL pointer dereference at
0000000000000006
IP: [<ffffffff8107bd37>] ftrace_raw_event_signal_generate+0x87/0x140
TP_STORE_SIGINFO() forgets about SEND_SIG_FORCED, fix.
We should probably export is_si_special() and change TP_STORE_SIGINFO()
to use it in the longer term.
Signed-off-by: Oleg Nesterov <oleg@xxxxxxxxxx>
Acked-by: Roland McGrath <roland@xxxxxxxxxx>
Cc: Steven Rostedt <rostedt@xxxxxxxxxxx>
Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
Cc: Jason Baron <jbaron@xxxxxxxxxx>
Cc: Masami Hiramatsu <mhiramat@xxxxxxxxxx>
Cc: 2.6.33.x-2.6.34.x <stable@xxxxxxxxxx>
LKML-Reference: <20100603213409.GA8307@xxxxxxxxxx>
Signed-off-by: Frederic Weisbecker <fweisbec@xxxxxxxxx>
---
include/trace/events/signal.h | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/include/trace/events/signal.h b/include/trace/events/signal.h
index 814566c..17df434 100644
--- a/include/trace/events/signal.h
+++ b/include/trace/events/signal.h
@@ -10,7 +10,8 @@
#define TP_STORE_SIGINFO(__entry, info) \
do { \
- if (info == SEND_SIG_NOINFO) { \
+ if (info == SEND_SIG_NOINFO || \
+ info == SEND_SIG_FORCED) { \
__entry->errno = 0; \
__entry->code = SI_USER; \
} else if (info == SEND_SIG_PRIV) { \
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/