linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/3][GIT PULL][v2.6.33] tracing: various fixes
@ 2009-12-30 16:23 Steven Rostedt
  2009-12-30 16:23 ` [PATCH 1/3] tracing/kprobe: Show sign of fields in trace_kprobe format files Steven Rostedt
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Steven Rostedt @ 2009-12-30 16:23 UTC (permalink / raw)
  To: linux-kernel
  Cc: Ingo Molnar, Andrew Morton, Peter Zijlstra, Frederic Weisbecker,
	Li Zefan, Lai Jiangshan


Ingo,

The previous pull request was a bit too much for 33-rc. I pulled out
the three patches that are fixes that should definitely be in 33,
and I'll save the conversion to print_fmt for 34.

When these changes are in 33-rc, I'll send out another pull request
based on that 33-rc with the rest of the changes. That pull request
will be for 34.

Please pull the latest tip/tracing/urgent tree, which can be found at:

  git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace.git
tip/tracing/urgent


Lai Jiangshan (3):
      tracing/kprobe: Show sign of fields in trace_kprobe format files
      tracing/syscalls: Fix typo in SYSCALL_DEFINE0
      tracing: Fix sign fields in ftrace_define_fields_##call()

----
 include/linux/syscalls.h    |    2 +-
 include/trace/ftrace.h      |    7 ++++---
 kernel/trace/trace_export.c |    7 ++++---
 kernel/trace/trace_kprobe.c |    7 ++++---
 4 files changed, 13 insertions(+), 10 deletions(-)

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH 1/3] tracing/kprobe: Show sign of fields in trace_kprobe format files
  2009-12-30 16:23 [PATCH 0/3][GIT PULL][v2.6.33] tracing: various fixes Steven Rostedt
@ 2009-12-30 16:23 ` Steven Rostedt
  2009-12-30 16:23 ` [PATCH 2/3] tracing/syscalls: Fix typo in SYSCALL_DEFINE0 Steven Rostedt
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: Steven Rostedt @ 2009-12-30 16:23 UTC (permalink / raw)
  To: linux-kernel
  Cc: Ingo Molnar, Andrew Morton, Peter Zijlstra, Frederic Weisbecker,
	Li Zefan, Lai Jiangshan, Masami Hiramatsu

[-- Attachment #1: 0001-tracing-kprobe-Show-sign-of-fields-in-trace_kprobe-f.patch --]
[-- Type: text/plain, Size: 1311 bytes --]

From: Lai Jiangshan <laijs@cn.fujitsu.com>

The format files of trace_kprobe do not show the sign of the fields.
The other format files show the field signed type of the fields and
this patch makes the trace_kprobe formats consistent with the others.

Signed-off-by: Lai Jiangshan <laijs@cn.fujitsu.com>
LKML-Reference: <4B273D27.5040009@cn.fujitsu.com>
Acked-by: Masami Hiramatsu <mhiramat@redhat.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
---
 kernel/trace/trace_kprobe.c |    7 ++++---
 1 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/kernel/trace/trace_kprobe.c b/kernel/trace/trace_kprobe.c
index 7ecab06..83f1e6e 100644
--- a/kernel/trace/trace_kprobe.c
+++ b/kernel/trace/trace_kprobe.c
@@ -1182,10 +1182,11 @@ static int __probe_event_show_format(struct trace_seq *s,
 #undef SHOW_FIELD
 #define SHOW_FIELD(type, item, name)					\
 	do {								\
-		ret = trace_seq_printf(s, "\tfield: " #type " %s;\t"	\
-				"offset:%u;\tsize:%u;\n", name,		\
+		ret = trace_seq_printf(s, "\tfield:" #type " %s;\t"	\
+				"offset:%u;\tsize:%u;\tsigned:%d;\n", name,\
 				(unsigned int)offsetof(typeof(field), item),\
-				(unsigned int)sizeof(type));		\
+				(unsigned int)sizeof(type),		\
+				is_signed_type(type));			\
 		if (!ret)						\
 			return 0;					\
 	} while (0)
-- 
1.6.5



^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 2/3] tracing/syscalls: Fix typo in SYSCALL_DEFINE0
  2009-12-30 16:23 [PATCH 0/3][GIT PULL][v2.6.33] tracing: various fixes Steven Rostedt
  2009-12-30 16:23 ` [PATCH 1/3] tracing/kprobe: Show sign of fields in trace_kprobe format files Steven Rostedt
