From: Steven Rostedt <rostedt@goodmis.org>
To: linux-kernel@vger.kernel.org
Cc: Ingo Molnar <mingo@kernel.org>,
Andrew Morton <akpm@linux-foundation.org>,
Andreas Ziegler <andreas.ziegler@fau.de>,
Ingo Molnar <mingo@redhat.com>,
stable@vger.kernel.org, Masami Hiramatsu <mhiramat@kernel.org>
Subject: [for-next][PATCH 06/13] tracing: probeevent: Fix to make the type of $comm string
Date: Wed, 08 May 2019 16:24:33 -0400 [thread overview]
Message-ID: <20190508202452.686677049@goodmis.org> (raw)
In-Reply-To: 20190508202427.252736423@goodmis.org
From: Masami Hiramatsu <mhiramat@kernel.org>
Fix to make the type of $comm "string". If we set the other type to $comm
argument, it shows meaningless value or wrong data. Currently probe events
allow us to set string array type (e.g. ":string[2]"), or other digit types
like x8 on $comm. But since clearly $comm is just a string data, it should
not be fetched by other types including array.
Link: http://lkml.kernel.org/r/155723736241.9149.14582064184468574539.stgit@devnote2
Cc: Andreas Ziegler <andreas.ziegler@fau.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: stable@vger.kernel.org
Fixes: 533059281ee5 ("tracing: probeevent: Introduce new argument fetching code")
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
---
kernel/trace/trace_probe.c | 13 +++++++------
1 file changed, 7 insertions(+), 6 deletions(-)
diff --git a/kernel/trace/trace_probe.c b/kernel/trace/trace_probe.c
index 4cc2d467d34c..e0d1d5353464 100644
--- a/kernel/trace/trace_probe.c
+++ b/kernel/trace/trace_probe.c
@@ -533,13 +533,14 @@ static int traceprobe_parse_probe_arg_body(char *arg, ssize_t *size,
}
}
}
- /*
- * The default type of $comm should be "string", and it can't be
- * dereferenced.
- */
- if (!t && strcmp(arg, "$comm") == 0)
+
+ /* Since $comm can not be dereferred, we can find $comm by strcmp */
+ if (strcmp(arg, "$comm") == 0) {
+ /* The type of $comm must be "string", and not an array. */
+ if (parg->count || (t && strcmp(t, "string")))
+ return -EINVAL;
parg->type = find_fetch_type("string");
- else
+ } else
parg->type = find_fetch_type(t);
if (!parg->type) {
trace_probe_log_err(offset + (t ? (t - arg) : 0), BAD_TYPE);
--
2.20.1
next prev parent reply other threads:[~2019-05-08 20:25 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-05-08 20:24 [for-next][PATCH 00/13] tracing: Some more last minute changes and fixes Steven Rostedt
2019-05-08 20:24 ` [for-next][PATCH 01/13] x86_64: Add gap to int3 to allow for call emulation Steven Rostedt
2019-05-08 20:24 ` [for-next][PATCH 02/13] x86_64: Allow breakpoints to emulate call instructions rostedt
2019-05-08 20:24 ` Steven Rostedt
2019-05-08 20:24 ` Steven Rostedt
2019-05-08 20:24 ` [for-next][PATCH 03/13] ftrace/x86_64: Emulate call function while updating in breakpoint handler rostedt
2019-05-08 20:24 ` Steven Rostedt
2019-05-08 20:24 ` Steven Rostedt
2019-05-08 20:24 ` [for-next][PATCH 04/13] tracing: uprobes: Re-enable $comm support for uprobe events Steven Rostedt
2019-05-08 20:24 ` [for-next][PATCH 05/13] tracing: probeevent: Do not accumulate on ret variable Steven Rostedt
2019-05-08 20:24 ` Steven Rostedt [this message]
2019-05-08 20:24 ` [for-next][PATCH 07/13] ring-buffer: Fix mispelling of Calculate Steven Rostedt
2019-05-08 20:24 ` [for-next][PATCH 08/13] tracing: Eliminate const char[] auto variables Steven Rostedt
2019-05-08 20:24 ` [for-next][PATCH 09/13] tracing: Fix white space issues in parse_pred() function Steven Rostedt
2019-05-08 20:24 ` [for-next][PATCH 10/13] tracing: Allow RCU to run between postponed startup tests Steven Rostedt
2019-05-08 20:24 ` [for-next][PATCH 11/13] tracing: Fix partial reading of trace events id file Steven Rostedt
2019-05-08 20:24 ` [for-next][PATCH 12/13] tracing: Replace kzalloc with kcalloc Steven Rostedt
2019-05-08 20:24 ` [for-next][PATCH 13/13] tracing: Fix documentation about disabling options using trace_options Steven Rostedt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190508202452.686677049@goodmis.org \
--to=rostedt@goodmis.org \
--cc=akpm@linux-foundation.org \
--cc=andreas.ziegler@fau.de \
--cc=linux-kernel@vger.kernel.org \
--cc=mhiramat@kernel.org \
--cc=mingo@kernel.org \
--cc=mingo@redhat.com \
--cc=stable@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.