diff options
author | Arnaldo Carvalho de Melo <acme@redhat.com> | 2009-12-14 20:09:29 -0200 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-12-15 08:50:28 +0100 |
commit | c8829c7a31c7e0156b230fa8d5a14be9881d7677 (patch) | |
tree | c8649f461c5192613de3fe47b728e47a8b5c9e2c /tools/perf/util | |
parent | f823e441ab4dfaeaf17832fa1931e0dc0fde304d (diff) | |
download | linux-c8829c7a31c7e0156b230fa8d5a14be9881d7677.tar.gz linux-c8829c7a31c7e0156b230fa8d5a14be9881d7677.tar.bz2 linux-c8829c7a31c7e0156b230fa8d5a14be9881d7677.zip |
perf util: Remove setup_sorting dups
And it is also needed by 'perf diff'.
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Frédéric Weisbecker <fweisbec@gmail.com>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Paul Mackerras <paulus@samba.org>
LKML-Reference: <1260828571-3613-1-git-send-email-acme@infradead.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'tools/perf/util')
-rw-r--r-- | tools/perf/util/sort.c | 15 | ||||
-rw-r--r-- | tools/perf/util/sort.h | 2 |
2 files changed, 17 insertions, 0 deletions
diff --git a/tools/perf/util/sort.c b/tools/perf/util/sort.c index b490354d1b23..cff1c316fa91 100644 --- a/tools/perf/util/sort.c +++ b/tools/perf/util/sort.c @@ -288,3 +288,18 @@ int sort_dimension__add(const char *tok) return -ESRCH; } + +void setup_sorting(const char * const usagestr[], const struct option *opts) +{ + char *tmp, *tok, *str = strdup(sort_order); + + for (tok = strtok_r(str, ", ", &tmp); + tok; tok = strtok_r(NULL, ", ", &tmp)) { + if (sort_dimension__add(tok) < 0) { + error("Unknown --sort key: `%s'", tok); + usage_with_options(usagestr, opts); + } + } + + free(str); +} diff --git a/tools/perf/util/sort.h b/tools/perf/util/sort.h index 333e664ff45f..cb6151c026f2 100644 --- a/tools/perf/util/sort.h +++ b/tools/perf/util/sort.h @@ -81,6 +81,8 @@ struct sort_entry { extern struct sort_entry sort_thread; extern struct list_head hist_entry__sort_list; +void setup_sorting(const char * const usagestr[], const struct option *opts); + extern int repsep_fprintf(FILE *fp, const char *fmt, ...); extern size_t sort__thread_print(FILE *, struct hist_entry *, unsigned int); extern size_t sort__comm_print(FILE *, struct hist_entry *, unsigned int); |