From: Paul Mackerras <paulus@samba.org>
To: Corey Ashford <cjashfor@linux.vnet.ibm.com>
Cc: mingo@redhat.com, hpa@zytor.com, linux-kernel@vger.kernel.org,
a.p.zijlstra@chello.nl, akpm@linux-foundation.org,
tglx@linutronix.de, mingo@elte.hu,
linux-tip-commits@vger.kernel.org
Subject: Re: [tip:perfcounters/core] perf_counter: record time running and time enabled for each counter
Date: Thu, 26 Mar 2009 10:23:10 +1100 [thread overview]
Message-ID: <18890.48350.132781.696909@cargo.ozlabs.ibm.com> (raw)
In-Reply-To: <49CAA384.60101@linux.vnet.ibm.com>
Corey Ashford writes:
> This change looks good to me, except:
>
> How do I know which value comes first after the counter value if I have
> both PERF_FORMAT_TOTAL_TIME_ENABLED and PERF_FORMAT_TOTAL_TIME_RUNNING
> set? Are they in the order of their enum values?
Yes.
> The order should be
> described somewhere.
This comment that I added to perf_counter.h:
/*
* Bits that can be set in hw_event.read_format to request that
* reads on the counter should return the indicated quantities,
* in increasing order of bit value, after the counter value.
*/
describes the order ("in increasing order of bit value"). So you will
get the count, total time enabled, total time running, in that order.
> Is there anything to keep a kernel code change
> from inadvertantly reversing the position of two values at some point in
> the future?
Well, that would be an ABI breakage. Once it's upstream, we won't
break the ABI, and if someone does break it and no-one realizes at the
time, we'll revert their change once we do realize. (With a possible
exception for security holes that can't be fixed without breaking the
ABI, of course, but I can't see how that would be the case here.)
Until it goes into Linus' tree, we can still change the ABI in
incompatible ways. Ingo and Peter are talking about using a tagged
format for the data obtained from read(), which would solve your
problem in another way, though it would make the userspace code more
complicated (it would have to check that the tags were what it was
expecting, and cope with the situation where it doesn't get a value it
needs).
Paul.
prev parent reply other threads:[~2009-03-25 23:23 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-03-25 11:46 [PATCH v3] perfcounters: " Paul Mackerras
2009-03-25 12:21 ` Peter Zijlstra
2009-03-25 12:25 ` Ingo Molnar
2009-03-26 2:20 ` Paul Mackerras
2009-03-25 12:27 ` [tip:perfcounters/core] perf_counter: " Paul Mackerras
2009-03-25 21:35 ` Corey Ashford
2009-03-25 23:23 ` Paul Mackerras [this message]
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=18890.48350.132781.696909@cargo.ozlabs.ibm.com \
--to=paulus@samba.org \
--cc=a.p.zijlstra@chello.nl \
--cc=akpm@linux-foundation.org \
--cc=cjashfor@linux.vnet.ibm.com \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-tip-commits@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=mingo@redhat.com \
--cc=tglx@linutronix.de \
/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
all inboxes | Powered by JetHome®