diff options
author | Ingo Molnar <mingo@elte.hu> | 2009-06-02 15:34:25 +0200 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-06-02 16:39:25 +0200 |
commit | 4593bba8679b925a056f84edac061676e7eda71c (patch) | |
tree | 54526e1beb9e242f197bfcc7793455a1edc1ff7c | |
parent | 97124d5e2df5b9eaa5bb684bb1e8ebc7e29d0f5d (diff) |
perf report: Clean up the default output
- extra space between columns
- left-aligned the symbol column
- moved the no-symbols printout to -v
Acked-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Corey Ashford <cjashfor@linux.vnet.ibm.com>
Cc: Marcelo Tosatti <mtosatti@redhat.com>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: John Kacur <jkacur@redhat.com>
LKML-Reference: <new-submission>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
-rw-r--r-- | Documentation/perf_counter/builtin-report.c | 55 |
1 files changed, 28 insertions, 27 deletions
diff --git a/Documentation/perf_counter/builtin-report.c b/Documentation/perf_counter/builtin-report.c index 0558c1e1aa5..19c1e056bb6 100644 --- a/Documentation/perf_counter/builtin-report.c +++ b/Documentation/perf_counter/builtin-report.c @@ -84,24 +84,25 @@ static struct dso *dsos__findnew(const char *name) struct dso *dso = dsos__find(name); int nr; - if (dso == NULL) { - dso = dso__new(name, 0); - if (!dso) - goto out_delete_dso; - - nr = dso__load(dso, NULL); - if (nr < 0) { - fprintf(stderr, "Failed to open: %s\n", name); - goto out_delete_dso; - } - if (!nr) { - fprintf(stderr, - "Failed to find debug symbols for: %s, maybe install a debug package?\n", - name); - } + if (dso) + return dso; + + dso = dso__new(name, 0); + if (!dso) + goto out_delete_dso; - dsos__add(dso); + nr = dso__load(dso, NULL); + if (nr < 0) { + fprintf(stderr, "Failed to open: %s\n", name); + goto out_delete_dso; } + if (!nr && verbose) { + fprintf(stderr, + "No symbols found in: %s, maybe install a debug package?\n", + name); + } + + dsos__add(dso); return dso; @@ -302,11 +303,11 @@ sort__thread_cmp(struct hist_entry *left, struct hist_entry *right) static size_t sort__thread_print(FILE *fp, struct hist_entry *self) { - return fprintf(fp, " %16s:%5d", self->thread->comm ?: "", self->thread->pid); + return fprintf(fp, " %16s:%5d", self->thread->comm ?: "", self->thread->pid); } static struct sort_entry sort_thread = { - .header = " Command: Pid ", + .header = " Command: Pid ", .cmp = sort__thread_cmp, .print = sort__thread_print, }; @@ -332,11 +333,11 @@ sort__comm_cmp(struct hist_entry *left, struct hist_entry *right) static size_t sort__comm_print(FILE *fp, struct hist_entry *self) { - return fprintf(fp, " %16s", self->thread->comm ?: "<unknown>"); + return fprintf(fp, " %16s", self->thread->comm ?: "<unknown>"); } static struct sort_entry sort_comm = { - .header = " Command", + .header = " Command", .cmp = sort__comm_cmp, .print = sort__comm_print, }; @@ -362,11 +363,11 @@ sort__dso_cmp(struct hist_entry *left, struct hist_entry *right) static size_t sort__dso_print(FILE *fp, struct hist_entry *self) { - return fprintf(fp, " %64s", self->dso ? self->dso->name : "<unknown>"); + return fprintf(fp, " %s", self->dso ? self->dso->name : "<unknown>"); } static struct sort_entry sort_dso = { - .header = " Shared Object", + .header = " Shared Object", .cmp = sort__dso_cmp, .print = sort__dso_print, }; @@ -391,9 +392,9 @@ sort__sym_print(FILE *fp, struct hist_entry *self) size_t ret = 0; if (verbose) - ret += fprintf(fp, " %#018llx", (unsigned long long)self->ip); + ret += fprintf(fp, " %#018llx", (unsigned long long)self->ip); - ret += fprintf(fp, " %s: %s", + ret += fprintf(fp, " %s: %s", self->dso ? self->dso->name : "<unknown>", self->sym ? self->sym->name : "<unknown>"); @@ -401,7 +402,7 @@ sort__sym_print(FILE *fp, struct hist_entry *self) } static struct sort_entry sort_sym = { - .header = "Shared Object: Symbol", + .header = " Shared Object: Symbol", .cmp = sort__sym_cmp, .print = sort__sym_print, }; @@ -595,8 +596,8 @@ static size_t output__fprintf(FILE *fp, uint64_t total_samples) list_for_each_entry(se, &hist_entry__sort_list, list) { int i; - fprintf(fp, " "); - for (i = 0; i < strlen(se->header); i++) + fprintf(fp, " "); + for (i = 0; i < strlen(se->header)-1; i++) fprintf(fp, "."); } fprintf(fp, "\n"); |