@ 2009-12-30 16:23 ` Steven Rostedt
  2009-12-30 16:23 ` [PATCH 3/3] tracing: Fix sign fields in ftrace_define_fields_##call() Steven Rostedt
  2009-12-30 17:52 ` [PATCH 0/3][GIT PULL][v2.6.33] tracing: various fixes Ingo Molnar
  3 siblings, 0 replies; 5+ messages in thread
From: Steven Rostedt @ 2009-12-30 16:23 UTC (permalink / raw)
  To: linux-kernel
  Cc: Ingo Molnar, Andrew Morton, Peter Zijlstra, Frederic Weisbecker,
	Li Zefan, Lai Jiangshan

[-- Attachment #1: 0002-tracing-syscalls-Fix-typo-in-SYSCALL_DEFINE0.patch --]
[-- Type: text/plain, Size: 1208 bytes --]

From: Lai Jiangshan <laijs@cn.fujitsu.com>

The struct syscall_metadata variable name in SYSCALL_DEFINE0
should be __syscall_meta__##sname instead of __syscall_meta_##sname
to match the name that is in SYSCALL_DEFINE1/2/3/4/5/6.

This error causes event_enter_##sname->data to point to the wrong
location, which causes syscalls which are defined by SYSCALL_DEFINE0()
not to be traced.

Signed-off-by: Lai Jiangshan <laijs@cn.fujitsu.com>
LKML-Reference: <4B273D2E.1010807@cn.fujitsu.com>
Acked-by: Frederic Weisbecker <fweisbec@gmail.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
---
 include/linux/syscalls.h |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h
index 65793e9..207466a 100644
--- a/include/linux/syscalls.h
+++ b/include/linux/syscalls.h
@@ -195,7 +195,7 @@ struct perf_event_attr;
 	static const struct syscall_metadata __used		\
 	  __attribute__((__aligned__(4)))			\
 	  __attribute__((section("__syscalls_metadata")))	\
-	  __syscall_meta_##sname = {				\
+	  __syscall_meta__##sname = {				\
 		.name 		= "sys_"#sname,			\
 		.nb_args 	= 0,				\
 		.enter_event	= &event_enter__##sname,	\
-- 
1.6.5



^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 3/3] tracing: Fix sign fields in ftrace_define_fields_##call()
  2009-12-30 16:23 [PATCH 0/3][GIT PULL][v2.6.33] tracing: various fixes Steven Rostedt
  2009-12-30 16:23 ` [PATCH 1/3] tracing/kprobe: Show sign of fields in trace_kprobe format files Steven Rostedt
  2009-12-30 16:23 ` [PATCH 2/3] tracing/syscalls: Fix typo in SYSCALL_DEFINE0 Steven Rostedt
@ 2009-12-30 16:23 ` Steven Rostedt
  2009-12-30 17:52 ` [PATCH 0/3][GIT PULL][v2.6.33] tracing: various fixes Ingo Molnar
  3 siblings, 0 replies; 5+ messages in thread
From: Steven Rostedt @ 2009-12-30 16:23 UTC (permalink / raw)
  To: linux-kernel
  Cc: Ingo Molnar, Andrew Morton, Peter Zijlstra, Frederic Weisbecker,
	Li Zefan, Lai Jiangshan

[-- Attachment #1: 0003-tracing-Fix-sign-fields-in-ftrace_define_fields_-cal.patch --]
[-- Type: text/plain, Size: 2551 bytes --]

From: Lai Jiangshan <laijs@cn.fujitsu.com>

Add is_signed_type() call to trace_define_field() in ftrace macros.

The code previously just passed in 0 (false), disregarding whether
or not the field was actually a signed type.

Signed-off-by: Lai Jiangshan <laijs@cn.fujitsu.com>
LKML-Reference: <4B273D3A.6020007@cn.fujitsu.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
---
 include/trace/ftrace.h      |    7 ++++---
 kernel/trace/trace_export.c |    7 ++++---
 2 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/include/trace/ftrace.h b/include/trace/ftrace.h
index 7352315..c6fe03e 100644
--- a/include/trace/ftrace.h
+++ b/include/trace/ftrace.h
@@ -414,7 +414,8 @@ ftrace_raw_output_##call(struct trace_iterator *iter, int flags)	\
 	BUILD_BUG_ON(len > MAX_FILTER_STR_VAL);				\
 	ret = trace_define_field(event_call, #type "[" #len "]", #item,	\
 				 offsetof(typeof(field), item),		\
-				 sizeof(field.item), 0, FILTER_OTHER);	\
+				 sizeof(field.item),			\
+				 is_signed_type(type), FILTER_OTHER);	\
 	if (ret)							\
 		return ret;
 
@@ -422,8 +423,8 @@ ftrace_raw_output_##call(struct trace_iterator *iter, int flags)	\
 #define __dynamic_array(type, item, len)				       \
 	ret = trace_define_field(event_call, "__data_loc " #type "[]", #item,  \
 				 offsetof(typeof(field), __data_loc_##item),   \
-				 sizeof(field.__data_loc_##item), 0,	       \
-				 FILTER_OTHER);
+				 sizeof(field.__data_loc_##item),	       \
+				 is_signed_type(type), FILTER_OTHER);
 
 #undef __string
 #define __string(item, src) __dynamic_array(char, item, -1)
diff --git a/kernel/trace/trace_export.c b/kernel/trace/trace_export.c
index 458e5bf..d4fa5dc 100644
--- a/kernel/trace/trace_export.c
+++ b/kernel/trace/trace_export.c
@@ -158,7 +158,8 @@ ftrace_format_##name(struct ftrace_event_call *unused,			\
 	BUILD_BUG_ON(len > MAX_FILTER_STR_VAL);				\
 	ret = trace_define_field(event_call, #type "[" #len "]", #item,	\
 				 offsetof(typeof(field), item),		\
-				 sizeof(field.item), 0, FILTER_OTHER);	\
+				 sizeof(field.item),			\
+				 is_signed_type(type), FILTER_OTHER);	\
 	if (ret)							\
 		return ret;
 
@@ -168,8 +169,8 @@ ftrace_format_##name(struct ftrace_event_call *unused,			\
 	ret = trace_define_field(event_call, #type "[" #len "]", #item,	\
 				 offsetof(typeof(field),		\
 					  container.item),		\
-				 sizeof(field.container.item), 0,	\
-				 FILTER_OTHER);				\
+				 sizeof(field.container.item),		\
+				 is_signed_type(type), FILTER_OTHER);	\
 	if (ret)							\
 		return ret;
 
-- 
1.6.5



^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH 0/3][GIT PULL][v2.6.33] tracing: various fixes
  2009-12-30 16:23 [PATCH 0/3][GIT PULL][v2.6.33] tracing: various fixes Steven Rostedt
                   ` (2 preceding siblings ...)
  2009-12-30 16:23 ` [PATCH 3/3] tracing: Fix sign fields in ftrace_define_fields_##call() Steven Rostedt
@ 2009-12-30 17:52 ` Ingo Molnar
  3 siblings, 0 replies; 5+ messages in thread
