linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: kajoljain <kjain@linux.ibm.com>
To: Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com>
Cc: mark.rutland@arm.com, maddy@linux.vnet.ibm.com,
	peterz@infradead.org, yao.jin@linux.intel.com, mingo@kernel.org,
	kan.liang@linux.intel.com, ak@linux.intel.com,
	alexander.shishkin@linux.intel.com, anju@linux.vnet.ibm.com,
	mamatha4@linux.vnet.ibm.com, ravi.bangoria@linux.ibm.com,
	acme@kernel.org, jmario@redhat.com, namhyung@kernel.org,
	tglx@linutronix.de, mpetlan@redhat.com,
	gregkh@linuxfoundation.org, linux-perf-users@vger.kernel.org,
	jolsa@kernel.org, linuxppc-dev@lists.ozlabs.org
Subject: Re: [PATCH v2 1/8] powerpc/perf/hv-24x7: Fix inconsistent output values incase multiple hv-24x7 events run
Date: Mon, 24 Feb 2020 10:47:38 +0530	[thread overview]
Message-ID: <699d0e3f-47a9-3ee6-7055-08509c635294@linux.ibm.com> (raw)
In-Reply-To: <20200223025119.GA17174@us.ibm.com>



On 2/23/20 8:21 AM, Sukadev Bhattiprolu wrote:
> Kajol Jain [kjain@linux.ibm.com] wrote:
>> Commit 2b206ee6b0df ("powerpc/perf/hv-24x7: Display change in counter
>> values")' added to print _change_ in the counter value rather then raw
>> value for 24x7 counters. Incase of transactions, the event count
>> is set to 0 at the beginning of the transaction. It also sets
>> the event's prev_count to the raw value at the time of initialization.
>> Because of setting event count to 0, we are seeing some weird behaviour,
>> whenever we run multiple 24x7 events at a time.
> 
> Interesting. Are we taking delta of a delta and ending up with large
> negative values in the -I case?  However...
> 

Hi Sukadev,
       That's right, we are ending up in calculating delta of delta which may give us negative values
because of which we are getting these large values in -I case.

> <snip>
> 
>>
>> Signed-off-by: Kajol Jain <kjain@linux.ibm.com>
>> ---
>>  arch/powerpc/perf/hv-24x7.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/arch/powerpc/perf/hv-24x7.c b/arch/powerpc/perf/hv-24x7.c
>> index 573e0b309c0c..6dbbf70232aa 100644
>> --- a/arch/powerpc/perf/hv-24x7.c
>> +++ b/arch/powerpc/perf/hv-24x7.c
>> @@ -1409,7 +1409,7 @@ static void h_24x7_event_read(struct perf_event *event)
>>  			 * that would require issuing a hcall, which would then
>>  			 * defeat the purpose of using the txn interface.
>>  			 */
>> -			local64_set(&event->count, 0);
>> +			local64_add(0, &event->count);
> 
> ... not sure, how adding zero to the count helps. Should we just remove the
> line (and the comment block above it)?  Or does it help to clear the event
> count in ->start_txn() rather than on read()?

Its not impacting much as we are just adding and not setting event count.I think we can remove that line
with the comment added. Will it be ok if I remove that whole part?

> 
> How does the change impact the counts when run without the -I?

There won't be much impact because from my understanding you did add 
`(void)local64_xchg(&event->hw.prev_count, ct);`, to print change value in your
Commit 2b206ee6b0df in function 'h_24x7_event_init()'.
And we will go through this path in case of 'without -I'. Please let me know if my
understanding is correct.

Thanks,
Kajol

> 
> Thanks for chasing this down.
> 
> Sukadev
> 

  reply	other threads:[~2020-02-24  5:20 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-02-21  6:10 [PATCH v2 0/8] powerpc/perf: Add json file metric support for the hv_24x7 socket/chip level events Kajol Jain
2020-02-21  6:10 ` [PATCH v2 1/8] powerpc/perf/hv-24x7: Fix inconsistent output values incase multiple hv-24x7 events run Kajol Jain
2020-02-23  2:51   ` Sukadev Bhattiprolu
2020-02-24  5:17     ` kajoljain [this message]
2020-02-21  6:10 ` [PATCH v2 2/8] powerpc/hv-24x7: Add rtas call in hv-24x7 driver to get processor details Kajol Jain
2020-02-21  6:10 ` [PATCH v2 3/8] powerpc/hv-24x7: Add sysfs files inside hv-24x7 device to show " Kajol Jain
2020-02-21  6:10 ` [PATCH v2 4/8] Documentation/ABI: Add ABI documentation for chips and sockets Kajol Jain
2020-02-21  6:10 ` [PATCH v2 5/8] powerpc/hv-24x7: Update post_mobility_fixup() to handle migration Kajol Jain
2020-02-21  6:10 ` [PATCH v2 6/8] perf/tools: Enhance JSON/metric infrastructure to handle "?" Kajol Jain
2020-02-21  6:10 ` [PATCH v2 7/8] tools/perf: Enable Hz/hz prinitg for --metric-only option Kajol Jain
2020-02-21  6:10 ` [PATCH v2 8/8] perf/tools/pmu-events/powerpc: Add hv_24x7 socket/chip level metric events Kajol Jain

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=699d0e3f-47a9-3ee6-7055-08509c635294@linux.ibm.com \
    --to=kjain@linux.ibm.com \
    --cc=acme@kernel.org \
    --cc=ak@linux.intel.com \
    --cc=alexander.shishkin@linux.intel.com \
    --cc=anju@linux.vnet.ibm.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=jmario@redhat.com \
    --cc=jolsa@kernel.org \
    --cc=kan.liang@linux.intel.com \
    --cc=linux-perf-users@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=maddy@linux.vnet.ibm.com \
    --cc=mamatha4@linux.vnet.ibm.com \
    --cc=mark.rutland@arm.com \
    --cc=mingo@kernel.org \
    --cc=mpetlan@redhat.com \
    --cc=namhyung@kernel.org \
    --cc=peterz@infradead.org \
    --cc=ravi.bangoria@linux.ibm.com \
    --cc=sukadev@linux.vnet.ibm.com \
    --cc=tglx@linutronix.de \
    --cc=yao.jin@linux.intel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).