Re: [GIT PULL 00/20] perf/core improvements and fixes

From: Ingo Molnar
Date: Tue Mar 03 2015 - 01:20:31 EST



* Arnaldo Carvalho de Melo <acme@xxxxxxxxxx> wrote:

> Hi Ingo,
>
> This one has the thread reference counting, that I tested using 'perf probe':
>
> perf probe -x ~/bin/perf 'thread__delete:4 thread refcnt=thread->refcnt tid=thread->tid'
> perf probe -x ~/bin/perf 'thread__get:1 thread refcnt=thread->refcnt tid=thread->tid'
> perf probe -x ~/bin/perf 'thread__put:6 thread refcnt=thread->refcnt tid=thread->tid'
> perf record -o thread_refcnt.data -g -e probe_perf:thread__put,probe_perf:thread__get_1,probe_perf:thread__delete perf top
>
> with that I checked and in the end the refcount reaches zero and
> thread__delete is called, as expected, using 'perf script', looking at the
> callchains, etc, did the same for 'perf sched lat' and 'trace' also seems to
> work.
>
> David, Namhyung, please holler if you find something fishy with this
> thread refcnt stuff, as it is something that is related to previous/current
> work by you guys,
>
> Ah, I also merged perf/urgent so that it is buildable in more systems.o
>
> There is also the revert for that is_power_of_2 "simplification" in perf_mmap,
> that hasn't made it to perf/urgent nor upstream, its something only in perf/core, sorry
> about that one, should have caught that :-\
>
> Please consider pulling,
>
> - Arnaldo
> The following changes since commit 33be4ef116511f1079c4c3bf4b5547faf7439301:
>
> Merge 'tip/perf/urgent' into perf/core to pick fixes (2015-03-02 11:45:49 -0300)
>
> are available in the git repository at:
>
>
> git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git tags/perf-core-for-mingo
>
> for you to fetch changes up to ae536acfacb65a4a9858c32b12361e09f84f4157:
>
> perf sched: No need to keep the session around (2015-03-03 00:17:12 -0300)
>
> ----------------------------------------------------------------
> perf/core improvements and fixes:
>
> User visible:
>
> - Warn if given uprobe event accesses memory on older kernel (Masami Hiramatsu)
>
> - 'perf record' Documentation fixes (Namhyung Kim)
>
> - Report unsupported events properly in 'perf stat' (Suzuki K. Poulose)
>
> Infrastructure:
>
> - Avoid FORK after COMM when synthesizing records for pre-existing threads (Arnaldo Carvalho de Melo)
>
> - Reference count struct thread (Arnaldo Carvalho de Melo)
>
> - No need to keep the session around in 'perf sched', thread refcounting removes that need (Arnaldo Carvalho de Melo)
>
> - Initialize cpu set in pthread_attr_setaffinity_np feature test (Adrian Hunter)
>
> - Only include tsc file for x86 (David Ahern)
>
> - Compare JOBS to 0 after grep (David Ahern)
>
> - Improve feature detection messages (Ingo Molnar)
>
> - Revert "perf: Remove the extra validity check on nr_pages" (Kan Liang)
>
> - Remove bias offset to find probe point by address (Masami Hiramatsu)
>
> - Fix build error on ARCH=i386/x86_64/sparc64 )Namhyung Kim)
>
> Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
>
> ----------------------------------------------------------------
> Adrian Hunter (1):
> perf tools: Initialize cpu set in pthread_attr_setaffinity_np feature test
>
> Arnaldo Carvalho de Melo (3):
> perf tools: Fix FORK after COMM when synthesizing records for pre-existing threads
> perf tools: Reference count struct thread
> perf sched: No need to keep the session around
>
> David Ahern (2):
> perf tools: Only include tsc file for x86
> perf tools: Compare JOBS to 0 after grep
>
> Ingo Molnar (7):
> perf tools: Add PERF-FEATURES to the .gitignore file
> perf tools: Remove annoying extra message from the features build
> perf tools: Improve Python feature detection messages
> perf tools: Improve libperl detection message
> perf tools: Improve libbfd detection message
> perf tools: Improve feature test debuggability
> perf tools: Improve 'libbabel' feature check failure message
>
> Kan Liang (1):
> Revert "perf: Remove the extra validity check on nr_pages"
>
> Masami Hiramatsu (2):
> perf probe: Warn if given uprobe event accesses memory on older kernel
> perf probe: Remove bias offset to find probe point by address
>
> Namhyung Kim (3):
> perf tools: Fix build error on ARCH=i386/x86_64/sparc64
> perf record: Get rid of -l option from Documentation
> perf record: Document --group option
>
> Suzuki K. Poulose (1):
> perf stat: Report unsupported events properly
>
> kernel/events/core.c | 2 +-
> tools/perf/.gitignore | 1 +
> tools/perf/Documentation/perf-record.txt | 12 ++++--
> tools/perf/Makefile | 2 +-
> tools/perf/builtin-sched.c | 26 +++++--------
> tools/perf/builtin-stat.c | 5 ++-
> tools/perf/builtin-trace.c | 7 +++-
> tools/perf/config/Makefile | 17 ++++-----
> tools/perf/config/Makefile.arch | 27 +++----------
> tools/perf/config/feature-checks/Makefile | 16 ++++----
> .../test-pthread-attr-setaffinity-np.c | 4 +-
> tools/perf/config/utilities.mak | 3 +-
> tools/perf/ui/browsers/hists.c | 6 +--
> tools/perf/util/Build | 2 +-
> tools/perf/util/build-id.c | 5 ++-
> tools/perf/util/event.c | 34 ++++++++++++-----
> tools/perf/util/hist.c | 2 +
> tools/perf/util/hist.h | 2 +-
> tools/perf/util/machine.c | 44 +++++++++++-----------
> tools/perf/util/machine.h | 1 -
> tools/perf/util/probe-event.c | 23 +++++++++++
> tools/perf/util/probe-finder.c | 5 +--
> tools/perf/util/session.c | 6 ---
> tools/perf/util/thread.c | 14 +++++++
> tools/perf/util/thread.h | 13 +++++++
> 25 files changed, 164 insertions(+), 115 deletions(-)

Pulled, thanks a lot Arnaldo!

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/