• J
    perf tools: Fix LLVM test failure when running in verbose mode · 792adb1a
    James Clark 提交于
    A CI system might want to run all tests in verbose mode so that there is
    enough information to diagnose issues. This LLVM test is the only test
    that uses "-v" to signify to not skip the test if the preconditions
    aren't met (LLVM isn't installed). This means that running the test in
    verbose mode without LLVM installed causes a test failure.
    
    For consistency with the other tests, remove this verbose/skip check. An
    alternate solution would be to make _all_ tests not skip when run in
    verbose mode, but I don't think that would be intuitive.
    
    Also change the search_program() call to search_program_and_warn().
    Previously the hint about installing LLVM was only printed by the actual
    test because this check was skipped in verbose mode. To maintain the old
    behaviour, the precondition check must also print the full warning.
    
    Previous output:
    
      $ ./perf test llvm
      40: LLVM search and compile                                     :
      40.1: Basic BPF llvm compile                                    : Skip
    
      $ ./perf test -v llvm
      40: LLVM search and compile                                     :
      40.1: Basic BPF llvm compile                                    :
      --- start ---
      test child forked, pid 2085835
      ERROR:	unable to find clang.
      Hint:	Try to install latest clang/llvm to support BPF. Check your $PATH
      ...
      test child finished with -1
      ---- end ----
      LLVM search and compile subtest 1: FAILED!
    
    New output (non verbose mode is identical, verbose changes from fail to
    skip):
    
      $ ./perf test llvm
      40: LLVM search and compile                                     :
      40.1: Basic BPF llvm compile                                    : Skip
    
      $ ./perf test -v llvm
      40: LLVM search and compile                                     :
      40.1: Basic BPF llvm compile                                    :
      --- start ---
      test child forked, pid 2087680
      ERROR:	unable to find clang.
      Hint:	Try to install latest clang/llvm to support BPF. Check your $PATH
      ...
      No clang, skip this test
      test child finished with -2
      ---- end ----
      LLVM search and compile subtest 1: Skip
    Signed-off-by: NJames Clark <james.clark@arm.com>
    Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
    Cc: Jiri Olsa <jolsa@redhat.com>
    Cc: Mark Rutland <mark.rutland@arm.com>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: clang-built-linux@googlegroups.com
    Link: http://lore.kernel.org/lkml/20210831145501.2135754-2-james.clark@arm.comSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
    792adb1a
llvm.c 4.0 KB