diff options
author | Arnaldo Carvalho de Melo <acme@redhat.com> | 2013-10-08 17:17:43 -0300 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2013-10-11 12:18:00 -0300 |
commit | 975b7c2f40d431da4fdb46dd8b9d90c129eecc12 (patch) | |
tree | 10fa04d8af2cdb28a52aeeed460e92cfa7e9aa1a /tools/perf/builtin-trace.c | |
parent | 03e3adc9f4d8b57dc83475c8c4c6e462a78ff709 (diff) | |
download | blackbird-op-linux-975b7c2f40d431da4fdb46dd8b9d90c129eecc12.tar.gz blackbird-op-linux-975b7c2f40d431da4fdb46dd8b9d90c129eecc12.zip |
perf trace: Prepare the strarray scnprintf method for reuse
Right now when an index passed to that method has no string associated
it'll print the index as a decimal number, prepare it so that we can use
it to print it in hex as well, for ioctls, for instance.
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Stephane Eranian <eranian@google.com>
Link: http://lkml.kernel.org/n/tip-nsvy06sqj64qvnkmzvwxsx2v@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/builtin-trace.c')
-rw-r--r-- | tools/perf/builtin-trace.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/tools/perf/builtin-trace.c b/tools/perf/builtin-trace.c index 7424298b87e3..0d4af1d7e55c 100644 --- a/tools/perf/builtin-trace.c +++ b/tools/perf/builtin-trace.c @@ -60,18 +60,25 @@ struct strarray { .entries = array, \ } -static size_t syscall_arg__scnprintf_strarray(char *bf, size_t size, - struct syscall_arg *arg) +static size_t __syscall_arg__scnprintf_strarray(char *bf, size_t size, + const char *intfmt, + struct syscall_arg *arg) { struct strarray *sa = arg->parm; int idx = arg->val - sa->offset; if (idx < 0 || idx >= sa->nr_entries) - return scnprintf(bf, size, "%d", arg->val); + return scnprintf(bf, size, intfmt, arg->val); return scnprintf(bf, size, "%s", sa->entries[idx]); } +static size_t syscall_arg__scnprintf_strarray(char *bf, size_t size, + struct syscall_arg *arg) +{ + return __syscall_arg__scnprintf_strarray(bf, size, "%d", arg); +} + #define SCA_STRARRAY syscall_arg__scnprintf_strarray static size_t syscall_arg__scnprintf_fd(char *bf, size_t size, |