diff options
author | Arnaldo Carvalho de Melo <acme@redhat.com> | 2010-03-02 15:25:38 -0300 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2010-03-02 19:27:46 +0100 |
commit | 6630125419ef37ff8781713c5e9d416f2a4ba357 (patch) | |
tree | 54b375e421b66cd9338359deb7a78635db36ee83 | |
parent | b622d644c7d61a5cb95b74e7b143c263bed21f0a (diff) | |
download | linux-3.10-6630125419ef37ff8781713c5e9d416f2a4ba357.tar.gz linux-3.10-6630125419ef37ff8781713c5e9d416f2a4ba357.tar.bz2 linux-3.10-6630125419ef37ff8781713c5e9d416f2a4ba357.zip |
perf archive: Don't try to collect files without a build-id
To avoid these error:
[root@doppio ~]# perf archive
tar: .build-id/00/00000000000000000000000000000000000000: Cannot stat:
No such file or directory
tar: .build-id/00/00000000000000000000000000000000000000: Cannot stat:
No such file or directory
tar: .build-id/00/00000000000000000000000000000000000000: Cannot stat:
No such file or directory
tar: .build-id/00/00000000000000000000000000000000000000: Cannot stat:
No such file or directory
tar: Exiting with failure status due to previous errors
[root@doppio ~]#
More work is needed to support archiving symtabs for binaries
without a build-id, perhaps creating a perf.data UUID + adding
build-ids for the binaries copied into the cache and then have
this perf.data session UUID be a directory with symlinks to the
by now calculated build-id of the files inside it.
Or just do an extra pass and insert the calculated build-ids in
the perf.data header.
Reported-by: Ingo Molnar <mingo@elte.hu>
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>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
-rw-r--r-- | tools/perf/perf-archive.sh | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/tools/perf/perf-archive.sh b/tools/perf/perf-archive.sh index 45fbe2f07b1..910468e6e01 100644 --- a/tools/perf/perf-archive.sh +++ b/tools/perf/perf-archive.sh @@ -9,8 +9,9 @@ fi DEBUGDIR=~/.debug/ BUILDIDS=$(mktemp /tmp/perf-archive-buildids.XXXXXX) +NOBUILDID=0000000000000000000000000000000000000000 -perf buildid-list -i $PERF_DATA --with-hits > $BUILDIDS +perf buildid-list -i $PERF_DATA --with-hits | grep -v "^$NOBUILDID " > $BUILDIDS if [ ! -s $BUILDIDS ] ; then echo "perf archive: no build-ids found" rm -f $BUILDIDS |