From: Ingo Molnar @ 2009-12-30 17:52 UTC (permalink / raw)
  To: Steven Rostedt
  Cc: linux-kernel, Andrew Morton, Peter Zijlstra, Frederic Weisbecker,
	Li Zefan, Lai Jiangshan


* Steven Rostedt <rostedt@goodmis.org> wrote:

> 
> Ingo,
> 
> The previous pull request was a bit too much for 33-rc. I pulled out the 
> three patches that are fixes that should definitely be in 33, and I'll save 
> the conversion to print_fmt for 34.
> 
> When these changes are in 33-rc, I'll send out another pull request based on 
> that 33-rc with the rest of the changes. That pull request will be for 34.
> 
> Please pull the latest tip/tracing/urgent tree, which can be found at:
> 
>   git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace.git
> tip/tracing/urgent
> 
> 
> Lai Jiangshan (3):
>       tracing/kprobe: Show sign of fields in trace_kprobe format files
>       tracing/syscalls: Fix typo in SYSCALL_DEFINE0
>       tracing: Fix sign fields in ftrace_define_fields_##call()
> 
> ----
>  include/linux/syscalls.h    |    2 +-
>  include/trace/ftrace.h      |    7 ++++---
>  kernel/trace/trace_export.c |    7 ++++---
>  kernel/trace/trace_kprobe.c |    7 ++++---
>  4 files changed, 13 insertions(+), 10 deletions(-)

Pulled, thanks a lot Steve!

	Ingo

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2009-12-30 17:53 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-12-30 16:23 [PATCH 0/3][GIT PULL][v2.6.33] tracing: various fixes Steven Rostedt
2009-12-30 16:23 ` [PATCH 1/3] tracing/kprobe: Show sign of fields in trace_kprobe format files Steven Rostedt
2009-12-30 16:23 ` [PATCH 2/3] tracing/syscalls: Fix typo in SYSCALL_DEFINE0 Steven Rostedt
2009-12-30 16:23 ` [PATCH 3/3] tracing: Fix sign fields in ftrace_define_fields_##call() Steven Rostedt
2009-12-30 17:52 ` [PATCH 0/3][GIT PULL][v2.6.33] tracing: various fixes Ingo Molnar

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).