diff options
author | walimis <walimisdev@gmail.com> | 2009-06-03 04:01:30 -0400 |
---|---|---|
committer | Steven Rostedt <rostedt@goodmis.org> | 2009-06-03 10:25:30 -0400 |
commit | 048dc50c5e7eada19ebabbad70b7966d14283d41 (patch) | |
tree | 2d81fa88cfb5ebd5ee2622b4eb7632b1f369a567 /kernel/trace/trace_output.c | |
parent | f11b3f4e2932bfdcfc458ab8d1ece62724ceabfc (diff) |
tracing/events: fix output format of user stack
According to "events/ftrace/user_stack/format", fix the output of
user stack.
before fix:
sh-1073 [000] 31.137561: <b7f274fe> <- <0804e33c> <- <080835c1>
after fix:
sh-1072 [000] 37.039329:
=> <b7f8a4fe>
=> <0804e33c>
=> <080835c1>
Signed-off-by: walimis <walimisdev@gmail.com>
LKML-Reference: <1244016090-7814-3-git-send-email-walimisdev@gmail.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Diffstat (limited to 'kernel/trace/trace_output.c')
-rw-r--r-- | kernel/trace/trace_output.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/kernel/trace/trace_output.c b/kernel/trace/trace_output.c index 64596a571609..8dadbbbd2d5c 100644 --- a/kernel/trace/trace_output.c +++ b/kernel/trace/trace_output.c | |||
@@ -389,17 +389,20 @@ seq_print_userip_objs(const struct userstack_entry *entry, struct trace_seq *s, | |||
389 | 389 | ||
390 | if (ip == ULONG_MAX || !ret) | 390 | if (ip == ULONG_MAX || !ret) |
391 | break; | 391 | break; |
392 | if (i && ret) | 392 | if (ret) |
393 | ret = trace_seq_puts(s, " <- "); | 393 | ret = trace_seq_puts(s, " => "); |
394 | if (!ip) { | 394 | if (!ip) { |
395 | if (ret) | 395 | if (ret) |
396 | ret = trace_seq_puts(s, "??"); | 396 | ret = trace_seq_puts(s, "??"); |
397 | if (ret) | ||
398 | ret = trace_seq_puts(s, "\n"); | ||
397 | continue; | 399 | continue; |
398 | } | 400 | } |
399 | if (!ret) | 401 | if (!ret) |
400 | break; | 402 | break; |
401 | if (ret) | 403 | if (ret) |
402 | ret = seq_print_user_ip(s, mm, ip, sym_flags); | 404 | ret = seq_print_user_ip(s, mm, ip, sym_flags); |
405 | ret = trace_seq_puts(s, "\n"); | ||
403 | } | 406 | } |
404 | 407 | ||
405 | if (mm) | 408 | if (mm) |
@@ -1012,10 +1015,10 @@ static enum print_line_t trace_user_stack_print(struct trace_iterator *iter, | |||
1012 | 1015 | ||
1013 | trace_assign_type(field, iter->ent); | 1016 | trace_assign_type(field, iter->ent); |
1014 | 1017 | ||
1015 | if (!seq_print_userip_objs(field, s, flags)) | 1018 | if (!trace_seq_putc(s, '\n')) |
1016 | goto partial; | 1019 | goto partial; |
1017 | 1020 | ||
1018 | if (!trace_seq_putc(s, '\n')) | 1021 | if (!seq_print_userip_objs(field, s, flags)) |
1019 | goto partial; | 1022 | goto partial; |
1020 | 1023 | ||
1021 | return TRACE_TYPE_HANDLED; | 1024 | return TRACE_TYPE_HANDLED; |