Hi,
I have a question. Is there any progress on merging the
perfctr patch to Linus' kernel tree?
http://www.uwsg.iu.edu/hypermail/linux/kernel/0303.0/0647.html
I found the DCL patch set includes the perfctr patch.
http://lists.osdl.org/pipermail/dcl_developer/2003-March/000009.html
Thanks in advance,
Hiro
Hiro Yoshioka writes:
> I have a question. Is there any progress on merging the
> perfctr patch to Linus' kernel tree?
>
> http://www.uwsg.iu.edu/hypermail/linux/kernel/0303.0/0647.html
>
> I found the DCL patch set includes the perfctr patch.
> http://lists.osdl.org/pipermail/dcl_developer/2003-March/000009.html
No progress since Linus totally ignored it, but at least two
perfctr-patched trees exist. OSDL does one for the development
kernel, and Jack Perdue has pre-patched RedHat kernel .rpms.
(For Jack's stuff, check out PAPI -> Links -> Related Software.)
I'm planning to simplify the kernel <--> user-space interface in
perfctr-2.6 (drop /proc/pid/perfctr and go back to /dev/perfctr),
and then I _think_ I can do a version that doesn't require patching
kernel source. (It will do binary code patching at module load-time
instead. Horrible as that sounds, it's easier to deal with for users.)
/Mikael
From: Mikael Pettersson <[email protected]>
> Hiro Yoshioka writes:
> > I have a question. Is there any progress on merging the
> > perfctr patch to Linus' kernel tree?
> >
> > http://www.uwsg.iu.edu/hypermail/linux/kernel/0303.0/0647.html
> >
> > I found the DCL patch set includes the perfctr patch.
> > http://lists.osdl.org/pipermail/dcl_developer/2003-March/000009.html
>
> No progress since Linus totally ignored it, but at least two
> perfctr-patched trees exist. OSDL does one for the development
> kernel, and Jack Perdue has pre-patched RedHat kernel .rpms.
> (For Jack's stuff, check out PAPI -> Links -> Related Software.)
>
> I'm planning to simplify the kernel <--> user-space interface in
> perfctr-2.6 (drop /proc/pid/perfctr and go back to /dev/perfctr),
> and then I _think_ I can do a version that doesn't require patching
> kernel source. (It will do binary code patching at module load-time
> instead. Horrible as that sounds, it's easier to deal with for users.)
I like /proc/pid/perfctr interface (virtual PMC mode).
The following patch should be included into the main line kernel,
shouldn't it?
--- linux-2.5.62-perfctr/include/asm-i386/processor.h.~1~ 2003-02-18 02:06
:53.000000000 +0100
+++ linux-2.5.62-perfctr/include/asm-i386/processor.h 2003-02-18 02:18:36.0000
00000 +0100
@@ -372,6 +372,11 @@
unsigned long __cacheline_filler[5];
};
+/*
+ * Virtual per-process performance-monitoring counters.
+ */
+struct vperfctr; /* opaque; no need to depend on <linux/perfctr.h> */
+
struct thread_struct {
/* cached TLS descriptors. */
struct desc_struct tls_array[GDT_ENTRY_TLS_ENTRIES];
@@ -393,6 +398,8 @@
unsigned int saved_fs, saved_gs;
/* IO permissions */
unsigned long *ts_io_bitmap;
+/* performance counters */
+ struct vperfctr *perfctr;
};
#define INIT_THREAD { \
---------------------------------------------
I think a per process (thread) performance monitoring is very
important.
Thanks in advance,
Hiro