• Adrian Hunter's avatar
    perf tests: Skip record test if test_loop symbol is missing · 3c489dbe
    Adrian Hunter authored
    perf record test depends on finding symbol test_loop in perf, and fails if
    perf has been stripped and no debug object is available. In that case, skip
    the test instead.
    
    Example:
    
     Note, building with perl support adds option -Wl,-E which causes the
     linker to add all (global) symbols to the dynamic symbol table. So the
     test_loop symbol, being global, does not get stripped unless NO_LIBPERL=1
    
     Before:
    
      $ make NO_LIBPERL=1 -C tools/perf >/dev/null 2>&1
      $ strip tools/perf/perf
      $ tools/perf/perf buildid-cache -p `realpath tools/perf/perf`
      $ tools/perf/perf test -v 'record tests'
       91: perf record tests                                               :
      --- start ---
      test child forked, pid 118750
      Basic --per-thread mode test
      Per-thread record [Failed missing output]
      Register capture test
      Register capture test [Success]
      Basic --system-wide mode test
      System-wide record [Skipped not supported]
      Basic target workload test
      Workload record [Failed missing output]
      test child finished with -1
      ---- end ----
      perf record tests: FAILED!
    
     After:
    
      $ tools/perf/perf test -v 'record tests'
       91: perf record tests                                               :
      --- start ---
      test child forked, pid 120025
      perf does not have symbol 'test_loop'
      perf is missing symbols - skipping test
      test child finished with -2
      ---- end ----
      perf record tests: Skip
    Signed-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
    Acked-by: default avatarIan Rogers <irogers@google.com>
    Cc: German Gomez <german.gomez@arm.com>
    Cc: James Clark <james.clark@arm.com>
    Cc: Jiri Olsa <jolsa@kernel.org>
    Cc: Leo Yan <leo.yan@linaro.org>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Link: https://lore.kernel.org/r/20231123075848.9652-5-adrian.hunter@intel.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    3c489dbe
record.sh 4.69 KB