From: Ingo Molnar <mingo@kernel.org>
To: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: Clark Williams <williams@redhat.com>,
linux-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org,
Adrian Hunter <adrian.hunter@intel.com>,
Alexander Shishkin <alexander.shishkin@linux.intel.com>,
Alexei Starovoitov <ast@kernel.org>,
Andi Kleen <ak@linux.intel.com>,
Anshuman Khandual <anshuman.khandual@arm.com>,
Arnd Bergmann <arnd@arndb.de>,
Benjamin Peterson <benjamin@python.org>,
coresight@lists.linaro.org, David Ahern <dsahern@gmail.com>,
"David S . Miller" <davem@davemloft.net>,
Don Zickus <dzickus@redhat.com>, Eric Leblond <eric@regit.org>,
Geert Uytterhoeven <geert@linux-m68k.org>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Herbert Xu <herbert@gondor.apana.org.au>,
"Jason A . Donenfeld" <Jason@zx2c4.com>,
Jin Yao <yao.jin@linux.intel.com>
Subject: Re: [GIT PULL 00/24] perf/urgent improvements and fixes
Date: Wed, 31 Oct 2018 22:56:01 +0100 [thread overview]
Message-ID: <20181031215601.GA3843@gmail.com> (raw)
In-Reply-To: <20181031164508.4784-1-acme@kernel.org>
* Arnaldo Carvalho de Melo <acme@kernel.org> wrote:
> Hi Ingo,
>
> Please consider pulling, next ones should be concentrating just
> on bug fixes, been busy with some, so some were left in the queue,
> flushing them now.
>
> - Arnaldo
>
> Test results at the end of this message, as usual.
>
> The following changes since commit 28fa741c27e6d57f6bf594ba3c444ce79e671e09:
>
> perf/core: Clean up inconsisent indentation (2018-10-30 09:51:58 +0100)
>
> are available in the Git repository at:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git tags/perf-urgent-for-mingo-4.20-20181031
>
> for you to fetch changes up to 5d4f0edaa3ac4f1844ed7c64cd2bae6f1912bac5:
>
> perf intel-pt/bts: Calculate cpumode for synthesized samples (2018-10-31 12:56:26 -0300)
>
> ----------------------------------------------------------------
> perf/urgent improvements and fixes:
>
> - Fixes dealing with the removal of the fallback to looking up samples
> marked as userspace in the kernel maps, done recently:
>
> - For intel-pt, that was setting the synthesized header misc field
> as PERF_RECORD_MISC_USER, depending thus on the fallback to take
> place, now it sets as USER or KERNEL according to x86 specific
> knowledge. Also now it inserts the PERF_CONTEXT_{USER,KERNEL} into
> the PERF_SAMPLE_CALLCHAINs it synthesizes from hw traces (Adrian Hunter)
>
> - Similar fixes for the cs-etm ARM HW trace code, that used the Intel PT
> model as a starting point (Leo Yan)
>
> - For the "caller" callchain order, where the callchain returned by the
> kernel was simply reversed without taking into account the
> PERF_CONTEXT_{USER,KERNEL,etc} markers from where to define if an entry
> was for kernel or userspace, working just because the map lookup fallback
> was in place (David S. Miller)
>
> - Allow for selecting if 'overwrite' mode should be used in 'perf top' and
> make the default for it not to be used. This is due to problems with the
> current implementation where the pausing used ends up making 'perf top'
> miss PERF_RECORD_{MMAP,FORK,EXEC,etc} events, which with short lifetime
> threads workloads leads quickly to many "unknown" maps (and thus symbols)
> to appear in the UI. Workloads with long thread lifetimes and with few
> metadata events can still use --overwrite to take advantage of the
> overwrite mode (Arnaldo Carvalho de Melo)
>
> - Start 'perf top''s display thread earlier, so that the screen doesn't
> remain blank for too long at tool start (David S. Miller)
>
> - Don't clone maps from parent when synthesizing forks, to avoid the inevitable
> flurry of overlapping maps as we process the synthesized MMAP2 events that get
> delivered shortly thereafter. (David S. Miller)
>
> - Take pgoff into account when reporting elf to libdwfl, now the unwinding
> results are the same with elfutils's libdwfl and libunwind (Milian Wolff)
>
> - Update lotsa kernel ABI headers (Arnaldo Carvalho de Melo)
>
> - 'perf trace' syscall arg beautification improvements to allow for
> handling args such as mount's 'flags', where maks have to be ignored
> before considering what is left, that, if only zeroes, is suppressed
> like other args without such masks (Arnaldo Carvalho de Melo)
>
> - Beautify mount's 'source' and 'flags' args (Arnaldo Carvalho de Melo)
>
> - Generate mmap's flags bit constants from linux/mman.h and all the
> arch specific mman.h files, so that no changes in the main 'perf trace'
> source files is required when new flags get added (Arnaldo Carvalho de Melo)
>
> - Consider syscall aliases, so that 'perf trace -e umount' works and we don't
> have to use 'umount2' (that works as well, just not required) (Arnaldo Carvalho de Melo)
>
> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
>
> ----------------------------------------------------------------
> Adrian Hunter (2):
> perf intel-pt: Insert callchain context into synthesized callchains
> perf intel-pt/bts: Calculate cpumode for synthesized samples
>
> Arnaldo Carvalho de Melo (21):
> tools include uapi: Grab a copy of linux/fs.h
> perf beauty: Add a generator for MS_ mount/umount's flag constants
> perf beauty: Switch from GPL v2.0 to LGPL v2.1
> perf beauty: Introduce strarray__scnprintf_flags()
> perf trace beauty: Allow syscalls to mask an argument before considering it
> perf trace beauty: Beautify mount/umount's 'flags' argument
> perf trace: Consider syscall aliases too
> perf trace: Beautify the umount's 'name' argument
> perf trace: Beautify mount's first pathname arg
> perf top: Allow disabling the overwrite mode
> perf top: Do not use overwrite mode by default
> tools include uapi: Update linux/fs.h copy
> tools arch uapi: Update asm-generic/unistd.h and arm64 unistd.h copies
> tools include uapi: Update asound.h copy
> perf beauty: Add a generator for MAP_ mmap's flag constants
> perf beauty: Wire up the mmap flags table generator to the Makefile
> perf trace beauty: Use the mmap flags table generated from headers
> tools include uapi: Update linux/mmap.h copy
> tools headers: Sync the various kvm.h header copies
> tools headers uapi: Update linux/netlink.h header copy
> tools headers uapi: Update linux/if_link.h header copy
>
> David Miller (2):
> perf top: Start display thread earlier
> perf tools: Don't clone maps from parent when synthesizing forks
>
> David S. Miller (1):
> perf callchain: Honour the ordering of PERF_CONTEXT_{USER,KERNEL,etc}
>
> Leo Yan (1):
> perf cs-etm: Correct CPU mode for samples
>
> Milian Wolff (1):
> perf unwind: Take pgoff into account when reporting elf to libdwfl
>
> include/uapi/linux/perf_event.h | 2 +
> tools/arch/arm64/include/uapi/asm/unistd.h | 1 +
> tools/arch/powerpc/include/uapi/asm/kvm.h | 1 +
> tools/arch/s390/include/uapi/asm/kvm.h | 2 +
> tools/arch/x86/include/uapi/asm/kvm.h | 6 +-
> tools/include/uapi/asm-generic/unistd.h | 2 +
> tools/include/uapi/linux/fs.h | 393 +++++++++++++++++++++
> tools/include/uapi/linux/if_link.h | 1 +
> tools/include/uapi/linux/kvm.h | 21 +-
> tools/include/uapi/linux/mman.h | 2 +
> tools/include/uapi/linux/netlink.h | 1 +
> tools/include/uapi/linux/perf_event.h | 2 +
> tools/include/uapi/sound/asound.h | 2 +-
> tools/perf/Documentation/perf-top.txt | 10 +
> tools/perf/Makefile.perf | 19 +
> tools/perf/builtin-top.c | 21 +-
> tools/perf/builtin-trace.c | 48 ++-
> tools/perf/check-headers.sh | 1 +
> tools/perf/trace/beauty/Build | 1 +
> tools/perf/trace/beauty/beauty.h | 7 +
> tools/perf/trace/beauty/clone.c | 3 +-
> tools/perf/trace/beauty/drm_ioctl.sh | 1 +
> tools/perf/trace/beauty/eventfd.c | 2 +-
> tools/perf/trace/beauty/fcntl.c | 3 +-
> tools/perf/trace/beauty/flock.c | 2 +-
> tools/perf/trace/beauty/futex_op.c | 2 +-
> tools/perf/trace/beauty/futex_val3.c | 2 +-
> tools/perf/trace/beauty/ioctl.c | 3 +-
> tools/perf/trace/beauty/kcmp.c | 3 +-
> tools/perf/trace/beauty/kcmp_type.sh | 1 +
> tools/perf/trace/beauty/kvm_ioctl.sh | 1 +
> tools/perf/trace/beauty/madvise_behavior.sh | 1 +
> tools/perf/trace/beauty/mmap.c | 50 +--
> tools/perf/trace/beauty/mmap_flags.sh | 32 ++
> tools/perf/trace/beauty/mode_t.c | 2 +-
> tools/perf/trace/beauty/mount_flags.c | 43 +++
> tools/perf/trace/beauty/mount_flags.sh | 15 +
> tools/perf/trace/beauty/msg_flags.c | 2 +-
> tools/perf/trace/beauty/open_flags.c | 2 +-
> tools/perf/trace/beauty/perf_event_open.c | 2 +-
> tools/perf/trace/beauty/perf_ioctl.sh | 1 +
> tools/perf/trace/beauty/pid.c | 3 +-
> tools/perf/trace/beauty/pkey_alloc.c | 30 +-
> .../perf/trace/beauty/pkey_alloc_access_rights.sh | 1 +
> tools/perf/trace/beauty/prctl.c | 3 +-
> tools/perf/trace/beauty/prctl_option.sh | 1 +
> tools/perf/trace/beauty/sched_policy.c | 2 +-
> tools/perf/trace/beauty/seccomp.c | 2 +-
> tools/perf/trace/beauty/signum.c | 2 +-
> tools/perf/trace/beauty/sndrv_ctl_ioctl.sh | 1 +
> tools/perf/trace/beauty/sndrv_pcm_ioctl.sh | 1 +
> tools/perf/trace/beauty/sockaddr.c | 2 +-
> tools/perf/trace/beauty/socket.c | 2 +-
> tools/perf/trace/beauty/socket_ipproto.sh | 1 +
> tools/perf/trace/beauty/socket_type.c | 2 +-
> tools/perf/trace/beauty/statx.c | 3 +-
> tools/perf/trace/beauty/vhost_virtio_ioctl.sh | 1 +
> tools/perf/trace/beauty/waitid_options.c | 2 +-
> tools/perf/util/cs-etm.c | 39 +-
> tools/perf/util/event.c | 1 +
> tools/perf/util/intel-bts.c | 17 +-
> tools/perf/util/intel-pt.c | 28 +-
> tools/perf/util/machine.c | 54 ++-
> tools/perf/util/thread-stack.c | 44 ++-
> tools/perf/util/thread-stack.h | 2 +-
> tools/perf/util/thread.c | 13 +-
> tools/perf/util/thread.h | 2 +-
> tools/perf/util/unwind-libdw.c | 4 +-
> 68 files changed, 837 insertions(+), 142 deletions(-)
> create mode 100644 tools/include/uapi/linux/fs.h
> create mode 100755 tools/perf/trace/beauty/mmap_flags.sh
> create mode 100644 tools/perf/trace/beauty/mount_flags.c
> create mode 100755 tools/perf/trace/beauty/mount_flags.sh
Pulled, thanks a lot Arnaldo!
Ingo
WARNING: multiple messages have this Message-ID (diff)
From: mingo@kernel.org (Ingo Molnar)
To: linux-arm-kernel@lists.infradead.org
Subject: [GIT PULL 00/24] perf/urgent improvements and fixes
Date: Wed, 31 Oct 2018 22:56:01 +0100 [thread overview]
Message-ID: <20181031215601.GA3843@gmail.com> (raw)
In-Reply-To: <20181031164508.4784-1-acme@kernel.org>
* Arnaldo Carvalho de Melo <acme@kernel.org> wrote:
> Hi Ingo,
>
> Please consider pulling, next ones should be concentrating just
> on bug fixes, been busy with some, so some were left in the queue,
> flushing them now.
>
> - Arnaldo
>
> Test results at the end of this message, as usual.
>
> The following changes since commit 28fa741c27e6d57f6bf594ba3c444ce79e671e09:
>
> perf/core: Clean up inconsisent indentation (2018-10-30 09:51:58 +0100)
>
> are available in the Git repository at:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git tags/perf-urgent-for-mingo-4.20-20181031
>
> for you to fetch changes up to 5d4f0edaa3ac4f1844ed7c64cd2bae6f1912bac5:
>
> perf intel-pt/bts: Calculate cpumode for synthesized samples (2018-10-31 12:56:26 -0300)
>
> ----------------------------------------------------------------
> perf/urgent improvements and fixes:
>
> - Fixes dealing with the removal of the fallback to looking up samples
> marked as userspace in the kernel maps, done recently:
>
> - For intel-pt, that was setting the synthesized header misc field
> as PERF_RECORD_MISC_USER, depending thus on the fallback to take
> place, now it sets as USER or KERNEL according to x86 specific
> knowledge. Also now it inserts the PERF_CONTEXT_{USER,KERNEL} into
> the PERF_SAMPLE_CALLCHAINs it synthesizes from hw traces (Adrian Hunter)
>
> - Similar fixes for the cs-etm ARM HW trace code, that used the Intel PT
> model as a starting point (Leo Yan)
>
> - For the "caller" callchain order, where the callchain returned by the
> kernel was simply reversed without taking into account the
> PERF_CONTEXT_{USER,KERNEL,etc} markers from where to define if an entry
> was for kernel or userspace, working just because the map lookup fallback
> was in place (David S. Miller)
>
> - Allow for selecting if 'overwrite' mode should be used in 'perf top' and
> make the default for it not to be used. This is due to problems with the
> current implementation where the pausing used ends up making 'perf top'
> miss PERF_RECORD_{MMAP,FORK,EXEC,etc} events, which with short lifetime
> threads workloads leads quickly to many "unknown" maps (and thus symbols)
> to appear in the UI. Workloads with long thread lifetimes and with few
> metadata events can still use --overwrite to take advantage of the
> overwrite mode (Arnaldo Carvalho de Melo)
>
> - Start 'perf top''s display thread earlier, so that the screen doesn't
> remain blank for too long at tool start (David S. Miller)
>
> - Don't clone maps from parent when synthesizing forks, to avoid the inevitable
> flurry of overlapping maps as we process the synthesized MMAP2 events that get
> delivered shortly thereafter. (David S. Miller)
>
> - Take pgoff into account when reporting elf to libdwfl, now the unwinding
> results are the same with elfutils's libdwfl and libunwind (Milian Wolff)
>
> - Update lotsa kernel ABI headers (Arnaldo Carvalho de Melo)
>
> - 'perf trace' syscall arg beautification improvements to allow for
> handling args such as mount's 'flags', where maks have to be ignored
> before considering what is left, that, if only zeroes, is suppressed
> like other args without such masks (Arnaldo Carvalho de Melo)
>
> - Beautify mount's 'source' and 'flags' args (Arnaldo Carvalho de Melo)
>
> - Generate mmap's flags bit constants from linux/mman.h and all the
> arch specific mman.h files, so that no changes in the main 'perf trace'
> source files is required when new flags get added (Arnaldo Carvalho de Melo)
>
> - Consider syscall aliases, so that 'perf trace -e umount' works and we don't
> have to use 'umount2' (that works as well, just not required) (Arnaldo Carvalho de Melo)
>
> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
>
> ----------------------------------------------------------------
> Adrian Hunter (2):
> perf intel-pt: Insert callchain context into synthesized callchains
> perf intel-pt/bts: Calculate cpumode for synthesized samples
>
> Arnaldo Carvalho de Melo (21):
> tools include uapi: Grab a copy of linux/fs.h
> perf beauty: Add a generator for MS_ mount/umount's flag constants
> perf beauty: Switch from GPL v2.0 to LGPL v2.1
> perf beauty: Introduce strarray__scnprintf_flags()
> perf trace beauty: Allow syscalls to mask an argument before considering it
> perf trace beauty: Beautify mount/umount's 'flags' argument
> perf trace: Consider syscall aliases too
> perf trace: Beautify the umount's 'name' argument
> perf trace: Beautify mount's first pathname arg
> perf top: Allow disabling the overwrite mode
> perf top: Do not use overwrite mode by default
> tools include uapi: Update linux/fs.h copy
> tools arch uapi: Update asm-generic/unistd.h and arm64 unistd.h copies
> tools include uapi: Update asound.h copy
> perf beauty: Add a generator for MAP_ mmap's flag constants
> perf beauty: Wire up the mmap flags table generator to the Makefile
> perf trace beauty: Use the mmap flags table generated from headers
> tools include uapi: Update linux/mmap.h copy
> tools headers: Sync the various kvm.h header copies
> tools headers uapi: Update linux/netlink.h header copy
> tools headers uapi: Update linux/if_link.h header copy
>
> David Miller (2):
> perf top: Start display thread earlier
> perf tools: Don't clone maps from parent when synthesizing forks
>
> David S. Miller (1):
> perf callchain: Honour the ordering of PERF_CONTEXT_{USER,KERNEL,etc}
>
> Leo Yan (1):
> perf cs-etm: Correct CPU mode for samples
>
> Milian Wolff (1):
> perf unwind: Take pgoff into account when reporting elf to libdwfl
>
> include/uapi/linux/perf_event.h | 2 +
> tools/arch/arm64/include/uapi/asm/unistd.h | 1 +
> tools/arch/powerpc/include/uapi/asm/kvm.h | 1 +
> tools/arch/s390/include/uapi/asm/kvm.h | 2 +
> tools/arch/x86/include/uapi/asm/kvm.h | 6 +-
> tools/include/uapi/asm-generic/unistd.h | 2 +
> tools/include/uapi/linux/fs.h | 393 +++++++++++++++++++++
> tools/include/uapi/linux/if_link.h | 1 +
> tools/include/uapi/linux/kvm.h | 21 +-
> tools/include/uapi/linux/mman.h | 2 +
> tools/include/uapi/linux/netlink.h | 1 +
> tools/include/uapi/linux/perf_event.h | 2 +
> tools/include/uapi/sound/asound.h | 2 +-
> tools/perf/Documentation/perf-top.txt | 10 +
> tools/perf/Makefile.perf | 19 +
> tools/perf/builtin-top.c | 21 +-
> tools/perf/builtin-trace.c | 48 ++-
> tools/perf/check-headers.sh | 1 +
> tools/perf/trace/beauty/Build | 1 +
> tools/perf/trace/beauty/beauty.h | 7 +
> tools/perf/trace/beauty/clone.c | 3 +-
> tools/perf/trace/beauty/drm_ioctl.sh | 1 +
> tools/perf/trace/beauty/eventfd.c | 2 +-
> tools/perf/trace/beauty/fcntl.c | 3 +-
> tools/perf/trace/beauty/flock.c | 2 +-
> tools/perf/trace/beauty/futex_op.c | 2 +-
> tools/perf/trace/beauty/futex_val3.c | 2 +-
> tools/perf/trace/beauty/ioctl.c | 3 +-
> tools/perf/trace/beauty/kcmp.c | 3 +-
> tools/perf/trace/beauty/kcmp_type.sh | 1 +
> tools/perf/trace/beauty/kvm_ioctl.sh | 1 +
> tools/perf/trace/beauty/madvise_behavior.sh | 1 +
> tools/perf/trace/beauty/mmap.c | 50 +--
> tools/perf/trace/beauty/mmap_flags.sh | 32 ++
> tools/perf/trace/beauty/mode_t.c | 2 +-
> tools/perf/trace/beauty/mount_flags.c | 43 +++
> tools/perf/trace/beauty/mount_flags.sh | 15 +
> tools/perf/trace/beauty/msg_flags.c | 2 +-
> tools/perf/trace/beauty/open_flags.c | 2 +-
> tools/perf/trace/beauty/perf_event_open.c | 2 +-
> tools/perf/trace/beauty/perf_ioctl.sh | 1 +
> tools/perf/trace/beauty/pid.c | 3 +-
> tools/perf/trace/beauty/pkey_alloc.c | 30 +-
> .../perf/trace/beauty/pkey_alloc_access_rights.sh | 1 +
> tools/perf/trace/beauty/prctl.c | 3 +-
> tools/perf/trace/beauty/prctl_option.sh | 1 +
> tools/perf/trace/beauty/sched_policy.c | 2 +-
> tools/perf/trace/beauty/seccomp.c | 2 +-
> tools/perf/trace/beauty/signum.c | 2 +-
> tools/perf/trace/beauty/sndrv_ctl_ioctl.sh | 1 +
> tools/perf/trace/beauty/sndrv_pcm_ioctl.sh | 1 +
> tools/perf/trace/beauty/sockaddr.c | 2 +-
> tools/perf/trace/beauty/socket.c | 2 +-
> tools/perf/trace/beauty/socket_ipproto.sh | 1 +
> tools/perf/trace/beauty/socket_type.c | 2 +-
> tools/perf/trace/beauty/statx.c | 3 +-
> tools/perf/trace/beauty/vhost_virtio_ioctl.sh | 1 +
> tools/perf/trace/beauty/waitid_options.c | 2 +-
> tools/perf/util/cs-etm.c | 39 +-
> tools/perf/util/event.c | 1 +
> tools/perf/util/intel-bts.c | 17 +-
> tools/perf/util/intel-pt.c | 28 +-
> tools/perf/util/machine.c | 54 ++-
> tools/perf/util/thread-stack.c | 44 ++-
> tools/perf/util/thread-stack.h | 2 +-
> tools/perf/util/thread.c | 13 +-
> tools/perf/util/thread.h | 2 +-
> tools/perf/util/unwind-libdw.c | 4 +-
> 68 files changed, 837 insertions(+), 142 deletions(-)
> create mode 100644 tools/include/uapi/linux/fs.h
> create mode 100755 tools/perf/trace/beauty/mmap_flags.sh
> create mode 100644 tools/perf/trace/beauty/mount_flags.c
> create mode 100755 tools/perf/trace/beauty/mount_flags.sh
Pulled, thanks a lot Arnaldo!
Ingo
WARNING: multiple messages have this Message-ID (diff)
From: Ingo Molnar <mingo@kernel.org>
To: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: Clark Williams <williams@redhat.com>,
linux-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org,
Adrian Hunter <adrian.hunter@intel.com>,
Alexander Shishkin <alexander.shishkin@linux.intel.com>,
Alexei Starovoitov <ast@kernel.org>,
Andi Kleen <ak@linux.intel.com>,
Anshuman Khandual <anshuman.khandual@arm.com>,
Arnd Bergmann <arnd@arndb.de>,
Benjamin Peterson <benjamin@python.org>,
coresight@lists.linaro.org, David Ahern <dsahern@gmail.com>,
"David S . Miller" <davem@davemloft.net>,
Don Zickus <dzickus@redhat.com>, Eric Leblond <eric@regit.org>,
Geert Uytterhoeven <geert@linux-m68k.org>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Herbert Xu <herbert@gondor.apana.org.au>,
"Jason A . Donenfeld" <Jason@zx2c4.com>,
Jin Yao <yao.jin@linux.intel.com>, Jiri Olsa <jolsa@redhat.com>,
Joe Mario <jmario@redhat.com>, Kan Liang <kan.liang@intel.com>,
Kim Phillips <kim.phillips@arm.com>, Leo Yan <leo.yan@linaro.org>,
linux-arm-kernel@lists.infradead.org,
Mathieu Poirier <mathieu.poirier@linaro.org>,
Milian Wolff <milian.wolff@kdab.com>,
Namhyung Kim <namhyung@kernel.org>,
Nikolay Aleksandrov <nikolay@cumulusnetworks.com>,
Peter Zijlstra <peterz@infradead.org>,
Souvik Banerjee <souvik1997@gmail.com>,
Takashi Iwai <tiwai@suse.de>,
Takashi Sakamoto <o-takashi@sakamocchi.jp>,
Wang Nan <wangnan0@huawei.com>,
Arnaldo Carvalho de Melo <acme@redhat.com>
Subject: Re: [GIT PULL 00/24] perf/urgent improvements and fixes
Date: Wed, 31 Oct 2018 22:56:01 +0100 [thread overview]
Message-ID: <20181031215601.GA3843@gmail.com> (raw)
In-Reply-To: <20181031164508.4784-1-acme@kernel.org>
* Arnaldo Carvalho de Melo <acme@kernel.org> wrote:
> Hi Ingo,
>
> Please consider pulling, next ones should be concentrating just
> on bug fixes, been busy with some, so some were left in the queue,
> flushing them now.
>
> - Arnaldo
>
> Test results at the end of this message, as usual.
>
> The following changes since commit 28fa741c27e6d57f6bf594ba3c444ce79e671e09:
>
> perf/core: Clean up inconsisent indentation (2018-10-30 09:51:58 +0100)
>
> are available in the Git repository at:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git tags/perf-urgent-for-mingo-4.20-20181031
>
> for you to fetch changes up to 5d4f0edaa3ac4f1844ed7c64cd2bae6f1912bac5:
>
> perf intel-pt/bts: Calculate cpumode for synthesized samples (2018-10-31 12:56:26 -0300)
>
> ----------------------------------------------------------------
> perf/urgent improvements and fixes:
>
> - Fixes dealing with the removal of the fallback to looking up samples
> marked as userspace in the kernel maps, done recently:
>
> - For intel-pt, that was setting the synthesized header misc field
> as PERF_RECORD_MISC_USER, depending thus on the fallback to take
> place, now it sets as USER or KERNEL according to x86 specific
> knowledge. Also now it inserts the PERF_CONTEXT_{USER,KERNEL} into
> the PERF_SAMPLE_CALLCHAINs it synthesizes from hw traces (Adrian Hunter)
>
> - Similar fixes for the cs-etm ARM HW trace code, that used the Intel PT
> model as a starting point (Leo Yan)
>
> - For the "caller" callchain order, where the callchain returned by the
> kernel was simply reversed without taking into account the
> PERF_CONTEXT_{USER,KERNEL,etc} markers from where to define if an entry
> was for kernel or userspace, working just because the map lookup fallback
> was in place (David S. Miller)
>
> - Allow for selecting if 'overwrite' mode should be used in 'perf top' and
> make the default for it not to be used. This is due to problems with the
> current implementation where the pausing used ends up making 'perf top'
> miss PERF_RECORD_{MMAP,FORK,EXEC,etc} events, which with short lifetime
> threads workloads leads quickly to many "unknown" maps (and thus symbols)
> to appear in the UI. Workloads with long thread lifetimes and with few
> metadata events can still use --overwrite to take advantage of the
> overwrite mode (Arnaldo Carvalho de Melo)
>
> - Start 'perf top''s display thread earlier, so that the screen doesn't
> remain blank for too long at tool start (David S. Miller)
>
> - Don't clone maps from parent when synthesizing forks, to avoid the inevitable
> flurry of overlapping maps as we process the synthesized MMAP2 events that get
> delivered shortly thereafter. (David S. Miller)
>
> - Take pgoff into account when reporting elf to libdwfl, now the unwinding
> results are the same with elfutils's libdwfl and libunwind (Milian Wolff)
>
> - Update lotsa kernel ABI headers (Arnaldo Carvalho de Melo)
>
> - 'perf trace' syscall arg beautification improvements to allow for
> handling args such as mount's 'flags', where maks have to be ignored
> before considering what is left, that, if only zeroes, is suppressed
> like other args without such masks (Arnaldo Carvalho de Melo)
>
> - Beautify mount's 'source' and 'flags' args (Arnaldo Carvalho de Melo)
>
> - Generate mmap's flags bit constants from linux/mman.h and all the
> arch specific mman.h files, so that no changes in the main 'perf trace'
> source files is required when new flags get added (Arnaldo Carvalho de Melo)
>
> - Consider syscall aliases, so that 'perf trace -e umount' works and we don't
> have to use 'umount2' (that works as well, just not required) (Arnaldo Carvalho de Melo)
>
> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
>
> ----------------------------------------------------------------
> Adrian Hunter (2):
> perf intel-pt: Insert callchain context into synthesized callchains
> perf intel-pt/bts: Calculate cpumode for synthesized samples
>
> Arnaldo Carvalho de Melo (21):
> tools include uapi: Grab a copy of linux/fs.h
> perf beauty: Add a generator for MS_ mount/umount's flag constants
> perf beauty: Switch from GPL v2.0 to LGPL v2.1
> perf beauty: Introduce strarray__scnprintf_flags()
> perf trace beauty: Allow syscalls to mask an argument before considering it
> perf trace beauty: Beautify mount/umount's 'flags' argument
> perf trace: Consider syscall aliases too
> perf trace: Beautify the umount's 'name' argument
> perf trace: Beautify mount's first pathname arg
> perf top: Allow disabling the overwrite mode
> perf top: Do not use overwrite mode by default
> tools include uapi: Update linux/fs.h copy
> tools arch uapi: Update asm-generic/unistd.h and arm64 unistd.h copies
> tools include uapi: Update asound.h copy
> perf beauty: Add a generator for MAP_ mmap's flag constants
> perf beauty: Wire up the mmap flags table generator to the Makefile
> perf trace beauty: Use the mmap flags table generated from headers
> tools include uapi: Update linux/mmap.h copy
> tools headers: Sync the various kvm.h header copies
> tools headers uapi: Update linux/netlink.h header copy
> tools headers uapi: Update linux/if_link.h header copy
>
> David Miller (2):
> perf top: Start display thread earlier
> perf tools: Don't clone maps from parent when synthesizing forks
>
> David S. Miller (1):
> perf callchain: Honour the ordering of PERF_CONTEXT_{USER,KERNEL,etc}
>
> Leo Yan (1):
> perf cs-etm: Correct CPU mode for samples
>
> Milian Wolff (1):
> perf unwind: Take pgoff into account when reporting elf to libdwfl
>
> include/uapi/linux/perf_event.h | 2 +
> tools/arch/arm64/include/uapi/asm/unistd.h | 1 +
> tools/arch/powerpc/include/uapi/asm/kvm.h | 1 +
> tools/arch/s390/include/uapi/asm/kvm.h | 2 +
> tools/arch/x86/include/uapi/asm/kvm.h | 6 +-
> tools/include/uapi/asm-generic/unistd.h | 2 +
> tools/include/uapi/linux/fs.h | 393 +++++++++++++++++++++
> tools/include/uapi/linux/if_link.h | 1 +
> tools/include/uapi/linux/kvm.h | 21 +-
> tools/include/uapi/linux/mman.h | 2 +
> tools/include/uapi/linux/netlink.h | 1 +
> tools/include/uapi/linux/perf_event.h | 2 +
> tools/include/uapi/sound/asound.h | 2 +-
> tools/perf/Documentation/perf-top.txt | 10 +
> tools/perf/Makefile.perf | 19 +
> tools/perf/builtin-top.c | 21 +-
> tools/perf/builtin-trace.c | 48 ++-
> tools/perf/check-headers.sh | 1 +
> tools/perf/trace/beauty/Build | 1 +
> tools/perf/trace/beauty/beauty.h | 7 +
> tools/perf/trace/beauty/clone.c | 3 +-
> tools/perf/trace/beauty/drm_ioctl.sh | 1 +
> tools/perf/trace/beauty/eventfd.c | 2 +-
> tools/perf/trace/beauty/fcntl.c | 3 +-
> tools/perf/trace/beauty/flock.c | 2 +-
> tools/perf/trace/beauty/futex_op.c | 2 +-
> tools/perf/trace/beauty/futex_val3.c | 2 +-
> tools/perf/trace/beauty/ioctl.c | 3 +-
> tools/perf/trace/beauty/kcmp.c | 3 +-
> tools/perf/trace/beauty/kcmp_type.sh | 1 +
> tools/perf/trace/beauty/kvm_ioctl.sh | 1 +
> tools/perf/trace/beauty/madvise_behavior.sh | 1 +
> tools/perf/trace/beauty/mmap.c | 50 +--
> tools/perf/trace/beauty/mmap_flags.sh | 32 ++
> tools/perf/trace/beauty/mode_t.c | 2 +-
> tools/perf/trace/beauty/mount_flags.c | 43 +++
> tools/perf/trace/beauty/mount_flags.sh | 15 +
> tools/perf/trace/beauty/msg_flags.c | 2 +-
> tools/perf/trace/beauty/open_flags.c | 2 +-
> tools/perf/trace/beauty/perf_event_open.c | 2 +-
> tools/perf/trace/beauty/perf_ioctl.sh | 1 +
> tools/perf/trace/beauty/pid.c | 3 +-
> tools/perf/trace/beauty/pkey_alloc.c | 30 +-
> .../perf/trace/beauty/pkey_alloc_access_rights.sh | 1 +
> tools/perf/trace/beauty/prctl.c | 3 +-
> tools/perf/trace/beauty/prctl_option.sh | 1 +
> tools/perf/trace/beauty/sched_policy.c | 2 +-
> tools/perf/trace/beauty/seccomp.c | 2 +-
> tools/perf/trace/beauty/signum.c | 2 +-
> tools/perf/trace/beauty/sndrv_ctl_ioctl.sh | 1 +
> tools/perf/trace/beauty/sndrv_pcm_ioctl.sh | 1 +
> tools/perf/trace/beauty/sockaddr.c | 2 +-
> tools/perf/trace/beauty/socket.c | 2 +-
> tools/perf/trace/beauty/socket_ipproto.sh | 1 +
> tools/perf/trace/beauty/socket_type.c | 2 +-
> tools/perf/trace/beauty/statx.c | 3 +-
> tools/perf/trace/beauty/vhost_virtio_ioctl.sh | 1 +
> tools/perf/trace/beauty/waitid_options.c | 2 +-
> tools/perf/util/cs-etm.c | 39 +-
> tools/perf/util/event.c | 1 +
> tools/perf/util/intel-bts.c | 17 +-
> tools/perf/util/intel-pt.c | 28 +-
> tools/perf/util/machine.c | 54 ++-
> tools/perf/util/thread-stack.c | 44 ++-
> tools/perf/util/thread-stack.h | 2 +-
> tools/perf/util/thread.c | 13 +-
> tools/perf/util/thread.h | 2 +-
> tools/perf/util/unwind-libdw.c | 4 +-
> 68 files changed, 837 insertions(+), 142 deletions(-)
> create mode 100644 tools/include/uapi/linux/fs.h
> create mode 100755 tools/perf/trace/beauty/mmap_flags.sh
> create mode 100644 tools/perf/trace/beauty/mount_flags.c
> create mode 100755 tools/perf/trace/beauty/mount_flags.sh
Pulled, thanks a lot Arnaldo!
Ingo
next prev parent reply other threads:[~2018-10-31 21:56 UTC|newest]
Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-10-31 16:44 [GIT PULL 00/24] perf/urgent improvements and fixes Arnaldo Carvalho de Melo
2018-10-31 16:44 ` Arnaldo Carvalho de Melo
2018-10-31 16:44 ` Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 01/28] tools include uapi: Grab a copy of linux/fs.h Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 02/28] perf beauty: Add a generator for MS_ mount/umount's flag constants Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 03/28] perf beauty: Switch from GPL v2.0 to LGPL v2.1 Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 04/28] perf beauty: Introduce strarray__scnprintf_flags() Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 05/28] perf trace beauty: Allow syscalls to mask an argument before considering it Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 06/28] perf trace beauty: Beautify mount/umount's 'flags' argument Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 07/28] perf trace: Consider syscall aliases too Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 08/28] perf trace: Beautify the umount's 'name' argument Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 09/28] perf trace: Beautify mount's first pathname arg Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 10/28] perf top: Allow disabling the overwrite mode Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 11/28] perf top: Do not use overwrite mode by default Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 12/28] perf unwind: Take pgoff into account when reporting elf to libdwfl Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 13/28] perf cs-etm: Correct CPU mode for samples Arnaldo Carvalho de Melo
2018-10-31 16:44 ` Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 14/28] perf callchain: Honour the ordering of PERF_CONTEXT_{USER,KERNEL,etc} Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 15/28] tools include uapi: Update linux/fs.h copy Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 16/28] tools arch uapi: Update asm-generic/unistd.h and arm64 unistd.h copies Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 17/28] tools include uapi: Update asound.h copy Arnaldo Carvalho de Melo
2018-10-31 17:00 ` Takashi Iwai
2018-10-31 17:27 ` Joe Perches
2018-10-31 18:32 ` Takashi Iwai
2018-10-31 19:29 ` Arnaldo Carvalho de Melo
2018-11-01 11:54 ` Takashi Sakamoto
2018-11-01 13:04 ` Arnaldo Carvalho de Melo
2018-11-01 13:57 ` Takashi Sakamoto
2018-10-31 19:28 ` Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 18/28] perf beauty: Add a generator for MAP_ mmap's flag constants Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 19/28] perf beauty: Wire up the mmap flags table generator to the Makefile Arnaldo Carvalho de Melo
2018-11-05 15:44 ` Guenter Roeck
2018-11-05 17:11 ` Arnaldo Carvalho de Melo
2018-11-05 18:46 ` Arnaldo Carvalho de Melo
2018-11-05 19:13 ` Arnaldo Carvalho de Melo
2018-11-05 21:18 ` Guenter Roeck
2018-11-06 19:18 ` [tip:perf/urgent] perf beauty: Use SRCARCH, ARCH=x86_64 must map to "x86" to find the headers tip-bot for Arnaldo Carvalho de Melo
2018-10-31 16:45 ` [PATCH 20/28] perf trace beauty: Use the mmap flags table generated from headers Arnaldo Carvalho de Melo
2018-10-31 16:45 ` [PATCH 21/28] tools include uapi: Update linux/mmap.h copy Arnaldo Carvalho de Melo
2018-10-31 16:45 ` [PATCH 22/28] tools headers: Sync the various kvm.h header copies Arnaldo Carvalho de Melo
2018-10-31 16:45 ` [PATCH 23/28] tools headers uapi: Update linux/netlink.h header copy Arnaldo Carvalho de Melo
2018-10-31 16:45 ` [PATCH 24/28] tools headers uapi: Update linux/if_link.h " Arnaldo Carvalho de Melo
2018-10-31 16:45 ` [PATCH 25/28] perf top: Start display thread earlier Arnaldo Carvalho de Melo
2018-10-31 16:45 ` [PATCH 26/28] perf tools: Don't clone maps from parent when synthesizing forks Arnaldo Carvalho de Melo
2018-10-31 16:45 ` [PATCH 27/28] perf intel-pt: Insert callchain context into synthesized callchains Arnaldo Carvalho de Melo
2018-10-31 16:45 ` [PATCH 28/28] perf intel-pt/bts: Calculate cpumode for synthesized samples Arnaldo Carvalho de Melo
2018-10-31 21:56 ` Ingo Molnar [this message]
2018-10-31 21:56 ` [GIT PULL 00/24] perf/urgent improvements and fixes Ingo Molnar
2018-10-31 21:56 ` Ingo Molnar
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20181031215601.GA3843@gmail.com \
--to=mingo@kernel.org \
--cc=Jason@zx2c4.com \
--cc=acme@kernel.org \
--cc=adrian.hunter@intel.com \
--cc=ak@linux.intel.com \
--cc=alexander.shishkin@linux.intel.com \
--cc=anshuman.khandual@arm.com \
--cc=arnd@arndb.de \
--cc=ast@kernel.org \
--cc=benjamin@python.org \
--cc=coresight@lists.linaro.org \
--cc=davem@davemloft.net \
--cc=dsahern@gmail.com \
--cc=dzickus@redhat.com \
--cc=eric@regit.org \
--cc=geert@linux-m68k.org \
--cc=gregkh@linuxfoundation.org \
--cc=herbert@gondor.apana.org.au \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-perf-users@vger.kernel.org \
--cc=williams@redhat.com \
--cc=yao.jin@linux.intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.