From: Phillip E. <ez...@pe...> - 2002-08-30 15:02:14
Attachments:
change_for_rh80_beta
|
Hi All, I had trouble compiling oprofile (CVS version as of 3 days ago) on the Redhat 8.0 beta. To make it work, I basically had to add #include <linux/version.h> to the beginning to a bunch of the module files. It made things work for me, and I think it should be a harmless change for those using other kernel versions. The diffs are attached. --Phil Hewlett-Packard: High Performance Technical Computing/Visualization --------------------------------------------------------------------------- Phi...@hp... Performance/Development |
From: John L. <le...@mo...> - 2002-08-30 15:20:02
|
On Fri, Aug 30, 2002 at 11:02:18AM -0400, Phillip Ezolt wrote: > I had trouble compiling oprofile (CVS version as of 3 days > ago) on the Redhat 8.0 beta. Hmm what kernel version is their kernel based on ? > To make it work, I basically had to add #include <linux/version.h> > to the beginning to a bunch of the module files. This doesn't make sense : > Index: module/compat.c #includes op_dcache.h #includes oprofile.h #include <linux/version.h> So this can't make any difference unless something is horribly goosed with your source tree. (btw I much prefer diff -u) regards john -- "Take the ideas you find useful. Try not to get hung up on the labels." - Jonathan S. Shapiro |
From: <Phi...@hp...> - 2002-08-30 15:37:15
Attachments:
change_for_rh80_beta_2
|
John, > Hmm what kernel version is their kernel based on ? uname -a gives me: 2.4.18-11 > This doesn't make sense : > > > Index: module/compat.c > > #includes op_dcache.h > #includes oprofile.h > #include <linux/version.h> Hmm.. If I move the #include "oprofile.h" to the top of "op_dcache.h", things start to work. In fact, if I move the "oprofile.h" include before all of the linux includes things start to work as well. I've attached a new patch. > (btw I much prefer diff -u) Sorry, I didn't know cvs diff could take a -u parameter. I will use that from now on. --Phil Hewlett-Packard: High Performance Technical Computing/Visualization --------------------------------------------------------------------------- Phi...@hp... Performance/Development On Fri, 30 Aug 2002, John Levon wrote: > On Fri, Aug 30, 2002 at 11:02:18AM -0400, Phillip Ezolt wrote: > > > I had trouble compiling oprofile (CVS version as of 3 days > > ago) on the Redhat 8.0 beta. > > Hmm what kernel version is their kernel based on ? > > > To make it work, I basically had to add #include <linux/version.h> > > to the beginning to a bunch of the module files. > > This doesn't make sense : > > > Index: module/compat.c > > #includes op_dcache.h > #includes oprofile.h > #include <linux/version.h> > > So this can't make any difference unless something is horribly goosed > with your source tree. > > (btw I much prefer diff -u) > > regards > john > > -- > "Take the ideas you find useful. Try not to get hung up on the labels." > - Jonathan S. Shapiro > |
From: William C. <wc...@nc...> - 2002-08-30 16:08:16
|
I am surprised that you got the oprofile module to compile on the Red Hat beta because the syscall table is no longer being exported. The Red Hat Milan betas should have oprofile support in them. There should be kernel support and an rpm for oprofile. Do a 'rpm -qa |grep oprofile' to see if you have the oprofile rpm installed. The kernel doesn't have the oprofile support as a module, it is compiled into the kernel. There have also been some changes in oprofiles interface between the module and the daemon, so it is unlikely that the current oprofile cvs checkouts are going to work with the Red Hat beta. One other thing to watch for is that there is a conflict between the RTC driver and oprofile. This will cause problems on P4 machines. In later kernels (don't recall the exact verion was put in) there is a boot option 'nortc' that should allow oprofile to use the RTC hardware. -Will Phi...@hp... wrote: > John, > >>Hmm what kernel version is their kernel based on ? >> > > uname -a gives me: 2.4.18-11 > > >>This doesn't make sense : >> >> >>>Index: module/compat.c >>> >>#includes op_dcache.h >> #includes oprofile.h >> #include <linux/version.h> >> > > Hmm.. If I move the #include "oprofile.h" to the top of "op_dcache.h", > things start to work. > > In fact, if I move the "oprofile.h" include before all of the linux > includes things start to work as well. I've attached a new patch. > > >>(btw I much prefer diff -u) >> > > Sorry, I didn't know cvs diff could take a -u parameter. I will use > that from now on. > > --Phil > > Hewlett-Packard: High Performance Technical Computing/Visualization > --------------------------------------------------------------------------- > Phi...@hp... Performance/Development > > > On Fri, 30 Aug 2002, John Levon wrote: > > >>On Fri, Aug 30, 2002 at 11:02:18AM -0400, Phillip Ezolt wrote: >> >> >>> I had trouble compiling oprofile (CVS version as of 3 days >>>ago) on the Redhat 8.0 beta. >>> >>Hmm what kernel version is their kernel based on ? >> >> >>>To make it work, I basically had to add #include <linux/version.h> >>>to the beginning to a bunch of the module files. >>> >>This doesn't make sense : >> >> >>>Index: module/compat.c >>> >>#includes op_dcache.h >> #includes oprofile.h >> #include <linux/version.h> >> >>So this can't make any difference unless something is horribly goosed >>with your source tree. >> >>(btw I much prefer diff -u) >> >>regards >>john >> >>-- >>"Take the ideas you find useful. Try not to get hung up on the labels." >> - Jonathan S. Shapiro >> >> >> >>------------------------------------------------------------------------ >> >>Index: module/op_dcache.h >>=================================================================== >>RCS file: /cvsroot/oprofile/oprofile/module/op_dcache.h,v >>retrieving revision 1.6 >>diff -u -r1.6 op_dcache.h >>--- module/op_dcache.h 6 Jun 2002 16:18:22 -0000 1.6 >>+++ module/op_dcache.h 30 Aug 2002 15:31:15 -0000 >>@@ -12,12 +12,14 @@ >> #ifndef OP_DCACHE_H >> #define OP_DCACHE_H >> >>+#include "oprofile.h" >>+ >> #include <linux/sched.h> >> #include <linux/unistd.h> >> #include <linux/mman.h> >> #include <linux/file.h> >> >>-#include "oprofile.h" >>+ >> >> extern uint dname_top; >> extern struct qstr **dname_stack; >>Index: module/op_dname.c >>=================================================================== >>RCS file: /cvsroot/oprofile/oprofile/module/op_dname.c,v >>retrieving revision 1.4 >>diff -u -r1.4 op_dname.c >>--- module/op_dname.c 6 Jun 2002 18:43:47 -0000 1.4 >>+++ module/op_dname.c 30 Aug 2002 15:31:15 -0000 >>@@ -9,12 +9,14 @@ >> * @author Philippe Elie <ph...@wa...> >> */ >> >>+#include "oprofile.h" >>+ >> #include <linux/sched.h> >> #include <linux/unistd.h> >> #include <linux/mman.h> >> #include <linux/file.h> >> >>-#include "oprofile.h" >>+ >> #include "op_dcache.h" >> #include "op_util.h" >> >>Index: module/op_rtc.c >>=================================================================== >>RCS file: /cvsroot/oprofile/oprofile/module/op_rtc.c,v >>retrieving revision 1.18 >>diff -u -r1.18 op_rtc.c >>--- module/op_rtc.c 6 Jun 2002 18:43:47 -0000 1.18 >>+++ module/op_rtc.c 30 Aug 2002 15:31:15 -0000 >>@@ -10,11 +10,11 @@ >> * @author John Levon <mo...@co...> >> */ >> >>+#include "oprofile.h" >> #include <linux/ioport.h> >> #include <linux/mc146818rtc.h> >> #include <asm/ptrace.h> >> >>-#include "oprofile.h" >> #include "op_util.h" >> >> #define RTC_IO_PORTS 2 >>Index: module/op_util.c >>=================================================================== >>RCS file: /cvsroot/oprofile/oprofile/module/op_util.c,v >>retrieving revision 1.13 >>diff -u -r1.13 op_util.c >>--- module/op_util.c 11 Jun 2002 16:59:42 -0000 1.13 >>+++ module/op_util.c 30 Aug 2002 15:31:15 -0000 >>@@ -8,7 +8,7 @@ >> * @author John Levon <mo...@co...> >> * @author Philippe Elie <ph...@wa...> >> */ >>- >>+#include <linux/version.h> >> #include <linux/vmalloc.h> >> #include <linux/wrapper.h> >> #include <linux/pagemap.h> >>Index: module/x86/op_apic.c >>=================================================================== >>RCS file: /cvsroot/oprofile/oprofile/module/x86/op_apic.c,v >>retrieving revision 1.7 >>diff -u -r1.7 op_apic.c >>--- module/x86/op_apic.c 28 Jul 2002 16:20:58 -0000 1.7 >>+++ module/x86/op_apic.c 30 Aug 2002 15:31:15 -0000 >>@@ -10,12 +10,12 @@ >> * @author Philippe Elie <ph...@wa...> >> */ >> >>+#include "oprofile.h" >> #include <linux/mm.h> >> #include <linux/init.h> >> #include <linux/config.h> >> #include <asm/io.h> >> >>-#include "oprofile.h" >> #include "op_msr.h" >> #include "op_apic.h" >> >>Index: module/x86/op_fixmap.c >>=================================================================== >>RCS file: /cvsroot/oprofile/oprofile/module/x86/op_fixmap.c,v >>retrieving revision 1.7 >>diff -u -r1.7 op_fixmap.c >>--- module/x86/op_fixmap.c 28 Jul 2002 16:20:58 -0000 1.7 >>+++ module/x86/op_fixmap.c 30 Aug 2002 15:31:15 -0000 >>@@ -10,13 +10,13 @@ >> * @author Philippe Elie <ph...@wa...> >> */ >> >>+#include "oprofile.h" >> #include <linux/mm.h> >> #include <linux/init.h> >> #include <linux/config.h> >> #include <linux/pagemap.h> >> #include <asm/io.h> >> >>-#include "oprofile.h" >> #include "apic_compat.h" >> >> #if V_BEFORE(2, 4, 0) >>Index: module/x86/op_syscalls.c >>=================================================================== >>RCS file: /cvsroot/oprofile/oprofile/module/x86/op_syscalls.c,v >>retrieving revision 1.4 >>diff -u -r1.4 op_syscalls.c >>--- module/x86/op_syscalls.c 12 Jul 2002 18:30:37 -0000 1.4 >>+++ module/x86/op_syscalls.c 30 Aug 2002 15:31:15 -0000 >>@@ -9,12 +9,11 @@ >> * @author Philippe Elie <ph...@wa...> >> */ >> >>+#include "oprofile.h" >> #include <linux/sched.h> >> #include <linux/unistd.h> >> #include <linux/mman.h> >> #include <linux/file.h> >>- >>-#include "oprofile.h" >> >> void oprof_put_note(struct op_note *samp); >> void __oprof_put_note(struct op_note *samp); >> >> change_for_rh80_beta_2 >> >> Content-Type: >> >> TEXT/PLAIN >> Content-Encoding: >> >> BASE64 >> >> |
From: John L. <le...@mo...> - 2002-08-30 16:16:00
|
On Fri, Aug 30, 2002 at 12:00:58PM -0400, William Cohen wrote: > I am surprised that you got the oprofile module to compile on the Red > Hat beta because the syscall table is no longer being exported. Ugh. This means I won't be able to debug any problems redhat users have. Maybe that won't turn out to be particularly annoying problem, I dunno. I assume I will be able to point all such users to redhat's bugzilla right ? regards john p.s. where exactly can we find the kernel side of redhat's ia64-oprofile support ? |
From: William C. <wc...@nc...> - 2002-08-30 17:21:36
|
John Levon wrote: > On Fri, Aug 30, 2002 at 12:00:58PM -0400, William Cohen wrote: > > >>I am surprised that you got the oprofile module to compile on the Red >>Hat beta because the syscall table is no longer being exported. >> > > Ugh. This means I won't be able to debug any problems redhat users have. > Maybe that won't turn out to be particularly annoying problem, I dunno. No, you are right; it is annoying. It is harder tracking the development work with OProfile with the Red Hat Beta because one cannot just install a more recent module for the oprofile cvs. > I assume I will be able to point all such users to redhat's bugzilla > right ? Yes, there is a bugzilla category for oprofile, so you can point users to that. > p.s. where exactly can we find the kernel side of redhat's ia64-oprofile > support ? Try http://www.people.redhat.com/wcohen. I just put a patch up there of the ia64 work in progress. Will |