* Re: 2.6.25 new perfmon kernel patch + libpfm + pfmon available
2008-04-29 21:47 ` 2.6.25 new perfmon kernel patch + libpfm + pfmon available stephane eranian
@ 2008-04-29 15:08 ` Arjan van de Ven
2008-04-30 13:11 ` stephane eranian
2008-05-02 16:01 ` stephane eranian
1 sibling, 1 reply; 8+ messages in thread
From: Arjan van de Ven @ 2008-04-29 15:08 UTC (permalink / raw)
To: stephane eranian; +Cc: linux-kernel, ia64
On Tue, 29 Apr 2008 23:47:17 +0200
"stephane eranian" <eranian@googlemail.com> wrote:
>
> As usual all files and more detailed changelogs can be downloaded
> from our website at:
>
> http://perfmon.sourceforge.net
it hides well there ;(
the website seems to only offer a 2003 version for download.. I doubt that that is the right one..
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: 2.6.25 new perfmon kernel patch + libpfm + pfmon available
2008-04-30 13:11 ` stephane eranian
@ 2008-04-29 15:33 ` Arjan van de Ven
2008-04-30 13:51 ` stephane eranian
0 siblings, 1 reply; 8+ messages in thread
From: Arjan van de Ven @ 2008-04-29 15:33 UTC (permalink / raw)
To: stephane eranian; +Cc: linux-kernel, ia64
On Wed, 30 Apr 2008 15:11:11 +0200
"stephane eranian" <eranian@googlemail.com> wrote:
> Sorry,
>
> It's http://perfmon2.sf.net
>
>
hummmmm, I wonder why perfmon wants to reimplement half of the PCI layer...
+extern spinlock_t pci_config_lock;
+
+#define PCI_CONF1_ADDRESS(bus, devfn, reg) \
+ (0x80000000 | ((reg & 0xF00) << 16) | ((bus & 0xFF) << 16) \
+ | (devfn << 8) | (reg & 0xFC))
+
+#define is_ibs_pmc(x) (x = 4 || x = 5)
+
+static int pci_read(unsigned int seg, unsigned int bus,
+ unsigned int devfn, int reg, int len, u32 *value)
+{
+ unsigned long flags;
especially since this doesn't seem to use the proper config space abstractions :(
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: 2.6.25 new perfmon kernel patch + libpfm + pfmon available
2008-04-30 13:51 ` stephane eranian
@ 2008-04-29 16:42 ` Arjan van de Ven
2008-05-08 10:11 ` Robert Richter
0 siblings, 1 reply; 8+ messages in thread
From: Arjan van de Ven @ 2008-04-29 16:42 UTC (permalink / raw)
To: stephane eranian; +Cc: linux-kernel, ia64, Robert Richter
On Wed, 30 Apr 2008 15:51:39 +0200
"stephane eranian" <eranian@googlemail.com> wrote:
> If I recall, AMD said that this special initialization would
> eventually migrate into the core kernel. The pci_read() may be there
> because it was not exported by the kernel (this particular code lives
> in a kernel module).
... yet your patch adds an EXPORT_SYMBOL() just to make this specific function possible. Weird.
I find it hard to believe that there would be no code in the kernel to
read or write config space of a device you have..... :)
In fact I bet 80% of the drivers in the tree use it.
^ permalink raw reply [flat|nested] 8+ messages in thread
* 2.6.25 new perfmon kernel patch + libpfm + pfmon available
[not found] <7c86c4470804291446l4693b317ha7ee2382d00e99e6@mail.gmail.com>
@ 2008-04-29 21:47 ` stephane eranian
2008-04-29 15:08 ` Arjan van de Ven
2008-05-02 16:01 ` stephane eranian
0 siblings, 2 replies; 8+ messages in thread
From: stephane eranian @ 2008-04-29 21:47 UTC (permalink / raw)
To: linux-kernel; +Cc: ia64
Hello,
I have released the perfmon2 kernel patch for kernel v2.6.25. There is
no major features. However, there were a major restructuring of the code
to make it more readable, isolate features per module. The header files
have also been restructured to separate user vs. kernel, and generic only
vs. shared with arch. The restructuring of the interrupt handler yielded
a nice 15% latency improvement on single counter sampling runs on X86.
This new structure will make it easier to extract features and merge them
with the mainline kernel.
In the time frame of 2.6.26, I will push a few bits and pieces to LKML
for final review and integration.
Here are some of the kernel changes:
- Cell updates (Carl Love, Takashi Yamamoto)
- new perfmon_debug boot option to enable debug (Robert Richter)
- several bugs fixes on Itanium, MIPS and generic hrtimer management
- Power locking updates (Corey Ashford)
There is also a new release for libpfm, now at version 3.4.
The changes include:
- AMD Phenom (a.k.a. Barcelona) IBS support (Robert Richter)
- Python bindings and examples (Arun Sharma)
- environment variable support to enable debugging
- auto-detection of syscall base number for 2.6.24 and 2.6.25
- new multi-threaded self-sampling example (Mark W. Krentel)
- man pages cleanups (Steve Kaufmann)
Special thanks to Arun (Google). The Python bindings are a nice addition
to libpfm especially for prototyping and writing testsuites.
Finally, a new major version of pfmon, now at pfmon-3.4.
Among the many changes:
- added support for dmalloc (Andrzej Nowak)
- updated support for Cell processor (Takashi Yamamoto)
- possibility to terminate pfmon cleanly with SIGTERM
- --follow-fork and derivatives fixed on Itanium and other platforms
- tracking of dlopen now works on mixed ABI environments
- lots of bugs fixes
As usual all files and more detailed changelogs can be downloaded from our
website at:
http://perfmon.sourceforge.net
Enjoy,
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: 2.6.25 new perfmon kernel patch + libpfm + pfmon available
2008-04-29 15:08 ` Arjan van de Ven
@ 2008-04-30 13:11 ` stephane eranian
2008-04-29 15:33 ` Arjan van de Ven
0 siblings, 1 reply; 8+ messages in thread
From: stephane eranian @ 2008-04-30 13:11 UTC (permalink / raw)
To: Arjan van de Ven; +Cc: linux-kernel, ia64
Sorry,
It's http://perfmon2.sf.net
On Tue, Apr 29, 2008 at 5:08 PM, Arjan van de Ven <arjan@infradead.org> wrote:
> On Tue, 29 Apr 2008 23:47:17 +0200
> "stephane eranian" <eranian@googlemail.com> wrote:
>
> >
> > As usual all files and more detailed changelogs can be downloaded
> > from our website at:
> >
> > http://perfmon.sourceforge.net
>
> it hides well there ;(
> the website seems to only offer a 2003 version for download.. I doubt that that is the right one..
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: 2.6.25 new perfmon kernel patch + libpfm + pfmon available
2008-04-29 15:33 ` Arjan van de Ven
@ 2008-04-30 13:51 ` stephane eranian
2008-04-29 16:42 ` Arjan van de Ven
0 siblings, 1 reply; 8+ messages in thread
From: stephane eranian @ 2008-04-30 13:51 UTC (permalink / raw)
To: Arjan van de Ven; +Cc: linux-kernel, ia64, Robert Richter
If I recall, AMD said that this special initialization would eventually migrate
into the core kernel. The pci_read() may be there because it was not exported
by the kernel (this particular code lives in a kernel module).
If you think there is now enough support in the core kernel to do this
initialization
then I'd be happy to remove this piece of code.
On Tue, Apr 29, 2008 at 5:33 PM, Arjan van de Ven <arjan@infradead.org> wrote:
> On Wed, 30 Apr 2008 15:11:11 +0200
>
> "stephane eranian" <eranian@googlemail.com> wrote:
>
>
> > Sorry,
> >
> > It's http://perfmon2.sf.net
> >
> >
>
> hummmmm, I wonder why perfmon wants to reimplement half of the PCI layer...
>
> +extern spinlock_t pci_config_lock;
> +
> +#define PCI_CONF1_ADDRESS(bus, devfn, reg) \
> + (0x80000000 | ((reg & 0xF00) << 16) | ((bus & 0xFF) << 16) \
> + | (devfn << 8) | (reg & 0xFC))
> +
> +#define is_ibs_pmc(x) (x = 4 || x = 5)
> +
> +static int pci_read(unsigned int seg, unsigned int bus,
> + unsigned int devfn, int reg, int len, u32 *value)
> +{
> + unsigned long flags;
>
> especially since this doesn't seem to use the proper config space abstractions :(
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: 2.6.25 new perfmon kernel patch + libpfm + pfmon available
2008-04-29 21:47 ` 2.6.25 new perfmon kernel patch + libpfm + pfmon available stephane eranian
2008-04-29 15:08 ` Arjan van de Ven
@ 2008-05-02 16:01 ` stephane eranian
1 sibling, 0 replies; 8+ messages in thread
From: stephane eranian @ 2008-05-02 16:01 UTC (permalink / raw)
To: linux-kernel; +Cc: ia64
Hello,
Several people noticed there was a typo in the website url.
The actual web site is:
http://perfmon2.sf.net
Sorry about that.
On Tue, Apr 29, 2008 at 11:47 PM, stephane eranian
<eranian@googlemail.com> wrote:
>
> Hello,
>
> I have released the perfmon2 kernel patch for kernel v2.6.25. There is
> no major features. However, there were a major restructuring of the code
> to make it more readable, isolate features per module. The header files
> have also been restructured to separate user vs. kernel, and generic only
> vs. shared with arch. The restructuring of the interrupt handler yielded
> a nice 15% latency improvement on single counter sampling runs on X86.
> This new structure will make it easier to extract features and merge them
> with the mainline kernel.
>
> In the time frame of 2.6.26, I will push a few bits and pieces to LKML
> for final review and integration.
>
> Here are some of the kernel changes:
> - Cell updates (Carl Love, Takashi Yamamoto)
> - new perfmon_debug boot option to enable debug (Robert Richter)
> - several bugs fixes on Itanium, MIPS and generic hrtimer management
> - Power locking updates (Corey Ashford)
>
> There is also a new release for libpfm, now at version 3.4.
> The changes include:
> - AMD Phenom (a.k.a. Barcelona) IBS support (Robert Richter)
> - Python bindings and examples (Arun Sharma)
> - environment variable support to enable debugging
> - auto-detection of syscall base number for 2.6.24 and 2.6.25
> - new multi-threaded self-sampling example (Mark W. Krentel)
> - man pages cleanups (Steve Kaufmann)
>
> Special thanks to Arun (Google). The Python bindings are a nice addition
> to libpfm especially for prototyping and writing testsuites.
>
> Finally, a new major version of pfmon, now at pfmon-3.4.
> Among the many changes:
> - added support for dmalloc (Andrzej Nowak)
> - updated support for Cell processor (Takashi Yamamoto)
> - possibility to terminate pfmon cleanly with SIGTERM
> - --follow-fork and derivatives fixed on Itanium and other platforms
> - tracking of dlopen now works on mixed ABI environments
> - lots of bugs fixes
>
> As usual all files and more detailed changelogs can be downloaded from our
> website at:
>
> http://perfmon.sourceforge.net
>
> Enjoy,
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: 2.6.25 new perfmon kernel patch + libpfm + pfmon available
2008-04-29 16:42 ` Arjan van de Ven
@ 2008-05-08 10:11 ` Robert Richter
0 siblings, 0 replies; 8+ messages in thread
From: Robert Richter @ 2008-05-08 10:11 UTC (permalink / raw)
To: Arjan van de Ven; +Cc: stephane eranian, linux-kernel, ia64
On 29.04.08 09:42:18, Arjan van de Ven wrote:
> On Wed, 30 Apr 2008 15:51:39 +0200
> "stephane eranian" <eranian@googlemail.com> wrote:
>
> > If I recall, AMD said that this special initialization would
> > eventually migrate into the core kernel. The pci_read() may be there
> > because it was not exported by the kernel (this particular code lives
> > in a kernel module).
>
> ... yet your patch adds an EXPORT_SYMBOL() just to make this specific function possible. Weird.
>
> I find it hard to believe that there would be no code in the kernel to
> read or write config space of a device you have..... :)
> In fact I bet 80% of the drivers in the tree use it.
Access to extended config space for AMD northbridges was not yet
implemented. Recent patches from Yinghai Lu fix this. I will send a
patch that uses the in-kernel functions.
-Robert
--
Advanced Micro Devices, Inc.
Operating System Research Center
email: robert.richter@amd.com
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2008-05-08 10:11 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <7c86c4470804291446l4693b317ha7ee2382d00e99e6@mail.gmail.com>
2008-04-29 21:47 ` 2.6.25 new perfmon kernel patch + libpfm + pfmon available stephane eranian
2008-04-29 15:08 ` Arjan van de Ven
2008-04-30 13:11 ` stephane eranian
2008-04-29 15:33 ` Arjan van de Ven
2008-04-30 13:51 ` stephane eranian
2008-04-29 16:42 ` Arjan van de Ven
2008-05-08 10:11 ` Robert Richter
2008-05-02 16:01 ` stephane eranian
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox