diff options
author | 2018-08-17 11:48:10 +0200 | |
---|---|---|
committer | 2018-08-20 08:54:59 -0300 | |
commit | 8b42b7e5e8b5692bc5e57342bf00c40d64978407 (patch) | |
tree | 92cf5327174b5136e4ab83f080f4c3cad98c87cc /tools/perf/util/zlib.c | |
parent | perf tools: Move the temp file processing into decompress_kmodule (diff) | |
download | linux-8b42b7e5e8b5692bc5e57342bf00c40d64978407.tar.gz linux-8b42b7e5e8b5692bc5e57342bf00c40d64978407.tar.bz2 linux-8b42b7e5e8b5692bc5e57342bf00c40d64978407.zip |
perf tools: Add is_compressed callback to compressions array
Add is_compressed callback to the compressions array, that returns 0 if
the file is compressed or != 0 if not.
The new callback is used to recognize the situation when we have a
'compressed' object, like:
/lib/modules/.../drivers/net/ethernet/intel/igb/igb.ko.xz
but we need to read its debug data from debuginfo files, which might not
be compressed, like:
/root/.debug/.build-id/d6/...c4b301f/debug
So even for a 'compressed' object we read debug data from a plain
uncompressed object. To keep this transparent, we detect this in
decompress_kmodule() and return the file descriptor to the uncompressed
file.
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Michael Petlan <mpetlan@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/20180817094813.15086-11-jolsa@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/util/zlib.c')
-rw-r--r-- | tools/perf/util/zlib.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/tools/perf/util/zlib.c b/tools/perf/util/zlib.c index a725b958cf31..e68317214679 100644 --- a/tools/perf/util/zlib.c +++ b/tools/perf/util/zlib.c @@ -5,6 +5,7 @@ #include <sys/stat.h> #include <sys/mman.h> #include <zlib.h> +#include <linux/compiler.h> #include "util/compress.h" #include "util/util.h" @@ -79,3 +80,8 @@ out_close: return ret == Z_STREAM_END ? 0 : -1; } + +bool gzip_is_compressed(const char *input __maybe_unused) +{ + return true; +} |