All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Andi Kleen <andi@firstfloor.org>
Cc: Namhyung Kim <namhyung@kernel.org>,
	Taeung Song <treeze.taeung@gmail.com>,
	linux-kernel@vger.kernel.org,
	Milian Wolff <milian.wolff@kdab.com>,
	Jiri Olsa <jolsa@redhat.com>,
	kernel-team@lge.com
Subject: Re: [PATCH v3 3/9] perf annotate: Fix wrong --show-total-period option showing number of samples
Date: Mon, 24 Jul 2017 14:34:37 -0300	[thread overview]
Message-ID: <20170724173437.GS4134@kernel.org> (raw)
In-Reply-To: <20170723154620.GP3044@two.firstfloor.org>

Em Sun, Jul 23, 2017 at 08:46:20AM -0700, Andi Kleen escreveu:
> On Sun, Jul 23, 2017 at 07:46:05AM +0900, Namhyung Kim wrote:
> > Hi Arnaldo and Taeung,
> > 
> > (+ Andi)
> > 
> > On Fri, Jul 21, 2017 at 11:47:48AM -0300, Arnaldo Carvalho de Melo wrote:
> > > Em Thu, Jul 20, 2017 at 06:36:55AM +0900, Taeung Song escreveu:
> > > > +++ b/tools/perf/builtin-annotate.c
> > > > @@ -177,14 +177,12 @@ static int perf_evsel__add_sample(struct perf_evsel *evsel,
> > > >  	 */
> > > >  	process_branch_stack(sample->branch_stack, al, sample);
> > > >  
> > > > -	sample->period = 1;
> > > >  	sample->weight = 1;
> > > > -
> > > >  	he = hists__add_entry(hists, al, NULL, NULL, NULL, sample, true);
> > > >  	if (he == NULL)
> > > >  		return -ENOMEM;
> > > 
> > > I split the hunk above into a separate patch, as a fix, Namhyung, can
> > > you take a look at why need to unconditionally overwrite what is in
> > > sample->weight as well?
> > > 
> > > Looks fishy as it may come with a value from the kernel, parsed in
> > > perf_evsel__parse_sample(), when PERF_SAMPLE_WEIGHT is in
> > > perf_event_attr->sample_type.
> > > 
> > > Is it that the hists code needs a sane value when PERF_SAMPLE_WEIGHT
> > > isn't requested in sample_type?
> > 
> > It was Andi added that code originally (05484298cbfe).  IIUC the
> > weight is only meaningful for some CPUs with Intel TSX and he used a
> > dummy value.
> 
> It's used for more than TSX. e.g. perf mem uses it for memory latencies.
> 
> > AFAIK the hists code doesn't care of it unless weight sort key is used
> > (for report).  As it's not used by annotate code, I think it'd be
> > better leaving it as is (like period).
> 
> Right, it's needed when weight is specified as a sort key. But we need
> a fallback in case the user specified weight in perf report, but
> didn't enable it for perf record.

Humm, shouldn't we fail in that case? I.e. user asks for per-sample
property not collected at 'perf record' time?

That or the weight sort order handler should see that
perf_sample->weight is zero and assume it wasn't collected then turn it
into a 1? Or just look at evsel->attr.sample_type & PERF_SAMPLE_WEIGHT?

- Arnaldo

  reply	other threads:[~2017-07-24 17:35 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-07-19 21:36 [PATCH v3 3/9] perf annotate: Fix wrong --show-total-period option showing number of samples Taeung Song
2017-07-20 19:19 ` Arnaldo Carvalho de Melo
2017-07-21  9:41   ` Taeung Song
2017-07-21 11:24     ` Arnaldo Carvalho de Melo
2017-07-24  1:51       ` Taeung Song
2017-07-24 17:37         ` Arnaldo Carvalho de Melo
2017-07-24 21:28           ` Taeung Song
2017-07-25 14:42             ` Arnaldo Carvalho de Melo
2017-07-25 15:53               ` Taeung Song
2017-07-25 16:17                 ` Arnaldo Carvalho de Melo
2017-07-26 11:57                   ` Taeung Song
2017-07-26 20:17                     ` Arnaldo Carvalho de Melo
2017-07-27 15:14                       ` Taeung Song
2017-07-26 17:27             ` [tip:perf/core] perf annotate stdio: Fix column header when using --show-total-period tip-bot for Taeung Song
2017-07-21 14:47 ` [PATCH v3 3/9] perf annotate: Fix wrong --show-total-period option showing number of samples Arnaldo Carvalho de Melo
2017-07-22 22:46   ` Namhyung Kim
2017-07-23 15:46     ` Andi Kleen
2017-07-24 17:34       ` Arnaldo Carvalho de Melo [this message]
2017-07-24 17:46         ` Andi Kleen
2017-07-24 18:07           ` Arnaldo Carvalho de Melo
2017-07-26 17:20 ` [tip:perf/core] perf hists: Pass perf_sample to __symbol__inc_addr_samples() tip-bot for Taeung Song
2017-07-26 17:20 ` [tip:perf/core] perf annotate: Store the sample period in each histogram bucket tip-bot for Taeung Song
2017-07-26 17:20 ` [tip:perf/core] perf annotate: Do not overwrite sample->period tip-bot for Taeung Song

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=20170724173437.GS4134@kernel.org \
    --to=acme@kernel.org \
    --cc=andi@firstfloor.org \
    --cc=jolsa@redhat.com \
    --cc=kernel-team@lge.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=milian.wolff@kdab.com \
    --cc=namhyung@kernel.org \
    --cc=treeze.taeung@gmail.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.