From: Ingo Molnar <mingo@elte.hu>
To: Corey Ashford <cjashfor@linux.vnet.ibm.com>
Cc: linux-kernel@vger.kernel.org,
Thomas Gleixner <tglx@linutronix.de>,
Andrew Morton <akpm@linux-foundation.org>,
Stephane Eranian <eranian@googlemail.com>,
Eric Dumazet <dada1@cosmosbay.com>,
Robert Richter <robert.richter@amd.com>,
Arjan van de Ven <arjan@infradead.org>,
Peter Anvin <hpa@zytor.com>,
Peter Zijlstra <a.p.zijlstra@chello.nl>,
Paul Mackerras <paulus@samba.org>,
"David S. Miller" <davem@davemloft.net>,
Mike Galbraith <efault@gmx.de>
Subject: Re: [announce] Performance Counters for Linux, v6
Date: Fri, 20 Feb 2009 09:10:40 +0100 [thread overview]
Message-ID: <20090220081040.GA11490@elte.hu> (raw)
In-Reply-To: <499DD4BE.2000704@linux.vnet.ibm.com>
* Corey Ashford <cjashfor@linux.vnet.ibm.com> wrote:
> Ingo Molnar wrote:
>> We are pleased to announce version 6 of our performance counters
>> subsystem implementation. The shortlog, diffstat and the combo patch
>> can be found below. The combo patch against latest -git (2.6.29-rc2)
>> can be also found at:
>>
> [snip]
>
> Hi Ingo,
>
> As I was starting to put together a simple implementation of
> PAPI on top of PCL for Power, I noticed that PCL does not seem
> to have any sort of versioning and way of ascertaining the
> current capabilities of what is in the kernel.
>
> This information is needed by tools and libraries built on top
> of PCL so that they can know what is supported and if any bugs
> need to be worked around.
I'd prefer to use the standard Linux syscall ABI convention
here:
- once upstream, existing functionality is compatible forever
- new functionality is added in a way that it generates a
-ENOSYS return from the syscall in an older kernel.
That's why the event structure is sized relatively large for
example - to make sure we have space to grow into.
So instead of adding versioning information, it would be very
nice if you could check the ABI details for 'traps' that make
extensions harder. Try to come up with pie-in-the-sky future
items you'd like to see in the ABI, and lets see how supportable
it would be.
Example #1 - made up. Say if we had an ABI detail like this:
struct perf_counter_hw_event {
u8 type;
this would limit us to 256 events - which would be clearly
stupid as we can easily hit that limit.
Example #2. Not made up:
asmlinkage int
sys_perf_counter_open(struct perf_counter_hw_event *hw_event_uptr __user,
pid_t pid, int cpu, int group_fd)
Those are 5 parameters - we could extend it to 6 and add a
'flags' value that in the current version will return -ENOSYS if
the flags value is not zero.
This would add one more dimension of extensibility to the
interface.
If you could come up with a list of small details like this,
that would be really helpful. Would this work?
Ingo
next prev parent reply other threads:[~2009-02-20 8:11 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-01-21 18:50 [announce] Performance Counters for Linux, v6 Ingo Molnar
2009-01-21 19:34 ` Randy Dunlap
2009-01-21 19:56 ` Ingo Molnar
2009-01-21 21:14 ` Randy Dunlap
2009-01-22 11:22 ` Karel Zak
2009-01-22 12:04 ` Karel Zak
2009-01-22 12:06 ` Ingo Molnar
2009-01-26 1:06 ` Corey Ashford
2009-01-26 9:13 ` stephane eranian
2009-01-26 15:17 ` Ingo Molnar
2009-01-26 16:55 ` stephane eranian
2009-01-26 19:13 ` Corey Ashford
2009-01-26 19:39 ` [perfmon2] " Luck, Tony
2009-01-26 22:10 ` Ingo Molnar
2009-01-26 22:15 ` Ingo Molnar
2009-01-26 23:41 ` Corey Ashford
2009-01-29 2:10 ` Corey Ashford
2009-01-29 12:32 ` stephane eranian
2009-01-29 20:01 ` Corey Ashford
2009-01-29 21:44 ` stephane eranian
2009-02-19 21:53 ` Corey Ashford
2009-02-20 8:10 ` Ingo Molnar [this message]
2009-02-20 22:38 ` Corey Ashford
2009-02-20 22:47 ` Peter Zijlstra
2009-02-20 23:04 ` Corey Ashford
2009-02-20 23:24 ` stephane eranian
2009-02-20 23:58 ` Corey Ashford
2009-02-21 0:47 ` Arnd Bergmann
2009-02-26 9:49 ` Paul Mackerras
2009-02-26 13:37 ` Arnd Bergmann
2009-03-09 1:39 ` Robert Richter
2009-03-09 23:01 ` Paul Mackerras
2009-03-10 9:44 ` Robert Richter
2009-03-10 10:29 ` Peter Zijlstra
2009-03-10 11:49 ` Paul Mackerras
2009-03-10 11:53 ` Ingo Molnar
2009-03-10 16:26 ` Robert Richter
2009-03-10 17:27 ` Ingo Molnar
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=20090220081040.GA11490@elte.hu \
--to=mingo@elte.hu \
--cc=a.p.zijlstra@chello.nl \
--cc=akpm@linux-foundation.org \
--cc=arjan@infradead.org \
--cc=cjashfor@linux.vnet.ibm.com \
--cc=dada1@cosmosbay.com \
--cc=davem@davemloft.net \
--cc=efault@gmx.de \
--cc=eranian@googlemail.com \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=paulus@samba.org \
--cc=robert.richter@amd.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