Re: [GIT PULL 0/4] perf/core fixes and improvements

2019-01-10 Thread Ingo Molnar


* Arnaldo Carvalho de Melo  wrote:

> Hi Ingo,
> 
>   Please consider pulling, now there are no more ABI header
> warnings,
> 
> - Arnaldo
> 
> Test results at the end of this message, as usual.
> 
> The following changes since commit 576b50ea235699d83758c0c514c65b8d486a159d:
> 
>   Merge tag 'perf-core-for-mingo-5.0-20190108' of 
> git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/urgent 
> (2019-01-09 07:59:40 +0100)
> 
> are available in the Git repository at:
> 
>   git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git 
> tags/perf-core-for-mingo-5.0-20190110
> 
> for you to fetch changes up to 15c03092a9fbcdd041f58e5f832bf76c21c42e6a:
> 
>   tools headers powerpc: Remove unistd.h (2019-01-10 10:42:08 -0300)
> 
> 
> perf/core fixes and improvements:
> 
> perf trace:
> 
>   Ravi Bangoria:
> 
>   - Rework PowerPC syscall table generation, now using a .tbl file just like
> x86_64 and S/390, also silencing a tools build warning about headers out 
> of
> sync with the kernel sources.
> 
> tools include uapi:
> 
>   Arnaldo Carvalho de Melo:
> 
>   - Sync linux/if_link.h copy with the kernel sources, silencing a build 
> warning.
> 
> perf top:
> 
>   Arnaldo Carvalho de Melo:
> 
>   - Add 'arch_cpu_idle' to the list of kernel idle symbols, noticed on a 
> Orange
> Pi Zero ARM board, just like with other symbols in other arches.
> 
> Signed-off-by: Arnaldo Carvalho de Melo 
> 
> 
> Arnaldo Carvalho de Melo (2):
>   tools include uapi: Sync linux/if_link.h copy with the kernel sources
>   perf symbols: Add 'arch_cpu_idle' to the list of kernel idle symbols
> 
> Ravi Bangoria (2):
>   perf powerpc: Rework syscall table generation
>   tools headers powerpc: Remove unistd.h
> 
>  tools/arch/powerpc/include/uapi/asm/unistd.h   | 404 ---
>  tools/include/uapi/linux/if_link.h |  19 +
>  tools/perf/arch/powerpc/Makefile   |  15 +-
>  .../perf/arch/powerpc/entry/syscalls/mksyscalltbl  |  22 +-
>  tools/perf/arch/powerpc/entry/syscalls/syscall.tbl | 427 
> +
>  tools/perf/check-headers.sh|   1 -
>  tools/perf/util/symbol.c   |   1 +
>  7 files changed, 470 insertions(+), 419 deletions(-)
>  delete mode 100644 tools/arch/powerpc/include/uapi/asm/unistd.h
>  create mode 100644 tools/perf/arch/powerpc/entry/syscalls/syscall.tbl

Pulled, thanks a lot Arnaldo!

Ingo


[GIT PULL 0/4] perf/core fixes and improvements

2019-01-10 Thread Arnaldo Carvalho de Melo
Hi Ingo,

Please consider pulling, now there are no more ABI header
warnings,

- Arnaldo

Test results at the end of this message, as usual.

The following changes since commit 576b50ea235699d83758c0c514c65b8d486a159d:

  Merge tag 'perf-core-for-mingo-5.0-20190108' of 
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/urgent 
(2019-01-09 07:59:40 +0100)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git 
tags/perf-core-for-mingo-5.0-20190110

for you to fetch changes up to 15c03092a9fbcdd041f58e5f832bf76c21c42e6a:

  tools headers powerpc: Remove unistd.h (2019-01-10 10:42:08 -0300)


perf/core fixes and improvements:

perf trace:

  Ravi Bangoria:

  - Rework PowerPC syscall table generation, now using a .tbl file just like
x86_64 and S/390, also silencing a tools build warning about headers out of
sync with the kernel sources.

tools include uapi:

  Arnaldo Carvalho de Melo:

  - Sync linux/if_link.h copy with the kernel sources, silencing a build 
warning.

