2009-12-09 07:15:54

by Lai Jiangshan

[permalink] [raw]
Subject: [PATCH 01/10] trace_kprobe: shows signs of fields in format files


format files of trace_kprobe don't shows signs, it is
different from all other format files, incorrect API to user.

Signed-off-by: Lai Jiangshan <[email protected]>
---
diff --git a/kernel/trace/trace_kprobe.c b/kernel/trace/trace_kprobe.c
index e3c80e9..3ef66d4 100644
--- a/kernel/trace/trace_kprobe.c
+++ b/kernel/trace/trace_kprobe.c
@@ -1163,10 +1163,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)



2009-12-09 15:04:57

by Masami Hiramatsu

[permalink] [raw]
Subject: Re: [PATCH 01/10] trace_kprobe: shows signs of fields in format files

Lai Jiangshan wrote:
>
> format files of trace_kprobe don't shows signs, it is
> different from all other format files, incorrect API to user.
>
> Signed-off-by: Lai Jiangshan<[email protected]>

Thanks Lai!
Acked-by: Masami Hiramatsu <[email protected]>

> ---
> diff --git a/kernel/trace/trace_kprobe.c b/kernel/trace/trace_kprobe.c
> index e3c80e9..3ef66d4 100644
> --- a/kernel/trace/trace_kprobe.c
> +++ b/kernel/trace/trace_kprobe.c
> @@ -1163,10 +1163,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)
>
>
>

--
Masami Hiramatsu

Software Engineer
Hitachi Computer Products (America), Inc.
Software Solutions Division

e-mail: [email protected]