All of lore.kernel.org
 help / color / mirror / Atom feed
From: Namhyung Kim <namhyung@gmail.com>
To: Peter Zijlstra <peterz@infradead.org>
Cc: Ingo Molnar <mingo@kernel.org>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Arnaldo Carvalho de Melo <acme@infradead.org>,
	linux-kernel@vger.kernel.org,
	Arjan van de Ven <arjan@infradead.org>,
	David Ahern <dsahern@gmail.com>,
	Frederic Weisbecker <fweisbec@gmail.com>,
	Mike Galbraith <efault@gmx.de>, Paul Mackerras <paulus@samba.org>,
	Stephane Eranian <eranian@google.com>,
	arnaldo.melo@gmail.com,
	Arnaldo Carvalho de Melo <acme@redhat.com>
Subject: Re: [GIT PULL 0/8] Annotation weekly ponies delivery
Date: Tue, 15 May 2012 23:44:40 +0900	[thread overview]
Message-ID: <1337093080.1493.22.camel@leonhard> (raw)
In-Reply-To: <1337077973.27694.24.camel@twins>

2012-05-15 (화), 12:32 +0200, Peter Zijlstra:
> On Tue, 2012-05-15 at 00:06 +0900, Namhyung Kim wrote:
> 
> > perf_evlist__config_attrs() has this:
> > 
> > 	if (evlist->cpus->map[0] < 0)
> > 		opts->no_inherit = true;
> > 
> > meaning that per task profiling won't enable event inheritance. I don't
> > know why it's needed though.
> 
> Because you cannot have inherited per-task counters. It only works for
> per-task-per-cpu counters. Otherwise you'll have a scalability
> nightmare.
> 

Got it. So it means that we do need to create an event for each cpu
in order to profile a task (and its children), right? (Originally, I
thought it's a bug :-p)

If so, yes, the commit 55261f46702c ("perf evlist: Fix creation of
cpu map") should be reverted like below (note that target->cpu_list
check no longer needed since perf_target__validate() will handle
those cases). If it looks ok to you guys, I'll send a formal patch
with name changes (to avoid the double negation suggested by Ingo):


diff --git a/tools/perf/util/evlist.c b/tools/perf/util/evlist.c
index 1201daf71719..f6979ba391d1 100644
--- a/tools/perf/util/evlist.c
+++ b/tools/perf/util/evlist.c
@@ -609,10 +609,10 @@ int perf_evlist__create_maps(struct perf_evlist 
 	if (evlist->threads == NULL)
 		return -1;
 
-	if (!perf_target__no_cpu(target))
-		evlist->cpus = cpu_map__new(target->cpu_list);
-	else
+	if (!perf_target__no_task(target))
 		evlist->cpus = cpu_map__dummy_new();
+	else
+		evlist->cpus = cpu_map__new(target->cpu_list);
 
 	if (evlist->cpus == NULL)
 		goto out_delete_threads;



-- 
Regards,
Namhyung Kim



  reply	other threads:[~2012-05-15 14:45 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-05-12 19:52 [GIT PULL 0/8] Annotation weekly ponies delivery Arnaldo Carvalho de Melo
2012-05-12 19:53 ` [PATCH 1/8] perf annotate: Use raw form for register indirect call instructions Arnaldo Carvalho de Melo
2012-05-12 19:53 ` [PATCH 2/8] perf annotate: Resolve symbols using objdump comment Arnaldo Carvalho de Melo
2012-05-12 19:53 ` [PATCH 3/8] perf annotate: Resolve symbols using objdump comment for single op ins Arnaldo Carvalho de Melo
2012-05-12 19:53 ` [PATCH 4/8] perf annotate: Augment lock instruction output Arnaldo Carvalho de Melo
2012-05-12 19:53 ` [PATCH 5/8] perf annotate: Introduce ->free() method in ins_ops Arnaldo Carvalho de Melo
2012-05-12 19:53 ` [PATCH 6/8] perf annotate browser: Count the numbers of jump sources to a target Arnaldo Carvalho de Melo
2012-05-12 19:53 ` [PATCH 7/8] perf annotate browser: Show 'jumpy' functions Arnaldo Carvalho de Melo
2012-05-12 19:53 ` [PATCH 8/8] perf annotate browser: Add key bindings help window Arnaldo Carvalho de Melo
2012-05-12 20:40 ` [GIT PULL 0/8] Annotation weekly ponies delivery Linus Torvalds
2012-05-12 21:25   ` Arnaldo Carvalho de Melo
2012-05-12 22:29     ` Linus Torvalds
2012-05-14  7:05       ` Ingo Molnar
2012-05-14 11:13   ` Peter Zijlstra
2012-05-14 11:55     ` Ingo Molnar
2012-05-14 15:06       ` Namhyung Kim
2012-05-15  4:48         ` Namhyung Kim
2012-05-15 10:32         ` Peter Zijlstra
2012-05-15 14:44           ` Namhyung Kim [this message]
2012-05-15 17:07             ` Peter Zijlstra
2012-05-16  5:57               ` Namhyung Kim
2012-05-16  8:19                 ` Namhyung Kim
2012-05-17  0:13                 ` Namhyung Kim

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=1337093080.1493.22.camel@leonhard \
    --to=namhyung@gmail.com \
    --cc=acme@infradead.org \
    --cc=acme@redhat.com \
    --cc=arjan@infradead.org \
    --cc=arnaldo.melo@gmail.com \
    --cc=dsahern@gmail.com \
    --cc=efault@gmx.de \
    --cc=eranian@google.com \
    --cc=fweisbec@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=paulus@samba.org \
    --cc=peterz@infradead.org \
    --cc=torvalds@linux-foundation.org \
    /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.