• James Clark's avatar
    perf unwind: Use dynamic register set for DWARF unwind · 72105204
    James Clark authored
    Architectures can detect availability of extra registers at runtime so
    use this more complete set for unwinding. This will include the VG
    register on arm64 in a later commit.
    
    If the function isn't implemented then PERF_REGS_MASK is returned and
    there is no change.
    
    Committer notes:
    
    Added util/perf_regs.c to tools/perf/util/python-ext-sources so that
    'perf test python' passes, i.e. the perf python binding has all the
    symbols it needs, addressing:
    
      $ perf test -v python
       19: 'import perf' in python                                         :
      --- start ---
      test child forked, pid 2037817
      python usage test: "echo "import sys ; sys.path.append('/tmp/build/perf/python'); import perf" | '/usr/bin/python3' "
      Traceback (most recent call last):
        File "<stdin>", line 1, in <module>
      ImportError: /tmp/build/perf/python/perf.cpython-310-x86_64-linux-gnu.so: undefined symbol: arch__user_reg_mask
      test child finished with -1
      ---- end ----
      'import perf' in python: FAILED!
      $
    Reviewed-by: default avatarLeo Yan <leo.yan@linaro.org>
    Signed-off-by: default avatarJames Clark <james.clark@arm.com>
    Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
    Cc: German Gomez <german.gomez@arm.com>
    Cc: Ingo Molnar <mingo@redhat.com>
    Cc: Jiri Olsa <jolsa@kernel.org>
    Cc: John Garry <john.garry@huawei.com>
    Cc: Mark Brown <broonie@kernel.org>
    Cc: Mark Rutland <mark.rutland@arm.com>
    Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
    Cc: Mike Leach <mike.leach@linaro.org>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Will Deacon <will@kernel.org>
    Cc: linux-arm-kernel@lists.infradead.org
    Link: https://lore.kernel.org/r/20220525154114.718321-4-james.clark@arm.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    72105204
evsel.c 79.6 KB