1. 29 8月, 2019 21 次提交
  2. 27 8月, 2019 16 次提交
  3. 14 8月, 2019 1 次提交
    • I
      perf tools: Add helpers to use capabilities if present · c22e150e
      Igor Lubashev 提交于
      Add utilities to help checking capabilities of the running procss.  Make
      perf link with libcap, if it is available. If no libcap-dev[el],
      fallback to the geteuid() == 0 test used before.
      
      Committer notes:
      
        $ perf test python
        18: 'import perf' in python                               : FAILED!
        $ perf test -v python
        Couldn't bump rlimit(MEMLOCK), failures may take place when creating BPF maps, etc
        18: 'import perf' in python                               :
        --- start ---
        test child forked, pid 23288
        Traceback (most recent call last):
          File "<stdin>", line 1, in <module>
        ImportError: /tmp/build/perf/python/perf.so: undefined symbol: cap_get_flag
        test child finished with -1
        ---- end ----
        'import perf' in python: FAILED!
        $
      
      This happens because differently from the perf binary generated with
      this patch applied:
      
        $ ldd /tmp/build/perf/perf | grep libcap
        	libcap.so.2 => /lib64/libcap.so.2 (0x00007f724a4ef000)
        $
      
      The python binding isn't linking with libcap:
      
        $ ldd /tmp/build/perf/python/perf.so | grep libcap
        $
      
      So add 'cap' to the 'extra_libraries' variable in
      tools/perf/util/setup.py, and rebuild:
      
        $ perf test python
        18: 'import perf' in python                               : Ok
        $
      
      If we explicitely disable libcap it also continues to work:
      
        $ make NO_LIBCAP=1 -C tools/perf O=/tmp/build/perf install-bin
          $ ldd /tmp/build/perf/perf | grep libcap
        $ ldd /tmp/build/perf/python/perf.so | grep libcap
        $ perf test python
        18: 'import perf' in python                               : Ok
        $
      Signed-off-by: NIgor Lubashev <ilubashe@akamai.com>
      Acked-by: NJiri Olsa <jolsa@kernel.org>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Alexey Budankov <alexey.budankov@linux.intel.com>
      Cc: James Morris <jmorris@namei.org>
      Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Suzuki Poulouse <suzuki.poulose@arm.com>
      Cc: linux-arm-kernel@lists.infradead.org
      [ split from a larger patch ]
      Link: http://lkml.kernel.org/r/8a1e76cf5c7c9796d0d4d240fbaa85305298aafa.1565188228.git.ilubashe@akamai.comSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      c22e150e
  4. 30 7月, 2019 2 次提交