[GIT PULL] perf updates/fixes
Linus, Please pull the latest perf-urgent-for-linus git tree from: git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git perf-urgent-for-linus # HEAD: 29995d296e3e9ce4f9767963ecbef143ade26c36 Merge tag 'perf-urgent-for-mingo-4.20-20181031' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/urgent These are almost all tooling updates: 'perf top', 'perf trace' and 'perf script' fixes and updates, an UAPI header sync with the merge window versions, license marker updates, much improved Sparc support from David Miller, and a number of fixes. Thanks, Ingo --> Adrian Hunter (19): perf scripts python: call-graph-from-sql.py: Use SPDX license identifier perf scripts python: call-graph-from-sql.py: Provide better default column sizes perf scripts python: call-graph-from-sql.py: Set a minimum window size perf scripts python: call-graph-from-sql.py: Change icon perf scripts python: call-graph-from-sql.py: Make a "Main" function perf scripts python: call-graph-from-sql.py: Separate the database details into a class perf scripts python: call-graph-from-sql.py: Add a class for global data perf scripts python: call-graph-from-sql.py: Remove use of setObjectName() perf scripts python: call-graph-from-sql.py: Factor out CallGraphModel from TreeModel perf scripts python: call-graph-from-sql.py: Add data helper functions perf scripts python: call-graph-from-sql.py: Refactor TreeItem class perf scripts python: call-graph-from-sql.py: Rename to exported-sql-viewer.py perf scripts python: exported-sql-viewer.py: Add support for multiple sub-windows perf scripts python: exported-sql-viewer.py: Add ability to find symbols in the call-graph perf scripts python: exported-sql-viewer.py: Add ability to shrink / enlarge font perf scripts python: exported-sql-viewer.py: Add ability to display all the database tables perf scripts python: exported-sql-viewer.py: Add All branches report perf intel-pt: Insert callchain context into synthesized callchains perf intel-pt/bts: Calculate cpumode for synthesized samples Alexey Budankov (1): perf record: Encode -k clockid frequency into Perf trace Andi Kleen (5): perf script: Add --insn-trace for instruction decoding perf script: Make itrace script default to all calls tools script: Add --call-trace and --call-ret-trace perf script: Implement --graph-function perf script: Support total cycles count Arnaldo Carvalho de Melo (28): tools lib subcmd: Introduce OPTION_ULONG perf trace: Introduce --max-events perf evsel: Introduce per event max_events property perf evsel: Mark a evsel as disabled when asking the kernel do disable it perf trace: Drop addr_location refcounts perf trace: Drop thread refcount in trace__event_handler() perf trace: Introduce per-event maximum number of events property 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 Colin Ian King (1): perf/core: Clean up inconsisent indentation David Miller (5): perf annotate: Add Sparc support perf jitdump: Add Sparc support. perf symbols: Set PLT entry/header sizes properly on Sparc 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} Hongxu Jia (1): perf arm64: Fix generate system call table failed with /tmp mounted with noexec Jiri Olsa (1): perf stat: Poll for monitored tasks being alive Leo Yan (1): perf cs-etm: Correct CPU mode for samples Milian Wolff (3): perf scrip
Re: [GIT PULL] perf updates/fixes
* Ingo Molnar wrote: > Linus, > > Please pull the latest perf-urgent-for-linus git tree from: > >git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git > perf-urgent-for-linus > >HEAD: 95cf59ea72331d0093010543b8951bb43f262cac perf: Fix > perf_cgroup_switch for sw-events Note that if you merge it then there's a new semantic conflict with recent rbtree.c changes in your tree, causing a tools/perf/ build failure: ../../lib/rbtree.c:24:36: fatal error: linux/rbtree_augmented.h: No such file or directory compilation terminated. See the fix below. ( If the __maybe_unused annotations are too ugly for lib/rbtree.c then we'll fix that in tools/perf in a cleaner way, weakening the compiler checks for the rbtree build. We are using stronger compiler checks in tools/perf/, which has served us very well so far and is a big net win - the price is the occasional extra annotation of dummy inline function parameters. ) Thanks, Ingo Signed-off-by: Ingo Molnar --- lib/rbtree.c | 7 --- tools/perf/util/include/linux/rbtree_augmented.h | 2 ++ 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/lib/rbtree.c b/lib/rbtree.c index 4f56a11..993ffcb 100644 --- a/lib/rbtree.c +++ b/lib/rbtree.c @@ -22,6 +22,7 @@ */ #include +#include #include /* @@ -364,9 +365,9 @@ EXPORT_SYMBOL(__rb_erase_color); * out of the rb_insert_color() and rb_erase() function definitions. */ -static inline void dummy_propagate(struct rb_node *node, struct rb_node *stop) {} -static inline void dummy_copy(struct rb_node *old, struct rb_node *new) {} -static inline void dummy_rotate(struct rb_node *old, struct rb_node *new) {} +static inline void dummy_propagate(struct rb_node *node __maybe_unused, struct rb_node *stop __maybe_unused) {} +static inline void dummy_copy(struct rb_node *old __maybe_unused, struct rb_node *new __maybe_unused) {} +static inline void dummy_rotate(struct rb_node *old __maybe_unused, struct rb_node *new __maybe_unused) {} static const struct rb_augment_callbacks dummy_callbacks = { dummy_propagate, dummy_copy, dummy_rotate diff --git a/tools/perf/util/include/linux/rbtree_augmented.h b/tools/perf/util/include/linux/rbtree_augmented.h new file mode 100644 index 000..9d6fcdf --- /dev/null +++ b/tools/perf/util/include/linux/rbtree_augmented.h @@ -0,0 +1,2 @@ +#include +#include "../../../../include/linux/rbtree_augmented.h" -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [GIT PULL] perf updates/fixes
On Fri, Oct 12, 2012 at 10:39:26AM +0200, Ingo Molnar wrote: > > * Ingo Molnar wrote: > > > Linus, > > > > Please pull the latest perf-urgent-for-linus git tree from: > > > >git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git > > perf-urgent-for-linus > > > >HEAD: 95cf59ea72331d0093010543b8951bb43f262cac perf: Fix > > perf_cgroup_switch for sw-events > > Note that if you merge it then there's a new semantic conflict > with recent rbtree.c changes in your tree, causing a tools/perf/ > build failure: > > ../../lib/rbtree.c:24:36: fatal error: linux/rbtree_augmented.h: No such file > or directory compilation terminated. > > See the fix below. > > ( If the __maybe_unused annotations are too ugly for > lib/rbtree.c then we'll fix that in tools/perf in a cleaner > way, weakening the compiler checks for the rbtree build. We > are using stronger compiler checks in tools/perf/, which has > served us very well so far and is a big net win - the price is > the occasional extra annotation of dummy inline function > parameters. ) Btw, Markus fixed it that way recently: http://marc.info/?l=linux-kernel&m=134980573527738 by adding the -Wno-unused-parameter switch only to lib/rbtree.o when built from within perf. I see now though that his patch has some unrelated changes to trace-event-perl.c's permissions which shouldn't be there. -- Regards/Gruss, Boris. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [GIT PULL] perf updates/fixes
* Borislav Petkov wrote: > On Fri, Oct 12, 2012 at 10:39:26AM +0200, Ingo Molnar wrote: > > > > * Ingo Molnar wrote: > > > > > Linus, > > > > > > Please pull the latest perf-urgent-for-linus git tree from: > > > > > >git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git > > > perf-urgent-for-linus > > > > > >HEAD: 95cf59ea72331d0093010543b8951bb43f262cac perf: Fix > > > perf_cgroup_switch for sw-events > > > > Note that if you merge it then there's a new semantic conflict > > with recent rbtree.c changes in your tree, causing a tools/perf/ > > build failure: > > > > ../../lib/rbtree.c:24:36: fatal error: linux/rbtree_augmented.h: No such > > file or directory compilation terminated. > > > > See the fix below. > > > > ( If the __maybe_unused annotations are too ugly for > > lib/rbtree.c then we'll fix that in tools/perf in a cleaner > > way, weakening the compiler checks for the rbtree build. We > > are using stronger compiler checks in tools/perf/, which has > > served us very well so far and is a big net win - the price is > > the occasional extra annotation of dummy inline function > > parameters. ) > > Btw, > > Markus fixed it that way recently: > > http://marc.info/?l=linux-kernel&m=134980573527738 > > by adding the -Wno-unused-parameter switch only to lib/rbtree.o when > built from within perf. > > I see now though that his patch has some unrelated changes to > trace-event-perl.c's permissions which shouldn't be there. Yes, that final hunk should be removed. Other than that, Markus's solution is fine to me too: Acked-by: Ingo Molnar Thanks, Ingo -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [GIT PULL] perf updates/fixes
On 2012.10.12 at 11:08 +0200, Borislav Petkov wrote: > On Fri, Oct 12, 2012 at 10:39:26AM +0200, Ingo Molnar wrote: > > > > * Ingo Molnar wrote: > > > > > Linus, > > > > > > Please pull the latest perf-urgent-for-linus git tree from: > > > > > >git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git > > > perf-urgent-for-linus > > > > > >HEAD: 95cf59ea72331d0093010543b8951bb43f262cac perf: Fix > > > perf_cgroup_switch for sw-events > > > > Note that if you merge it then there's a new semantic conflict > > with recent rbtree.c changes in your tree, causing a tools/perf/ > > build failure: > > > > ../../lib/rbtree.c:24:36: fatal error: linux/rbtree_augmented.h: No such > > file or directory compilation terminated. > > > > See the fix below. > > > > ( If the __maybe_unused annotations are too ugly for > > lib/rbtree.c then we'll fix that in tools/perf in a cleaner > > way, weakening the compiler checks for the rbtree build. We > > are using stronger compiler checks in tools/perf/, which has > > served us very well so far and is a big net win - the price is > > the occasional extra annotation of dummy inline function > > parameters. ) > > Btw, > > Markus fixed it that way recently: > > http://marc.info/?l=linux-kernel&m=134980573527738 > > by adding the -Wno-unused-parameter switch only to lib/rbtree.o when > built from within perf. > > I see now though that his patch has some unrelated changes to > trace-event-perl.c's permissions which shouldn't be there. Yes that was part of a different issue: CC util/scripting-engines/trace-event-perl.o util/scripting-engines/trace-event-perl.c: In function ‘perl_process_tracepoint’: util/scripting-engines/trace-event-perl.c:285:3: error: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 2 has type ‘__u64’ [-Werror=format] die("ug! no event found for type %" PRIu64, evsel->attr.config); ^ cc1: all warnings being treated as errors Which I fixed locally like this: diff --git a/tools/perf/util/scripting-engines/trace-event-perl.c b/tools/perf/util/scripting-engines/trace-event-perl.c index f80605e..f53889d 100644 --- a/tools/perf/util/scripting-engines/trace-event-perl.c +++ b/tools/perf/util/scripting-engines/trace-event-perl.c @@ -282,7 +282,7 @@ static void perl_process_tracepoint(union perf_event *perf_event __maybe_unused, event = find_cache_event(evsel); if (!event) - die("ug! no event found for type %" PRIu64, evsel->attr.config); + die("ug! no event found for type %" PRIu64, (unsigned long)evsel->attr.config); pid = raw_field_value(event, "common_pid", data); -- Markus -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [GIT PULL] perf updates/fixes
On Sat, Nov 3, 2018 at 4:03 PM Ingo Molnar wrote: > > These are almost all tooling updates: 'perf top', 'perf trace' and 'perf > script' fixes and updates, an UAPI header sync with the merge window > versions, license marker updates, much improved Sparc support from David > Miller, and a number of fixes. Pulled, Linus