[tip:perfcounters/core] perf report: Clean up the default output

From: tip-bot for Ingo Molnar
Date: Tue Jun 02 2009 - 10:43:22 EST


Commit-ID: 4593bba8679b925a056f84edac061676e7eda71c
Gitweb: http://git.kernel.org/tip/4593bba8679b925a056f84edac061676e7eda71c
Author: Ingo Molnar <mingo@xxxxxxx>
AuthorDate: Tue, 2 Jun 2009 15:34:25 +0200
Committer: Ingo Molnar <mingo@xxxxxxx>
CommitDate: Tue, 2 Jun 2009 16:39:25 +0200

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@xxxxxxxxx>
Cc: Mike Galbraith <efault@xxxxxx>
Cc: Paul Mackerras <paulus@xxxxxxxxx>
Cc: Corey Ashford <cjashfor@xxxxxxxxxxxxxxxxxx>
Cc: Marcelo Tosatti <mtosatti@xxxxxxxxxx>
Cc: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
Cc: John Kacur <jkacur@xxxxxxxxxx>
LKML-Reference: <new-submission>
Signed-off-by: Ingo Molnar <mingo@xxxxxxx>


---
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 0558c1e..19c1e05 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");
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/