lkml.org 
[lkml]   [2018]   [Aug]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Subject[PATCH 00/13] perf tools: Use plain debug files for compressed objects
    Date
    hi,
    currently we don't allow to open plain debug files for
    compressed kernel module objects, ending up with following
    warning:

    $ perf report --stdio
    lzma: failed The input is not in the .xz format
    lzma: failed The input is not in the .xz format
    lzma: failed The input is not in the .xz format
    lzma: failed The input is not in the .xz format
    # To display the perf.data header info, please use --header/--header-only options.

    The reason is behind the logic we open the DSO object files,
    when we try all possible 'debug' objects until we find the
    data. So even if the DSO is represented by 'krava.xz' module,
    we can end up opening ~/.debug/....23432432/debug' file which
    is not compressed and we fail with above error.

    This patchset adds the code to detect un/compressed files and
    return plain debug file when available even for compressed
    kernel modules.

    Also available in here:
    git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git
    perf/fixes

    thanks,
    jirka


    ---
    Jiri Olsa (13):
    perf tools: Get rid of dso__needs_decompress call in read_object_code
    perf tools: Get rid of dso__needs_decompress call in symbol__disassemble
    perf tools: Get rid of dso__needs_decompress call in __open_dso
    perf tools: Make decompress_to_file function static
    perf tools: Make is_supported_compression function static
    perf tools: Add compression id into struct kmod_path
    perf tools: Store compression id into struct dso
    perf tools: Use compression id in decompress_kmodule function
    perf tools: Move the temp file processing into decompress_kmodule
    perf tools: Add is_compressed callback to compressions array
    perf tools: Add lzma_is_compressed function
    perf tools: Add gzip_is_compressed function
    perf tools: Remove ext from struct kmod_path

    tools/perf/tests/code-reading.c | 4 +++-
    tools/perf/tests/kmod-path.c | 136 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------------------------------------------------------
    tools/perf/util/annotate.c | 4 +++-
    tools/perf/util/compress.h | 2 ++
    tools/perf/util/dso.c | 111 ++++++++++++++++++++++++++++++++++++++++++++++++++-------------------------------------------------------
    tools/perf/util/dso.h | 13 +++++--------
    tools/perf/util/lzma.c | 20 +++++++++++++++++++
    tools/perf/util/machine.c | 4 +++-
    tools/perf/util/zlib.c | 18 +++++++++++++++++
    9 files changed, 172 insertions(+), 140 deletions(-)

    \
     
     \ /
      Last update: 2018-08-17 11:48    [W:4.583 / U:0.028 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site