aboutsummaryrefslogtreecommitdiff
path: root/tools/perf/ui/gtk/annotate.c
diff options
context:
space:
mode:
authorNamhyung Kim <namhyung@kernel.org>2021-07-19 15:31:51 -0700
committerArnaldo Carvalho de Melo <acme@redhat.com>2021-08-02 10:12:55 -0300
commitfea20d66f90cdbdc7dccf1fa001d40e084984e55 (patch)
tree62c167231e767415fc202397da8eabda01f3580b /tools/perf/ui/gtk/annotate.c
parent0ae03893623dd1ddf17c1210265e5d7f9e2f3ed6 (diff)
perf inject: Fix output from a pipe to a file
Sometimes it needs to save the perf inject data to a file for debugging. But normally it assumes the same format for input and output, so the end result cannot be used due to a broken format. # perf record -a -o - sleep 1 | perf inject -b -o my.data # perf report -i my.data --stdio 0x208 [0]: failed to process type: 0 [Invalid argument] Error: failed to process sample # To display the perf.data header info, please use --header/--header-only options. # In this case, it thought the data has a regular file header since the output is not a pipe. But actually it doesn't have one and has a pipe file header. At the end of the session, it tries to rewrite the regular file header with updated features and it overwrites the data just follows the pipe header. Fix it by checking either the input and the output is a pipe. Signed-off-by: Namhyung Kim <namhyung@kernel.org> Acked-by: Jiri Olsa <jolsa@redhat.com> Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: Andi Kleen <ak@linux.intel.com> Cc: Ian Rogers <irogers@google.com> Cc: Peter Zijlstra <peterz@infradead.org> Link: http://lore.kernel.org/lkml/20210719223153.1618812-4-namhyung@kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/ui/gtk/annotate.c')
0 files changed, 0 insertions, 0 deletions