perf top:

  Arnaldo Carvalho de Melo:

  - Add 'arch_cpu_idle' to the list of kernel idle symbols, noticed on a Orange
Pi Zero ARM board, just like with other symbols in other arches.

Signed-off-by: Arnaldo Carvalho de Melo 


Arnaldo Carvalho de Melo (2):
  tools include uapi: Sync linux/if_link.h copy with the kernel sources
  perf symbols: Add 'arch_cpu_idle' to the list of kernel idle symbols

Ravi Bangoria (2):
  perf powerpc: Rework syscall table generation
  tools headers powerpc: Remove unistd.h

 tools/arch/powerpc/include/uapi/asm/unistd.h   | 404 ---
 tools/include/uapi/linux/if_link.h |  19 +
 tools/perf/arch/powerpc/Makefile   |  15 +-
 .../perf/arch/powerpc/entry/syscalls/mksyscalltbl  |  22 +-
 tools/perf/arch/powerpc/entry/syscalls/syscall.tbl | 427 +
 tools/perf/check-headers.sh|   1 -
 tools/perf/util/symbol.c   |   1 +
 7 files changed, 470 insertions(+), 419 deletions(-)
 delete mode 100644 tools/arch/powerpc/include/uapi/asm/unistd.h
 create mode 100644 tools/perf/arch/powerpc/entry/syscalls/syscall.tbl

Test results:

The first ones are container based builds of tools/perf with and without libelf
support.  Where clang is available, it is also used to build perf with/without
libelf, and building with LIBCLANGLLVM=1 (built-in clang) with gcc and clang
when clang and its devel libraries are installed.

The objtool and samples/bpf/ builds are disabled now that I'm switching from
using the sources in a local volume to fetching them from a http server to
build it inside the container, to make it easier to build in a container 
cluster.
Those will come back later.

Several are cross builds, the ones with -x-ARCH and the android one, and those
may not have all the features built, due to lack of multi-arch devel packages,
available and being used so far on just a few, like
debian:experimental-x-{arm64,mipsel}.

The 'perf test' one will perform a variety of tests exercising
tools/perf/util/, tools/lib/{bpf,traceevent,etc}, as well as run perf commands
with a variety of command line event specifications to then intercept the
sys_perf_event syscall to check that the perf_event_attr fields are set up as
expected, among a variety of other unit tests.

Then there is the 'make -C tools/perf build-test' ones, that build tools/perf/
with a variety of feature sets, exercising the build with an incomplete set of
features as well as with a complete one. It is planned to have it run on each
of the containers mentioned above, using some container orchestration
infrastructure. Get in contact if interested in helping having this in place.

  $ export PERF_TARBALL=http://192.168.124.1/perf/perf-5.0.0-rc1.tar.xz
  $ dm
   1 alpine:3.4: Ok   gcc (Alpine 5.3.0) 5.3.0
   2 alpine:3.5: Ok   gcc (Alpine 6.2.1) 6.2.1 20160822
   3 alpine:3.6: Ok   gcc (Alpine 6.3.0) 6.3.0
   4 alpine:3.7: Ok   gcc (Alpine 6.4.0) 6.4.0
   5 alpine:3.8: Ok   gcc (Alpine 6.4.0) 6.4.0
   6 alpine:edge   : Ok   gcc (Alpine 8.2.0) 8.2.0
   7 amazonlinux:1 : Ok   gcc (GCC) 4.8.5 20150623 (Red Hat 
4.8.5-28)
   8 amazonlinux:2 : Ok   gcc (GCC) 7.3.1 20180303 (Red Hat 
7.3.1-5)
   9 android-ndk:r12b-arm  : Ok   arm-linux-androideabi-gcc (GCC) 4.9.x 
20150123 (prerelease)
  10 android-ndk:r15c-arm  : Ok   arm-linux-androideabi-gcc (GCC) 4.9.x 
20150123 (prerelease)
  11 centos:5  : Ok   gcc (GCC) 4.1.2 20080704 (Red Hat 
4.1.2-55)
  12 centos:6  : Ok   gcc (GCC) 4.4.7 20120313 (Red Hat 
4.4.7-23)
  13 centos:7  :