mirror of https://gitee.com/openkylin/linux.git
perf_counter tools: Prepare for 'perf annotate'
Prepare for the 'perf annotate' implementation by splitting off builtin-annotate.c from builtin-report.c. ( We keep this commit separate to ease the later librarization of the facilities that perf-report and perf-annotate shares. ) Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Mike Galbraith <efault@gmx.de> Cc: Paul Mackerras <paulus@samba.org> Cc: Arnaldo Carvalho de Melo <acme@redhat.com> LKML-Reference: <new-submission> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
6e6b754ffd
commit
8035e42880
|
@ -0,0 +1,26 @@
|
|||
perf-annotate(1)
|
||||
==============
|
||||
|
||||
NAME
|
||||
----
|
||||
perf-annotate - Read perf.data (created by perf record) and annotate functions
|
||||
|
||||
SYNOPSIS
|
||||
--------
|
||||
[verse]
|
||||
'perf annotate' [-i <file> | --input=file] symbol_name
|
||||
|
||||
DESCRIPTION
|
||||
-----------
|
||||
This command displays the performance counter profile information recorded
|
||||
via perf record.
|
||||
|
||||
OPTIONS
|
||||
-------
|
||||
-i::
|
||||
--input=::
|
||||
Input file name. (default: perf.data)
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkperf:perf-record[1]
|
|
@ -323,12 +323,13 @@ LIB_OBJS += util/symbol.o
|
|||
LIB_OBJS += util/color.o
|
||||
LIB_OBJS += util/pager.o
|
||||
|
||||
BUILTIN_OBJS += builtin-annotate.o
|
||||
BUILTIN_OBJS += builtin-help.o
|
||||
BUILTIN_OBJS += builtin-list.o
|
||||
BUILTIN_OBJS += builtin-record.o
|
||||
BUILTIN_OBJS += builtin-report.o
|
||||
BUILTIN_OBJS += builtin-stat.o
|
||||
BUILTIN_OBJS += builtin-top.o
|
||||
BUILTIN_OBJS += builtin-list.o
|
||||
|
||||
PERFLIBS = $(LIB_FILE)
|
||||
EXTLIBS =
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -14,6 +14,7 @@ extern void prune_packed_objects(int);
|
|||
extern int read_line_with_nul(char *buf, int size, FILE *file);
|
||||
extern int check_pager_config(const char *cmd);
|
||||
|
||||
extern int cmd_annotate(int argc, const char **argv, const char *prefix);
|
||||
extern int cmd_help(int argc, const char **argv, const char *prefix);
|
||||
extern int cmd_record(int argc, const char **argv, const char *prefix);
|
||||
extern int cmd_report(int argc, const char **argv, const char *prefix);
|
||||
|
|
|
@ -2,8 +2,9 @@
|
|||
# List of known perf commands.
|
||||
# command name category [deprecated] [common]
|
||||
#
|
||||
perf-annotate mainporcelain common
|
||||
perf-list mainporcelain common
|
||||
perf-record mainporcelain common
|
||||
perf-report mainporcelain common
|
||||
perf-stat mainporcelain common
|
||||
perf-top mainporcelain common
|
||||
perf-list mainporcelain common
|
||||
|
|
|
@ -263,6 +263,7 @@ static void handle_internal_command(int argc, const char **argv)
|
|||
{ "report", cmd_report, 0 },
|
||||
{ "stat", cmd_stat, 0 },
|
||||
{ "top", cmd_top, 0 },
|
||||
{ "annotate", cmd_annotate, 0 },
|
||||
{ "version", cmd_version, 0 },
|
||||
};
|
||||
int i;
|
||||
|
@ -402,9 +403,11 @@ int main(int argc, const char **argv)
|
|||
while (1) {
|
||||
static int done_help = 0;
|
||||
static int was_alias = 0;
|
||||
|
||||
was_alias = run_argv(&argc, &argv);
|
||||
if (errno != ENOENT)
|
||||
break;
|
||||
|
||||
if (was_alias) {
|
||||
fprintf(stderr, "Expansion of alias '%s' failed; "
|
||||
"'%s' is not a perf-command\n",
|
||||
|
|
Loading…
Reference in New Issue