From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756133AbbCCD0Y (ORCPT ); Mon, 2 Mar 2015 22:26:24 -0500 Received: from mail.kernel.org ([198.145.29.136]:43830 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755021AbbCCD0V (ORCPT ); Mon, 2 Mar 2015 22:26:21 -0500 From: Arnaldo Carvalho de Melo To: Ingo Molnar Cc: linux-kernel@vger.kernel.org, Arnaldo Carvalho de Melo , Adrian Hunter , Andi Kleen , Borislav Petkov , David Ahern , Don Zickus , Frederic Weisbecker , He Kuang , "H . Peter Anvin" , Jiri Olsa , Kaixu Xia , Kan Liang , Masami Hiramatsu , Namhyung Kim , Naohiro Aota , Peter Zijlstra , Stephane Eranian , "Suzuki K . Poulose" , Thomas Gleixner , Arnaldo Carvalho de Melo Subject: [GIT PULL 00/20] perf/core improvements and fixes Date: Tue, 3 Mar 2015 00:25:49 -0300 Message-Id: <1425353169-21436-1-git-send-email-acme@kernel.org> X-Mailer: git-send-email 1.9.3 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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 ---------------------------------------------------------------- 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(-)