From: Andy F. <afl...@fr...> - 2004-10-01 22:56:49
|
I'm working on porting oprofile to the Freescale e500 processor. I downloaded oprofile-0.8.1, and added the event list for ppc/e500. I added support in arch/ppc/oprofile, and built and installed oprofile on my system. I have two problems: When my system boots, I start oprofile, thusly: opcontrol --init opcontrol --vmlinux=/root/afleming/vmlinux-oprofile --event=CPU_CLK:100000:0:1:1 opcontrol --start This frequently does not actually invoke start in my code. Is there something I am missing? Anyway, if I invoke opcontrol --start again, my debug output indicates that the counters are properly started, and I invoke opcontrol --shutdown I can confirm that /var/lib/oprofile/samples has a large number of entries, but I am unfamiliar with what is normal. opreport exits thusly: opreport error: /var/lib/oprofile/samples/current/{root}/bin/bash/{dep}/{root}/bin/ bash/CPU_CLK.100000.0.all.all.all: Invalid argument It's quite possible that I'm doing something wrong, but I haven't been able to find anything in the documentation which helps me isolate my problem. Also, there does not appear to be any line of code in the oprofile source which prints out "Invalid argument", so I am at a loss on how to proceed. Any ideas? |
From: Prasad V. B. <bprasad@CS.Arizona.EDU> - 2005-04-22 02:37:31
|
Hi, I decreased the cleanup time in the deamon to 60 seconds and after a while ran: "opreport --merge=cpu" and I get the error, "opreport error: sanitize_profile_sample_files(): sample file parsed twice ? sample_filename: File 1: ... File 2: ..." What could have gone wrong ? thanks, Prasad |
From: John L. <le...@mo...> - 2005-04-22 02:42:05
|
On Thu, Apr 21, 2005 at 07:37:17PM -0700, Prasad Venkata Boddupalli wrote: > "opreport --merge=cpu" > > and I get the error, > > "opreport error: sanitize_profile_sample_files(): sample file parsed twice > ? sample_filename: > > File 1: ... > File 2: ..." > > What could have gone wrong ? http://www.catb.org/~esr/faqs/smart-questions.html regards, john |
From: chandraiah g. <cha...@gm...> - 2009-06-05 06:20:43
|
Hi I am getting the following error with opreport. I have run the following commands on the ARM target board. opcontrol --setup --no-vmlinux opcontrol --session-dir=/home/temp --start ..... I have run some applications in between ............. opcontrol --session-dir=/home/temp --stop opcontrol --session-dir=/home/temp --dump opreport --session-dir=/home/temp I am getting the following error after running the last command opreport error: Invalid sample file, bad magic number: /home/sekhar/samples/current/{root}/bin/busybox/{dep}/{kern}/no-vmlinux/TIMER.0.0.1025.0 It would be great if somebody suggests me the reason behind this error. -- Thanks and regards, Chandraiah |
From: Maynard J. <may...@us...> - 2009-06-05 14:13:14
|
chandraiah gobburu wrote: > Hi > > I am getting the following error with opreport. I have run the following > commands on the ARM target board. > opcontrol --setup --no-vmlinux Be sure to do 'opcontrol --reset' before a --start. > opcontrol --session-dir=/home/temp --start > ..... > I have run some applications in between > ............. > opcontrol --session-dir=/home/temp --stop > > opcontrol --session-dir=/home/temp --dump > > opreport --session-dir=/home/temp > > I am getting the following error after running the last command > > opreport error: Invalid sample file, bad magic number: > /home/sekhar/samples/current/{root}/bin/busybox/{dep}/{kern}/no-vmlinux/TIMER.0.0.1025.0 "/home/sekhar"? opreport seems to be using the wrong session-dir. This is may be due to a recently reported bug: (https://sourceforge.net/tracker/?func=detail&aid=2646398&group_id=16191&atid=116191) This was fixed in oprofile CVS on May 13. But if you don't absolutely *need* to use session-dir, I would recommend not using it and letting oprofile store the samples in the default location. Then you don't need to include it on every command. Either way, I suggest re-init'ing your environment as follows: 1. opcontrol --deinit (this may fail with a "device busy" error, in which case you need to add the above --session-dir option to the deinit) 2. rm /root/.oprofile/daemonrc 3. rm -rf /var/lib/oprofile/samples/current (as well as any other dirs you've tried to use as session-dir) -Maynard > > It would be great if somebody suggests me the reason behind this error. > > > > > ------------------------------------------------------------------------ > > ------------------------------------------------------------------------------ > OpenSolaris 2009.06 is a cutting edge operating system for enterprises > looking to deploy the next generation of Solaris that includes the latest > innovations from Sun and the OpenSource community. Download a copy and > enjoy capabilities such as Networking, Storage and Virtualization. > Go to: http://p.sf.net/sfu/opensolaris-get > > > ------------------------------------------------------------------------ > > _______________________________________________ > oprofile-list mailing list > opr...@li... > https://lists.sourceforge.net/lists/listinfo/oprofile-list |
From: chandraiah g. <cha...@gm...> - 2009-06-05 14:30:13
|
Thank you Maynard for your help again. Regards, Chandraiah On Fri, Jun 5, 2009 at 7:25 PM, Maynard Johnson <may...@us...> wrote: > chandraiah gobburu wrote: > > Hi > > > > I am getting the following error with opreport. I have run the following > > commands on the ARM target board. > > opcontrol --setup --no-vmlinux > Be sure to do 'opcontrol --reset' before a --start. > > opcontrol --session-dir=/home/temp --start > > ..... > > I have run some applications in between > > ............. > > opcontrol --session-dir=/home/temp --stop > > > > opcontrol --session-dir=/home/temp --dump > > > > opreport --session-dir=/home/temp > > > > I am getting the following error after running the last command > > > > opreport error: Invalid sample file, bad magic number: > > > /home/sekhar/samples/current/{root}/bin/busybox/{dep}/{kern}/no-vmlinux/TIMER.0.0.1025.0 > "/home/sekhar"? opreport seems to be using the wrong session-dir. This is > may be due to a recently reported bug: > ( > https://sourceforge.net/tracker/?func=detail&aid=2646398&group_id=16191&atid=116191 > ) > This was fixed in oprofile CVS on May 13. But if you don't absolutely > *need* to use session-dir, I would recommend not using it and letting > oprofile store the samples in the default location. Then you don't need to > include it on every command. Either way, I suggest re-init'ing your > environment as follows: > 1. opcontrol --deinit (this may fail with a "device busy" error, in which > case you need to add the above --session-dir option to the deinit) > 2. rm /root/.oprofile/daemonrc > 3. rm -rf /var/lib/oprofile/samples/current (as well as any other dirs > you've tried to use as session-dir) > > -Maynard > > > > > It would be great if somebody suggests me the reason behind this error. > > > > > > > > > > ------------------------------------------------------------------------ > > > > > ------------------------------------------------------------------------------ > > OpenSolaris 2009.06 is a cutting edge operating system for enterprises > > looking to deploy the next generation of Solaris that includes the latest > > innovations from Sun and the OpenSource community. Download a copy and > > enjoy capabilities such as Networking, Storage and Virtualization. > > Go to: http://p.sf.net/sfu/opensolaris-get > > > > > > ------------------------------------------------------------------------ > > > > _______________________________________________ > > oprofile-list mailing list > > opr...@li... > > https://lists.sourceforge.net/lists/listinfo/oprofile-list > > -- Thanks and regards, Chandraiah |
From: <kot...@ya...> - 2009-06-19 06:43:41
|
Dear ALL, i am facing following problem while testing oprofile for mpcore architecture on linux-2.6.23 kernle with oprofile-0.9.4 userland tool. The error description is given below. i am able start oprofile successfully. but analysing the profiledata with opreport tool is giving the following error. -bash-3.2# opreport -d opreport error: /var/lib/oprofile/samples/current/{root}/lib/sonyld.so/{dep}/{root}/lib/sonyld.so/CPU_CYCLES.100000.0.all.all.all: Invalid argument any help is greatly appreciated. Thanks in advance, regards, koteswararao. |
From: Maynard J. <may...@us...> - 2009-06-19 21:44:58
|
kot...@ya... wrote: > Dear ALL, > > i am facing following problem while testing oprofile for mpcore architecture on linux-2.6.23 kernle with oprofile-0.9.4 userland tool. > > The error description is given below. > i am able start oprofile successfully. but analysing the profiledata with opreport tool > is giving the following error. > > -bash-3.2# opreport -d > opreport error: /var/lib/oprofile/samples/current/{root}/lib/sonyld.so/{dep}/{root}/lib/sonyld.so/CPU_CYCLES.100000.0.all.all.all: Invalid argument Here are a couple things to try: 1. Make sure to do 'opcontrol --reset' before starting oprofile. 2. Look at /var/lib/oprofile/samples/oprofiled.log; if you see event buffer or cpu buffer overflows, you might want to try the patch I just posted to the list today ([PATCH] Handle bad samples from kernel due to overflows); or just crank down your sampling rate until you don't see anymore overflows in the log. -Maynard > > any help is greatly appreciated. > > Thanks in advance, > > regards, > koteswararao. > > > ------------------------------------------------------------------------------ > Crystal Reports - New Free Runtime and 30 Day Trial > Check out the new simplified licensing option that enables unlimited > royalty-free distribution of the report engine for externally facing > server and web deployment. > http://p.sf.net/sfu/businessobjects > _______________________________________________ > oprofile-list mailing list > opr...@li... > https://lists.sourceforge.net/lists/listinfo/oprofile-list |
From: durga p. <dur...@gm...> - 2011-04-27 11:00:19
|
Hi All , I am trying to cross compile the oprofile 0.9.6 for ARMv7 for cortex A9 and it is success. I am facing issue while generating the report I am running the oprofile on the target on timer mode with the following command. *# insmod oprofile.ko timer=1* Insmod is success and it gives the following output * oprofile: using arm/armv7-ca9 oprofile: using timer interrupt.* I am running the following command in the target for the oprofile. *# opcontrol --start --no-vmlinux* /usr/bin/opcontrol: line 2071: id: not found sh: 0: unknown operand /usr/bin/opcontrol: line 2100: id: not found sh: 0: unknown operand Using 2.6+ OProfile kernel interface. Using log file /var/lib/oprofile/samples/oprofiled.log Daemon started. Profiler running. ps commad will display the daemon. I ran my simple application and after that I dumped . *#opcontrol --dump #opcontrol --stop* After stoppping the profiler, I am generating the opreport with following command its failing. *# opreport -l* I am getting the following error. * opreport error: Invalid sample file, bad magic number: /var/lib/oprofile/samples/current/{kern}/no-v mlinux/{dep}/{kern}/no-vmlinux/TIMER.0.0.all.all.all* when I used *oparchive* also I am getting the same error. *# oparchive -o /home/durga/ oparchive error: Invalid sample file, bad magic number: /var/lib/oprofile/samples/current/{kern}/no- vmlinux/{dep}/{kern}/no-vmlinux/TIMER.0.0.all.all.all* Also I want to analyze the opreport on the host PC by transferring the files from the target to host. how can I do that? Is there any application to analyze the file generated by the oprofiler on the host PC ? It would be great if somebody suggests me the reason behind the above error. Thanks in Advance, Durga Prasad |
From: Maynard J. <may...@us...> - 2011-04-27 23:14:00
|
durga prasad wrote: > Hi All , > > I am trying to cross compile the oprofile 0.9.6 for ARMv7 for cortex A9 and > it is success. > I am facing issue while generating the report > > I am running the oprofile on the target on timer mode with the following > command. > > *# insmod oprofile.ko timer=1* > > Insmod is success and it gives the following output > * > oprofile: using arm/armv7-ca9 The message above implies that your kernel supports your processor. As I've said before, if you upgrade your oprofile, you'll have full support for cortex A9 and won't have to use timer mode. > oprofile: using timer interrupt.* > > I am running the following command in the target for the oprofile. > > *# opcontrol --start --no-vmlinux* > /usr/bin/opcontrol: line 2071: id: not found So you installed oprofile in /usr on your target? Not being embedded developer, I have to ask . . . is that typical? > sh: 0: unknown operand > /usr/bin/opcontrol: line 2100: id: not found > sh: 0: unknown operand I've never seen/heard of this error before. Pull the latest oprofile source and build/install it. If you still get the error, then let us know. > Using 2.6+ OProfile kernel interface. > Using log file /var/lib/oprofile/samples/oprofiled.log > Daemon started. > Profiler running. > > ps commad will display the daemon. > > I ran my simple application and after that I dumped . > > *#opcontrol --dump > #opcontrol --stop* > > After stoppping the profiler, I am generating the opreport with following > command its failing. > > *# opreport -l* > > I am getting the following error. > * > opreport error: Invalid sample file, bad magic number: > /var/lib/oprofile/samples/current/{kern}/no-v > mlinux/{dep}/{kern}/no-vmlinux/TIMER.0.0.all.all.all* You probably have old sample data taken from an older, incompatible version of oprofile. Be sure to use 'opcontrol --reset' at the beginning of your profile runs to clear out old profile data. > > when I used *oparchive* also I am getting the same error. > > *# oparchive -o /home/durga/ > oparchive error: Invalid sample file, bad magic number: > /var/lib/oprofile/samples/current/{kern}/no- > vmlinux/{dep}/{kern}/no-vmlinux/TIMER.0.0.all.all.all* > > Also I want to analyze the opreport on the host PC by transferring the files > from the target to host. how can I do that? > Is there any application to analyze the file generated by the oprofiler on > the host PC ? There are sections in the user manual (see our website) on the topics of oparchive and opimport. Also see the mailing list archives (http://marc.info/?l=oprofile-list) and look for the topic "Running oprofile on embedded systems" from June, 2008. -Maynard > > It would be great if somebody suggests me the reason behind the above error. > > > Thanks in Advance, > Durga Prasad > > > > > ------------------------------------------------------------------------------ > WhatsUp Gold - Download Free Network Management Software > The most intuitive, comprehensive, and cost-effective network > management toolset available today. Delivers lowest initial > acquisition cost and overall TCO of any competing solution. > http://p.sf.net/sfu/whatsupgold-sd > > > > _______________________________________________ > oprofile-list mailing list > opr...@li... > https://lists.sourceforge.net/lists/listinfo/oprofile-list |
From: durga p. <dur...@gm...> - 2011-04-28 02:10:13
|
Hi Maynard, Thanks for your reply. Actually I downloaded the oprofile from git repository only.The current version I am running on my target is as below. *# opcontrol -v opcontrol: oprofile 0.9.7git compiled on Apr 25 2011 16:54:12* Initially I tried to run the oprofile 0.9.7 git in normal mode using hardware counter .As it is not working in that mode I am running oprofile in timer mode. When I run the oprofile in normal mode the oprofiled daemon is not starting and it always gives error like unable to find the events and unitmask. Also I am using opcontrol --reset every time before start of the opcntrol and still I am getting the same error for opreport. when I open the log file using the cat command *# cat /var/lib/oprofile/samples/oprofiled.log* *oprofiled: open of /var/lib/oprofile/samples//current/{kern}/no-vmlinux/{dep}/{kern}/no-vmlinux/TIM ER.0.0.all.all.all failed: Invalid argument* The total log is filled with the above error. I copied the binaries to /usr/bin/ of the target.Do I need to copy any libraries to the target. Please let me any other information is required regarding this error. Regards Durga Prasad On Thu, Apr 28, 2011 at 8:14 AM, Maynard Johnson <may...@us...>wrote: > durga prasad wrote: > > Hi All , > > > > I am trying to cross compile the oprofile 0.9.6 for ARMv7 for cortex A9 > and > > it is success. > > I am facing issue while generating the report > > > > I am running the oprofile on the target on timer mode with the following > > command. > > > > *# insmod oprofile.ko timer=1* > > > > Insmod is success and it gives the following output > > * > > oprofile: using arm/armv7-ca9 > The message above implies that your kernel supports your processor. As > I've said before, if you upgrade your oprofile, you'll have full support for > cortex A9 and won't have to use timer mode. > > > oprofile: using timer interrupt.* > > > > I am running the following command in the target for the oprofile. > > > > *# opcontrol --start --no-vmlinux* > > /usr/bin/opcontrol: line 2071: id: not found > So you installed oprofile in /usr on your target? Not being embedded > developer, I have to ask . . . is that typical? > > sh: 0: unknown operand > > /usr/bin/opcontrol: line 2100: id: not found > > sh: 0: unknown operand > > I've never seen/heard of this error before. Pull the latest oprofile > source and build/install it. If you still get the error, then let us know. > > > Using 2.6+ OProfile kernel interface. > > Using log file /var/lib/oprofile/samples/oprofiled.log > > Daemon started. > > Profiler running. > > > > ps commad will display the daemon. > > > > I ran my simple application and after that I dumped . > > > > *#opcontrol --dump > > #opcontrol --stop* > > > > After stoppping the profiler, I am generating the opreport with following > > command its failing. > > > > *# opreport -l* > > > > I am getting the following error. > > * > > opreport error: Invalid sample file, bad magic number: > > /var/lib/oprofile/samples/current/{kern}/no-v > > mlinux/{dep}/{kern}/no-vmlinux/TIMER.0.0.all.all.all* > > You probably have old sample data taken from an older, incompatible version > of oprofile. Be sure to use 'opcontrol --reset' at the beginning of your > profile runs to clear out old profile data. > > > > > when I used *oparchive* also I am getting the same error. > > > > *# oparchive -o /home/durga/ > > oparchive error: Invalid sample file, bad magic number: > > /var/lib/oprofile/samples/current/{kern}/no- > > vmlinux/{dep}/{kern}/no-vmlinux/TIMER.0.0.all.all.all* > > > > Also I want to analyze the opreport on the host PC by transferring the > files > > from the target to host. how can I do that? > > Is there any application to analyze the file generated by the oprofiler > on > > the host PC ? > > There are sections in the user manual (see our website) on the topics of > oparchive and opimport. Also see the mailing list archives ( > http://marc.info/?l=oprofile-list) and look for the topic "Running > oprofile on embedded systems" from June, 2008. > > -Maynard > > > > > It would be great if somebody suggests me the reason behind the above > error. > > > > > > Thanks in Advance, > > Durga Prasad > > > > > > > > > > > ------------------------------------------------------------------------------ > > WhatsUp Gold - Download Free Network Management Software > > The most intuitive, comprehensive, and cost-effective network > > management toolset available today. Delivers lowest initial > > acquisition cost and overall TCO of any competing solution. > > http://p.sf.net/sfu/whatsupgold-sd > > > > > > > > _______________________________________________ > > oprofile-list mailing list > > opr...@li... > > https://lists.sourceforge.net/lists/listinfo/oprofile-list > > -- regards prasad..... |
From: Maynard J. <may...@us...> - 2011-04-28 14:42:44
|
On 04/27/2011 9:10 PM, durga prasad wrote: > Hi Maynard, > > Thanks for your reply. > > Actually I downloaded the oprofile from git repository only.The current version > I am running on my target is as below. > > *# opcontrol -v > opcontrol: oprofile 0.9.7git compiled on Apr 25 2011 16:54:12* > > Initially I tried to run the oprofile 0.9.7 git in normal mode using hardware > counter .As it is not working in that mode I am running oprofile in timer mode. > > When I run the oprofile in normal mode the oprofiled daemon is not starting and > it always gives error like unable to find the events and unitmask. > > Also I am using opcontrol --reset every time before start of the opcntrol and > still I am getting the same error for opreport. > > when I open the log file using the cat command > *# cat /var/lib/oprofile/samples/oprofiled.log* > *oprofiled: open of > /var/lib/oprofile/samples//current/{kern}/no-vmlinux/{dep}/{kern}/no-vmlinux/TIM > ER.0.0.all.all.all failed: Invalid argument* > > The total log is filled with the above error. > > I copied the binaries to /usr/bin/ of the target.Do I need to copy any libraries > to the target. That's definitely *not* sufficient. I suggest you do a build on your host machine and configure with '--prefix=<my-oprof-install-dir>'. After building, do a 'make install', then tar up the <my-oprof-install-dir> and move it over to your target. You certainly had pieces missing that would have prevented you from using event-based profiling, so you shouldn't have to do timer-based profiling once it's set up right on the target. As for all the errors in the log, that also may have something to do with missing stuff from the install -- although, I'm not sure. So on your target, do: 1. opcontrol --deinit 2. opcontrol --reset 3. delete oprofile binaries in /usr/bin 4. delete the oprofiled log 5. delete /root/.oprofile/daemonrc 6. extract the tar file from your host containing <my-oprof-install-dir> 7. start over again with opcontrol setup, start, etc. -Maynard > > Please let me any other information is required regarding this error. > > > Regards > Durga Prasad > > On Thu, Apr 28, 2011 at 8:14 AM, Maynard Johnson <may...@us... > <mailto:may...@us...>> wrote: > > durga prasad wrote: > > Hi All , > > > > I am trying to cross compile the oprofile 0.9.6 for ARMv7 for cortex A9 and > > it is success. > > I am facing issue while generating the report > > > > I am running the oprofile on the target on timer mode with the following > > command. > > > > *# insmod oprofile.ko timer=1* > > > > Insmod is success and it gives the following output > > * > > oprofile: using arm/armv7-ca9 > The message above implies that your kernel supports your processor. As I've > said before, if you upgrade your oprofile, you'll have full support for > cortex A9 and won't have to use timer mode. > > > oprofile: using timer interrupt.* > > > > I am running the following command in the target for the oprofile. > > > > *# opcontrol --start --no-vmlinux* > > /usr/bin/opcontrol: line 2071: id: not found > So you installed oprofile in /usr on your target? Not being embedded > developer, I have to ask . . . is that typical? > > sh: 0: unknown operand > > /usr/bin/opcontrol: line 2100: id: not found > > sh: 0: unknown operand > > I've never seen/heard of this error before. Pull the latest oprofile source > and build/install it. If you still get the error, then let us know. > > > Using 2.6+ OProfile kernel interface. > > Using log file /var/lib/oprofile/samples/oprofiled.log > > Daemon started. > > Profiler running. > > > > ps commad will display the daemon. > > > > I ran my simple application and after that I dumped . > > > > *#opcontrol --dump > > #opcontrol --stop* > > > > After stoppping the profiler, I am generating the opreport with following > > command its failing. > > > > *# opreport -l* > > > > I am getting the following error. > > * > > opreport error: Invalid sample file, bad magic number: > > /var/lib/oprofile/samples/current/{kern}/no-v > > mlinux/{dep}/{kern}/no-vmlinux/TIMER.0.0.all.all.all* > > You probably have old sample data taken from an older, incompatible version > of oprofile. Be sure to use 'opcontrol --reset' at the beginning of your > profile runs to clear out old profile data. > > > > > when I used *oparchive* also I am getting the same error. > > > > *# oparchive -o /home/durga/ > > oparchive error: Invalid sample file, bad magic number: > > /var/lib/oprofile/samples/current/{kern}/no- > > vmlinux/{dep}/{kern}/no-vmlinux/TIMER.0.0.all.all.all* > > > > Also I want to analyze the opreport on the host PC by transferring the files > > from the target to host. how can I do that? > > Is there any application to analyze the file generated by the oprofiler on > > the host PC ? > > There are sections in the user manual (see our website) on the topics of > oparchive and opimport. Also see the mailing list archives > (http://marc.info/?l=oprofile-list) and look for the topic "Running oprofile > on embedded systems" from June, 2008. > > -Maynard > > > > > It would be great if somebody suggests me the reason behind the above error. > > > > > > Thanks in Advance, > > Durga Prasad > > > > > > > > > > ------------------------------------------------------------------------------ > > WhatsUp Gold - Download Free Network Management Software > > The most intuitive, comprehensive, and cost-effective network > > management toolset available today. Delivers lowest initial > > acquisition cost and overall TCO of any competing solution. > > http://p.sf.net/sfu/whatsupgold-sd > > > > > > > > _______________________________________________ > > oprofile-list mailing list > > opr...@li... > <mailto:opr...@li...> > > https://lists.sourceforge.net/lists/listinfo/oprofile-list > > > > > -- > regards > prasad..... |
From: durga p. <dur...@gm...> - 2011-04-29 13:43:03
|
Hi Maynad, Thanks for your reply. oprofile on the target is working after copying all binaries and libraries to the target(Arm-cortexA9). I can run oprofile only in timer mode. But if I run oprofile in using hardware performance counter its failing. I am using the following commands to run oprofile in normal mode *# opcontrol -v* opcontrol: oprofile 0.9.7git compiled on Apr 29 2011 11:00:14 On the target always opcontrol --setup fails with below error, I am manually creating the directory /dev/oprofile and mounting the oprofilefs *# opcontrol --no-vmlinux* When I set the events as below I am getting error *# opcontrol --event=CPU_CYCLES:64:0x00:1:1* /opt/oprofile/bin/opcontrol: line 2071: id: not found sh: 0: unknown operand /opt/oprofile/bin/opcontrol: line 2100: id: not found sh: 0: unknown operand /opt/oprofile/bin/opcontrol: line 1: seq: not found /opt/oprofile/bin/opcontrol: line 1: seq: not found /opt/oprofile/bin/opcontrol: line 2103: seq: not found After that I treid to start oprofile . *# opcontrol --start* /opt/oprofile/bin/opcontrol: line 2071: id: not found sh: 0: unknown operand /opt/oprofile/bin/opcontrol: line 2100: id: not found sh: 0: unknown operand /opt/oprofile/bin/opcontrol: line 2102: seq: not found /opt/oprofile/bin/opcontrol: line 2102: seq: not found /opt/oprofile/bin/opcontrol: line 2103: seq: not found /opt/oprofile/bin/opcontrol: line 2103: seq: not found *oprofiled: no events specified.* Usage: oprofiled [OPTION...] --session-dir=/var/lib/oprofile place sample database in dir instead of default location -r, --kernel-range=start-end Kernel VMA range -k, --vmlinux=file vmlinux kernel image --no-vmlinux vmlinux kernel image file not available --xen-range=start-end Xen VMA range --xen-image=file Xen image --image=profile these comma separated image image name filter --separate-lib=[0|1] separate library samples for each distinct application --separate-kernel=[0|1] separate kernel samples for each distinct application --separate-thread=[0|1] thread-profiling mode --separate-cpu=[0|1] separate samples for each CPU -e, --events=[events] events list -v, --version show version -V, --verbose=all,sfile,arcs,samples,module,misc be verbose in log file -x, --ext-feature=<extended-feature-name>:[args] enable extended feature Help options: -?, --help Show this help message --usage Display brief usage message Couldn't start oprofiled. Check the log file "/var/lib/oprofile/samples/oprofiled.log" and kernel syslog The log file "/var/lib/oprofile/samples/oprofiled.log" is also not created. I tried running daemon *#oprofiled --events=CPU_CYCLES:64:0x00:1:1 --no-vmlinux --kernel-range 0xc002d000,0xc046f000 -V=all* oprofiled: malformed events passed on the command line But ophelp is showing all the events. So the daemon is also not starting and its failing to profiling in normal mode for Armv7-ca9 Another issue is: I can able to the run the oprofile in the taget(Arm-cortexA9) in timer mode As I am running the oprofile on the target,I don't have vmlinux binary on the target.It is flashed in the nand.In this case how can I specify the kernel to profile. How can I profile the kernel object file(.ko files) using oprofile.In manual it just mentioned to use -p option. It is not very much clear for profiling a single or multiple * ".ko"* files. Thanks in advance, Durga Prasad On Thu, Apr 28, 2011 at 11:42 PM, Maynard Johnson <may...@us...>wrote: > On 04/27/2011 9:10 PM, durga prasad wrote: > >> Hi Maynard, >> >> Thanks for your reply. >> >> Actually I downloaded the oprofile from git repository only.The current >> version >> I am running on my target is as below. >> >> *# opcontrol -v >> opcontrol: oprofile 0.9.7git compiled on Apr 25 2011 16:54:12* >> >> Initially I tried to run the oprofile 0.9.7 git in normal mode using >> hardware >> counter .As it is not working in that mode I am running oprofile in timer >> mode. >> >> When I run the oprofile in normal mode the oprofiled daemon is not >> starting and >> it always gives error like unable to find the events and unitmask. >> >> Also I am using opcontrol --reset every time before start of the opcntrol >> and >> still I am getting the same error for opreport. >> >> when I open the log file using the cat command >> *# cat /var/lib/oprofile/samples/oprofiled.log* >> *oprofiled: open of >> >> /var/lib/oprofile/samples//current/{kern}/no-vmlinux/{dep}/{kern}/no-vmlinux/TIM >> ER.0.0.all.all.all failed: Invalid argument* >> >> The total log is filled with the above error. >> >> I copied the binaries to /usr/bin/ of the target.Do I need to copy any >> libraries >> to the target. >> > That's definitely *not* sufficient. I suggest you do a build on your host > machine and configure with '--prefix=<my-oprof-install-dir>'. After > building, do a 'make install', then tar up the <my-oprof-install-dir> and > move it over to your target. You certainly had pieces missing that would > have prevented you from using event-based profiling, so you shouldn't have > to do timer-based profiling once it's set up right on the target. As for > all the errors in the log, that also may have something to do with missing > stuff from the install -- although, I'm not sure. So on your target, do: > 1. opcontrol --deinit > 2. opcontrol --reset > 3. delete oprofile binaries in /usr/bin > 4. delete the oprofiled log > 5. delete /root/.oprofile/daemonrc > 6. extract the tar file from your host containing <my-oprof-install-dir> > 7. start over again with opcontrol setup, start, etc. > > -Maynard > > >> Please let me any other information is required regarding this error. >> >> >> Regards >> Durga Prasad >> >> On Thu, Apr 28, 2011 at 8:14 AM, Maynard Johnson <may...@us... >> <mailto:may...@us...>> wrote: >> >> durga prasad wrote: >> > Hi All , >> > >> > I am trying to cross compile the oprofile 0.9.6 for ARMv7 for cortex >> A9 and >> > it is success. >> > I am facing issue while generating the report >> > >> > I am running the oprofile on the target on timer mode with the >> following >> > command. >> > >> > *# insmod oprofile.ko timer=1* >> > >> > Insmod is success and it gives the following output >> > * >> > oprofile: using arm/armv7-ca9 >> The message above implies that your kernel supports your processor. As >> I've >> said before, if you upgrade your oprofile, you'll have full support for >> cortex A9 and won't have to use timer mode. >> >> > oprofile: using timer interrupt.* >> > >> > I am running the following command in the target for the oprofile. >> > >> > *# opcontrol --start --no-vmlinux* >> > /usr/bin/opcontrol: line 2071: id: not found >> So you installed oprofile in /usr on your target? Not being embedded >> developer, I have to ask . . . is that typical? >> > sh: 0: unknown operand >> > /usr/bin/opcontrol: line 2100: id: not found >> > sh: 0: unknown operand >> >> I've never seen/heard of this error before. Pull the latest oprofile >> source >> and build/install it. If you still get the error, then let us know. >> >> > Using 2.6+ OProfile kernel interface. >> > Using log file /var/lib/oprofile/samples/oprofiled.log >> > Daemon started. >> > Profiler running. >> > >> > ps commad will display the daemon. >> > >> > I ran my simple application and after that I dumped . >> > >> > *#opcontrol --dump >> > #opcontrol --stop* >> > >> > After stoppping the profiler, I am generating the opreport with >> following >> > command its failing. >> > >> > *# opreport -l* >> > >> > I am getting the following error. >> > * >> > opreport error: Invalid sample file, bad magic number: >> > /var/lib/oprofile/samples/current/{kern}/no-v >> > mlinux/{dep}/{kern}/no-vmlinux/TIMER.0.0.all.all.all* >> >> You probably have old sample data taken from an older, incompatible >> version >> of oprofile. Be sure to use 'opcontrol --reset' at the beginning of >> your >> profile runs to clear out old profile data. >> >> > >> > when I used *oparchive* also I am getting the same error. >> > >> > *# oparchive -o /home/durga/ >> > oparchive error: Invalid sample file, bad magic number: >> > /var/lib/oprofile/samples/current/{kern}/no- >> > vmlinux/{dep}/{kern}/no-vmlinux/TIMER.0.0.all.all.all* >> > >> > Also I want to analyze the opreport on the host PC by transferring >> the files >> > from the target to host. how can I do that? >> > Is there any application to analyze the file generated by the >> oprofiler on >> > the host PC ? >> >> There are sections in the user manual (see our website) on the topics >> of >> oparchive and opimport. Also see the mailing list archives >> (http://marc.info/?l=oprofile-list) and look for the topic "Running >> oprofile >> on embedded systems" from June, 2008. >> >> -Maynard >> >> > >> > It would be great if somebody suggests me the reason behind the >> above error. >> > >> > >> > Thanks in Advance, >> > Durga Prasad >> > >> > >> > >> > >> > >> ------------------------------------------------------------------------------ >> > WhatsUp Gold - Download Free Network Management Software >> > The most intuitive, comprehensive, and cost-effective network >> > management toolset available today. Delivers lowest initial >> > acquisition cost and overall TCO of any competing solution. >> > http://p.sf.net/sfu/whatsupgold-sd >> > >> > >> > >> > _______________________________________________ >> > oprofile-list mailing list >> > opr...@li... >> <mailto:opr...@li...> >> >> > https://lists.sourceforge.net/lists/listinfo/oprofile-list >> >> >> >> >> -- >> regards >> prasad..... >> > > -- regards prasad..... |
From: Maynard J. <may...@us...> - 2011-04-29 15:38:37
|
durga prasad wrote: > Hi Maynad, > > Thanks for your reply. > > oprofile on the target is working after copying all binaries and libraries > to the target(Arm-cortexA9). > I can run oprofile only in timer mode. > But if I run oprofile in using hardware performance counter its failing. > > I am using the following commands to run oprofile in normal mode > > *# opcontrol -v* > opcontrol: oprofile 0.9.7git compiled on Apr 29 2011 11:00:14 > > On the target always opcontrol --setup fails with below error, > I am manually creating the directory /dev/oprofile and mounting the > oprofilefs > > *# opcontrol --no-vmlinux* > > When I set the events as below I am getting error > > *# opcontrol --event=CPU_CYCLES:64:0x00:1:1* > > /opt/oprofile/bin/opcontrol: line 2071: id: not found Durga, According to what's currently in our git repo, line 2071 is: BINDIR="/usr/bin" Sorry, but it's a mystery to me why this would fail on your target. You'll have to look at opcontrol and do some debugging on your own. I've added Richard Purdie to cc (who has ARM experience), so maybe he can offer advice. -Maynard > sh: 0: unknown operand > /opt/oprofile/bin/opcontrol: line 2100: id: not found > sh: 0: unknown operand > /opt/oprofile/bin/opcontrol: line 1: seq: not found > /opt/oprofile/bin/opcontrol: line 1: seq: not found > /opt/oprofile/bin/opcontrol: line 2103: seq: not found > > After that I treid to start oprofile . > > *# opcontrol --start* > /opt/oprofile/bin/opcontrol: line 2071: id: not found > sh: 0: unknown operand > /opt/oprofile/bin/opcontrol: line 2100: id: not found > sh: 0: unknown operand > /opt/oprofile/bin/opcontrol: line 2102: seq: not found > /opt/oprofile/bin/opcontrol: line 2102: seq: not found > /opt/oprofile/bin/opcontrol: line 2103: seq: not found > /opt/oprofile/bin/opcontrol: line 2103: seq: not found > *oprofiled: no events specified.* > Usage: oprofiled [OPTION...] > --session-dir=/var/lib/oprofile place sample database in dir > instead of default location > -r, --kernel-range=start-end Kernel VMA range > -k, --vmlinux=file vmlinux kernel image > --no-vmlinux vmlinux kernel image file not available > --xen-range=start-end Xen VMA range > --xen-image=file Xen image > --image=profile these comma separated image image name > filter > --separate-lib=[0|1] separate library samples for each distinct > application > --separate-kernel=[0|1] separate kernel samples for each distinct > application > --separate-thread=[0|1] thread-profiling mode > --separate-cpu=[0|1] separate samples for each CPU > -e, --events=[events] events list > -v, --version show version > -V, --verbose=all,sfile,arcs,samples,module,misc be verbose in > log file > -x, --ext-feature=<extended-feature-name>:[args] enable extended > feature > > Help options: > -?, --help Show this help message > --usage Display brief usage message > Couldn't start oprofiled. > Check the log file "/var/lib/oprofile/samples/oprofiled.log" and kernel > syslog > > The log file "/var/lib/oprofile/samples/oprofiled.log" is also not created. > > I tried running daemon > > *#oprofiled --events=CPU_CYCLES:64:0x00:1:1 --no-vmlinux --kernel-range > 0xc002d000,0xc046f000 -V=all* > oprofiled: malformed events passed on the command line > > But ophelp is showing all the events. > > So the daemon is also not starting and its failing to profiling in normal > mode for Armv7-ca9 > > Another issue is: > I can able to the run the oprofile in the taget(Arm-cortexA9) in timer mode > > As I am running the oprofile on the target,I don't have vmlinux binary on > the target.It is flashed in the nand.In this case how can I specify the > kernel to profile. > > How can I profile the kernel object file(.ko files) using oprofile.In manual > it just mentioned to use -p option. > > It is not very much clear for profiling a single or multiple * ".ko"* files. > > > Thanks in advance, > Durga Prasad > > > On Thu, Apr 28, 2011 at 11:42 PM, Maynard Johnson <may...@us...>wrote: > >> On 04/27/2011 9:10 PM, durga prasad wrote: >> >>> Hi Maynard, >>> >>> Thanks for your reply. >>> >>> Actually I downloaded the oprofile from git repository only.The current >>> version >>> I am running on my target is as below. >>> >>> *# opcontrol -v >>> opcontrol: oprofile 0.9.7git compiled on Apr 25 2011 16:54:12* >>> >>> Initially I tried to run the oprofile 0.9.7 git in normal mode using >>> hardware >>> counter .As it is not working in that mode I am running oprofile in timer >>> mode. >>> >>> When I run the oprofile in normal mode the oprofiled daemon is not >>> starting and >>> it always gives error like unable to find the events and unitmask. >>> >>> Also I am using opcontrol --reset every time before start of the opcntrol >>> and >>> still I am getting the same error for opreport. >>> >>> when I open the log file using the cat command >>> *# cat /var/lib/oprofile/samples/oprofiled.log* >>> *oprofiled: open of >>> >>> /var/lib/oprofile/samples//current/{kern}/no-vmlinux/{dep}/{kern}/no-vmlinux/TIM >>> ER.0.0.all.all.all failed: Invalid argument* >>> >>> The total log is filled with the above error. >>> >>> I copied the binaries to /usr/bin/ of the target.Do I need to copy any >>> libraries >>> to the target. >>> >> That's definitely *not* sufficient. I suggest you do a build on your host >> machine and configure with '--prefix=<my-oprof-install-dir>'. After >> building, do a 'make install', then tar up the <my-oprof-install-dir> and >> move it over to your target. You certainly had pieces missing that would >> have prevented you from using event-based profiling, so you shouldn't have >> to do timer-based profiling once it's set up right on the target. As for >> all the errors in the log, that also may have something to do with missing >> stuff from the install -- although, I'm not sure. So on your target, do: >> 1. opcontrol --deinit >> 2. opcontrol --reset >> 3. delete oprofile binaries in /usr/bin >> 4. delete the oprofiled log >> 5. delete /root/.oprofile/daemonrc >> 6. extract the tar file from your host containing <my-oprof-install-dir> >> 7. start over again with opcontrol setup, start, etc. >> >> -Maynard >> >> >>> Please let me any other information is required regarding this error. >>> >>> >>> Regards >>> Durga Prasad >>> >>> On Thu, Apr 28, 2011 at 8:14 AM, Maynard Johnson <may...@us... >>> <mailto:may...@us...>> wrote: >>> >>> durga prasad wrote: >>> > Hi All , >>> > >>> > I am trying to cross compile the oprofile 0.9.6 for ARMv7 for cortex >>> A9 and >>> > it is success. >>> > I am facing issue while generating the report >>> > >>> > I am running the oprofile on the target on timer mode with the >>> following >>> > command. >>> > >>> > *# insmod oprofile.ko timer=1* >>> > >>> > Insmod is success and it gives the following output >>> > * >>> > oprofile: using arm/armv7-ca9 >>> The message above implies that your kernel supports your processor. As >>> I've >>> said before, if you upgrade your oprofile, you'll have full support for >>> cortex A9 and won't have to use timer mode. >>> >>> > oprofile: using timer interrupt.* >>> > >>> > I am running the following command in the target for the oprofile. >>> > >>> > *# opcontrol --start --no-vmlinux* >>> > /usr/bin/opcontrol: line 2071: id: not found >>> So you installed oprofile in /usr on your target? Not being embedded >>> developer, I have to ask . . . is that typical? >>> > sh: 0: unknown operand >>> > /usr/bin/opcontrol: line 2100: id: not found >>> > sh: 0: unknown operand >>> >>> I've never seen/heard of this error before. Pull the latest oprofile >>> source >>> and build/install it. If you still get the error, then let us know. >>> >>> > Using 2.6+ OProfile kernel interface. >>> > Using log file /var/lib/oprofile/samples/oprofiled.log >>> > Daemon started. >>> > Profiler running. >>> > >>> > ps commad will display the daemon. >>> > >>> > I ran my simple application and after that I dumped . >>> > >>> > *#opcontrol --dump >>> > #opcontrol --stop* >>> > >>> > After stoppping the profiler, I am generating the opreport with >>> following >>> > command its failing. >>> > >>> > *# opreport -l* >>> > >>> > I am getting the following error. >>> > * >>> > opreport error: Invalid sample file, bad magic number: >>> > /var/lib/oprofile/samples/current/{kern}/no-v >>> > mlinux/{dep}/{kern}/no-vmlinux/TIMER.0.0.all.all.all* >>> >>> You probably have old sample data taken from an older, incompatible >>> version >>> of oprofile. Be sure to use 'opcontrol --reset' at the beginning of >>> your >>> profile runs to clear out old profile data. >>> >>> > >>> > when I used *oparchive* also I am getting the same error. >>> > >>> > *# oparchive -o /home/durga/ >>> > oparchive error: Invalid sample file, bad magic number: >>> > /var/lib/oprofile/samples/current/{kern}/no- >>> > vmlinux/{dep}/{kern}/no-vmlinux/TIMER.0.0.all.all.all* >>> > >>> > Also I want to analyze the opreport on the host PC by transferring >>> the files >>> > from the target to host. how can I do that? >>> > Is there any application to analyze the file generated by the >>> oprofiler on >>> > the host PC ? >>> >>> There are sections in the user manual (see our website) on the topics >>> of >>> oparchive and opimport. Also see the mailing list archives >>> (http://marc.info/?l=oprofile-list) and look for the topic "Running >>> oprofile >>> on embedded systems" from June, 2008. >>> >>> -Maynard >>> >>> > >>> > It would be great if somebody suggests me the reason behind the >>> above error. >>> > >>> > >>> > Thanks in Advance, >>> > Durga Prasad >>> > >>> > >>> > >>> > >>> > >>> ------------------------------------------------------------------------------ >>> > WhatsUp Gold - Download Free Network Management Software >>> > The most intuitive, comprehensive, and cost-effective network >>> > management toolset available today. Delivers lowest initial >>> > acquisition cost and overall TCO of any competing solution. >>> > http://p.sf.net/sfu/whatsupgold-sd >>> > >>> > >>> > >>> > _______________________________________________ >>> > oprofile-list mailing list >>> > opr...@li... >>> <mailto:opr...@li...> >>> >>> > https://lists.sourceforge.net/lists/listinfo/oprofile-list >>> >>> >>> >>> >>> -- >>> regards >>> prasad..... >>> >> >> > > |
From: Richard P. <rp...@rp...> - 2011-05-03 09:54:44
|
On Fri, 2011-04-29 at 10:38 -0500, Maynard Johnson wrote: > durga prasad wrote: > > Hi Maynad, > > > > Thanks for your reply. > > > > oprofile on the target is working after copying all binaries and libraries > > to the target(Arm-cortexA9). > > I can run oprofile only in timer mode. > > But if I run oprofile in using hardware performance counter its failing. > > > > I am using the following commands to run oprofile in normal mode > > > > *# opcontrol -v* > > opcontrol: oprofile 0.9.7git compiled on Apr 29 2011 11:00:14 > > > > On the target always opcontrol --setup fails with below error, > > I am manually creating the directory /dev/oprofile and mounting the > > oprofilefs > > > > *# opcontrol --no-vmlinux* > > > > When I set the events as below I am getting error > > > > *# opcontrol --event=CPU_CYCLES:64:0x00:1:1* > > > > /opt/oprofile/bin/opcontrol: line 2071: id: not found > Durga, > According to what's currently in our git repo, line 2071 is: > BINDIR="/usr/bin" > > Sorry, but it's a mystery to me why this would fail on your target. You'll have to look at opcontrol and do some debugging on your own. I've added Richard Purdie to cc (who has ARM experience), so maybe he can offer advice. This sounds like its a modified script, or at least not the latest git version of the script hence the line mismatches. It looks like various utilities that the script relies on such as "id" aren't present on this system hence the various errors. You either need to add those utilities or make the script work without them. Cheers, Richard |
From: Maynard J. <may...@us...> - 2011-05-04 16:08:27
|
On 04/29/2011 11:32 AM, durga prasad wrote: > Hi Maynad, > > I have one question,How to profile "ko files" for normal x86 architecture . > Actually that I am not clear from the manual. I was out for several days, so didn't see your message until today, which is why it's best to always keep the list on cc (I've added oprofile-list back to cc). To get symbol information for kernel modules, use the '--image-path' option to opreport, pointing at the root location of your kernel modules (typically, "/lib/modules/`uname -r`"). -Maynard > > Regards, > Durga > > > > On Sat, Apr 30, 2011 at 12:38 AM, Maynard Johnson <may...@us... > <mailto:may...@us...>> wrote: > > durga prasad wrote: > > Hi Maynad, > > > > Thanks for your reply. > > > > oprofile on the target is working after copying all binaries and libraries > > to the target(Arm-cortexA9). > > I can run oprofile only in timer mode. > > But if I run oprofile in using hardware performance counter its failing. > > > > I am using the following commands to run oprofile in normal mode > > > > *# opcontrol -v* > > opcontrol: oprofile 0.9.7git compiled on Apr 29 2011 11:00:14 > > > > On the target always opcontrol --setup fails with below error, > > I am manually creating the directory /dev/oprofile and mounting the > > oprofilefs > > > > *# opcontrol --no-vmlinux* > > > > When I set the events as below I am getting error > > > > *# opcontrol --event=CPU_CYCLES:64:0x00:1:1* > > > > /opt/oprofile/bin/opcontrol: line 2071: id: not found > Durga, > According to what's currently in our git repo, line 2071 is: > BINDIR="/usr/bin" > > Sorry, but it's a mystery to me why this would fail on your target. You'll > have to look at opcontrol and do some debugging on your own. I've added > Richard Purdie to cc (who has ARM experience), so maybe he can offer advice. > > -Maynard > > > sh: 0: unknown operand > > /opt/oprofile/bin/opcontrol: line 2100: id: not found > > sh: 0: unknown operand > > /opt/oprofile/bin/opcontrol: line 1: seq: not found > > /opt/oprofile/bin/opcontrol: line 1: seq: not found > > /opt/oprofile/bin/opcontrol: line 2103: seq: not found > > > > After that I treid to start oprofile . > > > > *# opcontrol --start* > > /opt/oprofile/bin/opcontrol: line 2071: id: not found > > sh: 0: unknown operand > > /opt/oprofile/bin/opcontrol: line 2100: id: not found > > sh: 0: unknown operand > > /opt/oprofile/bin/opcontrol: line 2102: seq: not found > > /opt/oprofile/bin/opcontrol: line 2102: seq: not found > > /opt/oprofile/bin/opcontrol: line 2103: seq: not found > > /opt/oprofile/bin/opcontrol: line 2103: seq: not found > > *oprofiled: no events specified.* > > Usage: oprofiled [OPTION...] > > --session-dir=/var/lib/oprofile place sample database in dir > > instead of default location > > -r, --kernel-range=start-end Kernel VMA range > > -k, --vmlinux=file vmlinux kernel image > > --no-vmlinux vmlinux kernel image file not available > > --xen-range=start-end Xen VMA range > > --xen-image=file Xen image > > --image=profile these comma separated image image name > > filter > > --separate-lib=[0|1] separate library samples for each distinct > > application > > --separate-kernel=[0|1] separate kernel samples for each distinct > > application > > --separate-thread=[0|1] thread-profiling mode > > --separate-cpu=[0|1] separate samples for each CPU > > -e, --events=[events] events list > > -v, --version show version > > -V, --verbose=all,sfile,arcs,samples,module,misc be verbose in > > log file > > -x, --ext-feature=<extended-feature-name>:[args] enable extended > > feature > > > > Help options: > > -?, --help Show this help message > > --usage Display brief usage message > > Couldn't start oprofiled. > > Check the log file "/var/lib/oprofile/samples/oprofiled.log" and kernel > > syslog > > > > The log file "/var/lib/oprofile/samples/oprofiled.log" is also not created. > > > > I tried running daemon > > > > *#oprofiled --events=CPU_CYCLES:64:0x00:1:1 --no-vmlinux --kernel-range > > 0xc002d000,0xc046f000 -V=all* > > oprofiled: malformed events passed on the command line > > > > But ophelp is showing all the events. > > > > So the daemon is also not starting and its failing to profiling in normal > > mode for Armv7-ca9 > > > > Another issue is: > > I can able to the run the oprofile in the taget(Arm-cortexA9) in timer mode > > > > As I am running the oprofile on the target,I don't have vmlinux binary on > > the target.It is flashed in the nand.In this case how can I specify the > > kernel to profile. > > > > How can I profile the kernel object file(.ko files) using oprofile.In manual > > it just mentioned to use -p option. > > > > It is not very much clear for profiling a single or multiple * ".ko"* files. > > > > > > Thanks in advance, > > Durga Prasad > > > > > > On Thu, Apr 28, 2011 at 11:42 PM, Maynard Johnson <may...@us... > <mailto:may...@us...>>wrote: > > > > > On 04/27/2011 9:10 PM, durga prasad wrote: > > > > > >> Hi Maynard, > > >> > > >> Thanks for your reply. > > >> > > >> Actually I downloaded the oprofile from git repository only.The current > > >> version > > >> I am running on my target is as below. > > >> > > >> *# opcontrol -v > > >> opcontrol: oprofile 0.9.7git compiled on Apr 25 2011 16:54:12* > > >> > > >> Initially I tried to run the oprofile 0.9.7 git in normal mode using > > >> hardware > > >> counter .As it is not working in that mode I am running oprofile in timer > > >> mode. > > >> > > >> When I run the oprofile in normal mode the oprofiled daemon is not > > >> starting and > > >> it always gives error like unable to find the events and unitmask. > > >> > > >> Also I am using opcontrol --reset every time before start of the opcntrol > > >> and > > >> still I am getting the same error for opreport. > > >> > > >> when I open the log file using the cat command > > >> *# cat /var/lib/oprofile/samples/oprofiled.log* > > >> *oprofiled: open of > > >> > > >> > /var/lib/oprofile/samples//current/{kern}/no-vmlinux/{dep}/{kern}/no-vmlinux/TIM > > >> ER.0.0.all.all.all failed: Invalid argument* > > >> > > >> The total log is filled with the above error. > > >> > > >> I copied the binaries to /usr/bin/ of the target.Do I need to copy any > > >> libraries > > >> to the target. > > >> > > > That's definitely *not* sufficient. I suggest you do a build on your host > > > machine and configure with '--prefix=<my-oprof-install-dir>'. After > > > building, do a 'make install', then tar up the <my-oprof-install-dir> and > > > move it over to your target. You certainly had pieces missing that would > > > have prevented you from using event-based profiling, so you shouldn't have > > > to do timer-based profiling once it's set up right on the target. As for > > > all the errors in the log, that also may have something to do with missing > > > stuff from the install -- although, I'm not sure. So on your target, do: > > > 1. opcontrol --deinit > > > 2. opcontrol --reset > > > 3. delete oprofile binaries in /usr/bin > > > 4. delete the oprofiled log > > > 5. delete /root/.oprofile/daemonrc > > > 6. extract the tar file from your host containing <my-oprof-install-dir> > > > 7. start over again with opcontrol setup, start, etc. > > > > > > -Maynard > > > > > > > > >> Please let me any other information is required regarding this error. > > >> > > >> > > >> Regards > > >> Durga Prasad > > >> > > >> On Thu, Apr 28, 2011 at 8:14 AM, Maynard Johnson <may...@us... > <mailto:may...@us...> > > >> <mailto:may...@us... <mailto:may...@us...>>> wrote: > > >> > > >> durga prasad wrote: > > >> > Hi All , > > >> > > > >> > I am trying to cross compile the oprofile 0.9.6 for ARMv7 for cortex > > >> A9 and > > >> > it is success. > > >> > I am facing issue while generating the report > > >> > > > >> > I am running the oprofile on the target on timer mode with the > > >> following > > >> > command. > > >> > > > >> > *# insmod oprofile.ko timer=1* > > >> > > > >> > Insmod is success and it gives the following output > > >> > * > > >> > oprofile: using arm/armv7-ca9 > > >> The message above implies that your kernel supports your processor. As > > >> I've > > >> said before, if you upgrade your oprofile, you'll have full support for > > >> cortex A9 and won't have to use timer mode. > > >> > > >> > oprofile: using timer interrupt.* > > >> > > > >> > I am running the following command in the target for the oprofile. > > >> > > > >> > *# opcontrol --start --no-vmlinux* > > >> > /usr/bin/opcontrol: line 2071: id: not found > > >> So you installed oprofile in /usr on your target? Not being embedded > > >> developer, I have to ask . . . is that typical? > > >> > sh: 0: unknown operand > > >> > /usr/bin/opcontrol: line 2100: id: not found > > >> > sh: 0: unknown operand > > >> > > >> I've never seen/heard of this error before. Pull the latest oprofile > > >> source > > >> and build/install it. If you still get the error, then let us know. > > >> > > >> > Using 2.6+ OProfile kernel interface. > > >> > Using log file /var/lib/oprofile/samples/oprofiled.log > > >> > Daemon started. > > >> > Profiler running. > > >> > > > >> > ps commad will display the daemon. > > >> > > > >> > I ran my simple application and after that I dumped . > > >> > > > >> > *#opcontrol --dump > > >> > #opcontrol --stop* > > >> > > > >> > After stoppping the profiler, I am generating the opreport with > > >> following > > >> > command its failing. > > >> > > > >> > *# opreport -l* > > >> > > > >> > I am getting the following error. > > >> > * > > >> > opreport error: Invalid sample file, bad magic number: > > >> > /var/lib/oprofile/samples/current/{kern}/no-v > > >> > mlinux/{dep}/{kern}/no-vmlinux/TIMER.0.0.all.all.all* > > >> > > >> You probably have old sample data taken from an older, incompatible > > >> version > > >> of oprofile. Be sure to use 'opcontrol --reset' at the beginning of > > >> your > > >> profile runs to clear out old profile data. > > >> > > >> > > > >> > when I used *oparchive* also I am getting the same error. > > >> > > > >> > *# oparchive -o /home/durga/ > > >> > oparchive error: Invalid sample file, bad magic number: > > >> > /var/lib/oprofile/samples/current/{kern}/no- > > >> > vmlinux/{dep}/{kern}/no-vmlinux/TIMER.0.0.all.all.all* > > >> > > > >> > Also I want to analyze the opreport on the host PC by transferring > > >> the files > > >> > from the target to host. how can I do that? > > >> > Is there any application to analyze the file generated by the > > >> oprofiler on > > >> > the host PC ? > > >> > > >> There are sections in the user manual (see our website) on the topics > > >> of > > >> oparchive and opimport. Also see the mailing list archives > > >> (http://marc.info/?l=oprofile-list) and look for the topic "Running > > >> oprofile > > >> on embedded systems" from June, 2008. > > >> > > >> -Maynard > > >> > > >> > > > >> > It would be great if somebody suggests me the reason behind the > > >> above error. > > >> > > > >> > > > >> > Thanks in Advance, > > >> > Durga Prasad > > >> > > > >> > > > >> > > > >> > > > >> > > > >> > ------------------------------------------------------------------------------ > > >> > WhatsUp Gold - Download Free Network Management Software > > >> > The most intuitive, comprehensive, and cost-effective network > > >> > management toolset available today. Delivers lowest initial > > >> > acquisition cost and overall TCO of any competing solution. > > >> > http://p.sf.net/sfu/whatsupgold-sd > > >> > > > >> > > > >> > > > >> > _______________________________________________ > > >> > oprofile-list mailing list > > >> > opr...@li... > <mailto:opr...@li...> > > >> <mailto:opr...@li... > <mailto:opr...@li...>> > > >> > > >> > https://lists.sourceforge.net/lists/listinfo/oprofile-list > > >> > > >> > > >> > > >> > > >> -- > > >> regards > > >> prasad..... > > >> > > > > > > > > > > > > > > > -- > regards > prasad..... |
From: Antonio C. <ant...@gm...> - 2011-05-04 13:16:23
|
Hi all, I'm trying to use oprofile, but I'm getting an error. This is a transcript of what I did: $ sudo opcontrol --start Profiler running. $ ./pypy-c -m test.pystone Pystone(1.1) time for 50000 passes = 0.21 This machine benchmarks at 238095 pystones/second $ sudo opcontrol --stop Stopping profiling. $ sudo opcontrol --dump $ opreport -l ./pypy-c Overflow stats not available CPU: Intel Core/i7, speed 1600 MHz (estimated) Counted CPU_CLK_UNHALTED events (Clock cycles when not halted) with a unit mask of 0x00 (No unit mask) count 100000 Counted UOPS_DECODED events (Counts the number of Uops decoded by various subsystems.) with a unit mask of 0x0e (multiple flags) count 800000 opreport error: profile_t::samples_range(): start > end something wrong with kernel or module layout ? please report problem to opr...@li... Note that pypy-c is a python interpreter which contains a JIT compiler, i.e. it produces and execute assembler at runtime. Could it be the reason why opreport is confused? thank you very much, Antonio |
From: Maynard J. <may...@us...> - 2011-05-04 16:29:09
|
On 05/04/2011 8:16 AM, Antonio Cuni wrote: > Hi all, > > I'm trying to use oprofile, but I'm getting an error. This is a transcript of > what I did: > > $ sudo opcontrol --start > Profiler running. > > $ ./pypy-c -m test.pystone > Pystone(1.1) time for 50000 passes = 0.21 > This machine benchmarks at 238095 pystones/second > > $ sudo opcontrol --stop > Stopping profiling. > > $ sudo opcontrol --dump > > $ opreport -l ./pypy-c > Overflow stats not available > CPU: Intel Core/i7, speed 1600 MHz (estimated) > Counted CPU_CLK_UNHALTED events (Clock cycles when not halted) with a unit > mask of 0x00 (No unit mask) count 100000 > Counted UOPS_DECODED events (Counts the number of Uops decoded by various > subsystems.) with a unit mask of 0x0e (multiple flags) count 800000 > opreport error: profile_t::samples_range(): start> end something wrong with > kernel or module layout ? > please report problem to opr...@li... > > > Note that pypy-c is a python interpreter which contains a JIT compiler, i.e. > it produces and execute assembler at runtime. Could it be the reason why > opreport is confused? Antonio, Please do 'opreport -l --verbose=all ./pypy-c > op-verbose.out'. Then go to the bottom of op-verbose.out. What is the name of the symbol being processed when opreport chokes? And what do you see for 'value', 'start', and 'end'? Go backwards in the file to find the last line beginning with "op_bfd ctor". What's the name of the binary file you find on that line? Do 'objdump -t' of that binary and look for the name of the offending symbol. What section is it in? Please attach an 'objdump -h' of that binary to your reply. Try running opreport with '--exclude-symbols=<offending_symbol>'. Does opreport complete successfully now? -Maynard > > thank you very much, > Antonio > > ------------------------------------------------------------------------------ > WhatsUp Gold - Download Free Network Management Software > The most intuitive, comprehensive, and cost-effective network > management toolset available today. Delivers lowest initial > acquisition cost and overall TCO of any competing solution. > http://p.sf.net/sfu/whatsupgold-sd > _______________________________________________ > oprofile-list mailing list > opr...@li... > https://lists.sourceforge.net/lists/listinfo/oprofile-list |
From: Antonio C. <ant...@gm...> - 2011-05-04 16:49:21
Attachments:
objdump-h-pypy-c
|
Hello Maynard, On 04/05/11 18:28, Maynard Johnson wrote: > > Please do 'opreport -l --verbose=all ./pypy-c > op-verbose.out'. Then go to > > the bottom of op-verbose.out. What is the name of the symbol being processed > > when opreport chokes? And what do you see for 'value', 'start', and 'end'? ok, done: symbol __gcmap____module_cache_module_10___PyPy_dg_strtod_2278, value 40b1acbb start 40b2ad9b, end 307e7f2 in section .text, filepos 100e0 > > Go > > backwards in the file to find the last line beginning with "op_bfd ctor". > > What's the name of the binary file you find on that line? it's pypy-c > > Do 'objdump -t' of > > that binary and look for the name of the offending symbol. What section is it > > in? Please attach an 'objdump -h' of that binary to your reply. this is the relevant line in objdump -t: 0000000040f2ad9b g .text 0000000000000000 __gcmap____module_cache_module_10___PyPy_dg_strtod_2278 so, it seems it's in the .text section. You can find the output of objdump -h attached. > > Try running opreport with '--exclude-symbols=<offending_symbol>'. Does > > opreport complete successfully now? yes, it does :-) Thank you very much! But, I'm not sure: does it mean that this is a bug in opreport, or that there is some problem with my pypy-c? ciao, Antonio objdump-h-pypy-c pypy-c: file format elf64-x86-64 Sections: Idx Name Size VMA LMA File off Algn 0 .interp 0000001c 0000000000400270 0000000000400270 00000270 2**0 CONTENTS, ALLOC, LOAD, READONLY, DATA 1 .note.ABI-tag 00000020 000000000040028c 000000000040028c 0000028c 2**2 CONTENTS, ALLOC, LOAD, READONLY, DATA 2 .note.gnu.build-id 00000024 00000000004002ac 00000000004002ac 000002ac 2**2 CONTENTS, ALLOC, LOAD, READONLY, DATA 3 .hash 000016dc 00000000004002d0 00000000004002d0 000002d0 2**3 CONTENTS, ALLOC, LOAD, READONLY, DATA 4 .gnu.hash 000013d8 00000000004019b0 00000000004019b0 000019b0 2**3 CONTENTS, ALLOC, LOAD, READONLY, DATA 5 .dynsym 00005820 0000000000402d88 0000000000402d88 00002d88 2**3 CONTENTS, ALLOC, LOAD, READONLY, DATA 6 .dynstr 00003ae8 00000000004085a8 00000000004085a8 000085a8 2**0 CONTENTS, ALLOC, LOAD, READONLY, DATA 7 .gnu.version 00000758 000000000040c090 000000000040c090 0000c090 2**1 CONTENTS, ALLOC, LOAD, READONLY, DATA 8 .gnu.version_r 00000140 000000000040c7e8 000000000040c7e8 0000c7e8 2**3 CONTENTS, ALLOC, LOAD, READONLY, DATA 9 .rela.dyn 00000060 000000000040c928 000000000040c928 0000c928 2**3 CONTENTS, ALLOC, LOAD, READONLY, DATA 10 .rela.plt 00002118 000000000040c988 000000000040c988 0000c988 2**3 CONTENTS, ALLOC, LOAD, READONLY, DATA 11 .init 00000018 000000000040eaa0 000000000040eaa0 0000eaa0 2**2 CONTENTS, ALLOC, LOAD, READONLY, CODE 12 .plt 00001620 000000000040eab8 000000000040eab8 0000eab8 2**2 CONTENTS, ALLOC, LOAD, READONLY, CODE 13 .text 00b1aec8 00000000004100e0 00000000004100e0 000100e0 2**4 CONTENTS, ALLOC, LOAD, READONLY, CODE 14 .fini 0000000e 0000000000f2afa8 0000000000f2afa8 00b2afa8 2**2 CONTENTS, ALLOC, LOAD, READONLY, CODE 15 .rodata 000c2bb5 0000000000f2afc0 0000000000f2afc0 00b2afc0 2**5 CONTENTS, ALLOC, LOAD, READONLY, DATA 16 .eh_frame_hdr 0002a31c 0000000000fedb78 0000000000fedb78 00bedb78 2**2 CONTENTS, ALLOC, LOAD, READONLY, DATA 17 .eh_frame 000a1f8c 0000000001017e98 0000000001017e98 00c17e98 2**3 CONTENTS, ALLOC, LOAD, READONLY, DATA 18 .tbss 00000008 00000000012bad48 00000000012bad48 00cbad48 2**3 ALLOC, THREAD_LOCAL 19 .ctors 00000010 00000000012bad48 00000000012bad48 00cbad48 2**3 CONTENTS, ALLOC, LOAD, DATA 20 .dtors 00000010 00000000012bad58 00000000012bad58 00cbad58 2**3 CONTENTS, ALLOC, LOAD, DATA 21 .jcr 00000008 00000000012bad68 00000000012bad68 00cbad68 2**3 CONTENTS, ALLOC, LOAD, DATA 22 .dynamic 00000270 00000000012bad70 00000000012bad70 00cbad70 2**3 CONTENTS, ALLOC, LOAD, DATA 23 .got 00000008 00000000012bafe0 00000000012bafe0 00cbafe0 2**3 CONTENTS, ALLOC, LOAD, DATA 24 .got.plt 00000b20 00000000012bafe8 00000000012bafe8 00cbafe8 2**3 CONTENTS, ALLOC, LOAD, DATA 25 .data 01231530 00000000012bbb20 00000000012bbb20 00cbbb20 2**5 CONTENTS, ALLOC, LOAD, DATA 26 .bss 00008300 00000000024ed060 00000000024ed060 01eed050 2**5 ALLOC 27 .comment 00000023 0000000000000000 0000000000000000 01eed050 2**0 CONTENTS, READONLY |
From: Maynard J. <may...@us...> - 2011-05-04 19:36:12
|
On 05/04/2011 11:49 AM, Antonio Cuni wrote: > Hello Maynard, > > On 04/05/11 18:28, Maynard Johnson wrote: > [snip] >>> Try running opreport with '--exclude-symbols=<offending_symbol>'. Does >>> opreport complete successfully now? > yes, it does :-) > Thank you very much! > > But, I'm not sure: does it mean that this is a bug in opreport, or that there > is some problem with my pypy-c? Antonio, It's a bug in opreport. Please see the April 5 posting (from me) to the oprofile list with the subject line of: "[PATCH] Fix symbol size problem that causes "start > end" erorr" From the name of the offending symbol and the fact that its size is 0, I'm assuming this symbol (like the '__SDA_BASE__' symbol referred to in my posint) is a linker-defined symbol. I would appreciate your testing this patch and letting me know if that resolves the problem (without the use of the '--exclude-symbols' workaround). Thanks! -Maynard > > ciao, > Antonio > > > objdump-h-pypy-c > > > pypy-c: file format elf64-x86-64 > > Sections: > Idx Name Size VMA LMA File off Algn > 0 .interp 0000001c 0000000000400270 0000000000400270 00000270 2**0 > CONTENTS, ALLOC, LOAD, READONLY, DATA > 1 .note.ABI-tag 00000020 000000000040028c 000000000040028c 0000028c 2**2 > CONTENTS, ALLOC, LOAD, READONLY, DATA > 2 .note.gnu.build-id 00000024 00000000004002ac 00000000004002ac 000002ac > 2**2 > CONTENTS, ALLOC, LOAD, READONLY, DATA > 3 .hash 000016dc 00000000004002d0 00000000004002d0 000002d0 2**3 > CONTENTS, ALLOC, LOAD, READONLY, DATA > 4 .gnu.hash 000013d8 00000000004019b0 00000000004019b0 000019b0 2**3 > CONTENTS, ALLOC, LOAD, READONLY, DATA > 5 .dynsym 00005820 0000000000402d88 0000000000402d88 00002d88 2**3 > CONTENTS, ALLOC, LOAD, READONLY, DATA > 6 .dynstr 00003ae8 00000000004085a8 00000000004085a8 000085a8 2**0 > CONTENTS, ALLOC, LOAD, READONLY, DATA > 7 .gnu.version 00000758 000000000040c090 000000000040c090 0000c090 2**1 > CONTENTS, ALLOC, LOAD, READONLY, DATA > 8 .gnu.version_r 00000140 000000000040c7e8 000000000040c7e8 0000c7e8 2**3 > CONTENTS, ALLOC, LOAD, READONLY, DATA > 9 .rela.dyn 00000060 000000000040c928 000000000040c928 0000c928 2**3 > CONTENTS, ALLOC, LOAD, READONLY, DATA > 10 .rela.plt 00002118 000000000040c988 000000000040c988 0000c988 2**3 > CONTENTS, ALLOC, LOAD, READONLY, DATA > 11 .init 00000018 000000000040eaa0 000000000040eaa0 0000eaa0 2**2 > CONTENTS, ALLOC, LOAD, READONLY, CODE > 12 .plt 00001620 000000000040eab8 000000000040eab8 0000eab8 2**2 > CONTENTS, ALLOC, LOAD, READONLY, CODE > 13 .text 00b1aec8 00000000004100e0 00000000004100e0 000100e0 2**4 > CONTENTS, ALLOC, LOAD, READONLY, CODE > 14 .fini 0000000e 0000000000f2afa8 0000000000f2afa8 00b2afa8 2**2 > CONTENTS, ALLOC, LOAD, READONLY, CODE > 15 .rodata 000c2bb5 0000000000f2afc0 0000000000f2afc0 00b2afc0 2**5 > CONTENTS, ALLOC, LOAD, READONLY, DATA > 16 .eh_frame_hdr 0002a31c 0000000000fedb78 0000000000fedb78 00bedb78 2**2 > CONTENTS, ALLOC, LOAD, READONLY, DATA > 17 .eh_frame 000a1f8c 0000000001017e98 0000000001017e98 00c17e98 2**3 > CONTENTS, ALLOC, LOAD, READONLY, DATA > 18 .tbss 00000008 00000000012bad48 00000000012bad48 00cbad48 2**3 > ALLOC, THREAD_LOCAL > 19 .ctors 00000010 00000000012bad48 00000000012bad48 00cbad48 2**3 > CONTENTS, ALLOC, LOAD, DATA > 20 .dtors 00000010 00000000012bad58 00000000012bad58 00cbad58 2**3 > CONTENTS, ALLOC, LOAD, DATA > 21 .jcr 00000008 00000000012bad68 00000000012bad68 00cbad68 2**3 > CONTENTS, ALLOC, LOAD, DATA > 22 .dynamic 00000270 00000000012bad70 00000000012bad70 00cbad70 2**3 > CONTENTS, ALLOC, LOAD, DATA > 23 .got 00000008 00000000012bafe0 00000000012bafe0 00cbafe0 2**3 > CONTENTS, ALLOC, LOAD, DATA > 24 .got.plt 00000b20 00000000012bafe8 00000000012bafe8 00cbafe8 2**3 > CONTENTS, ALLOC, LOAD, DATA > 25 .data 01231530 00000000012bbb20 00000000012bbb20 00cbbb20 2**5 > CONTENTS, ALLOC, LOAD, DATA > 26 .bss 00008300 00000000024ed060 00000000024ed060 01eed050 2**5 > ALLOC > 27 .comment 00000023 0000000000000000 0000000000000000 01eed050 2**0 > CONTENTS, READONLY |
From: Antonio C. <ant...@gm...> - 2011-05-05 08:18:32
|
On 04/05/11 21:36, Maynard Johnson wrote: > Antonio, > It's a bug in opreport. Please see the April 5 posting (from me) to the > oprofile list with the subject line of: > "[PATCH] Fix symbol size problem that causes "start > end" erorr" > > From the name of the offending symbol and the fact that its size is 0, I'm > assuming this symbol (like the '__SDA_BASE__' symbol referred to in my posint) > is a linker-defined symbol. I would appreciate your testing this patch and > letting me know if that resolves the problem (without the use of the > '--exclude-symbols' workaround). Hello Maynard, yes, I can confirm that with your patch, opreport -l works fine. Thank you very much! ciao, Antonio |
From: Maynard J. <may...@us...> - 2011-05-05 12:13:36
|
Antonio Cuni wrote: > On 04/05/11 21:36, Maynard Johnson wrote: > >> Antonio, >> It's a bug in opreport. Please see the April 5 posting (from me) to the >> oprofile list with the subject line of: >> "[PATCH] Fix symbol size problem that causes "start > end" erorr" >> >> From the name of the offending symbol and the fact that its size is 0, I'm >> assuming this symbol (like the '__SDA_BASE__' symbol referred to in my posint) >> is a linker-defined symbol. I would appreciate your testing this patch and >> letting me know if that resolves the problem (without the use of the >> '--exclude-symbols' workaround). > > Hello Maynard, > > yes, I can confirm that with your patch, opreport -l works fine. Thank you > very much! Thanks for testing, Antonio. Out of curiosity, what version of binutils do you have on your system? -Maynard > > ciao, > Antonio |
From: Antonio C. <ant...@gm...> - 2011-05-05 12:23:16
|
On 05/05/11 14:13, Maynard Johnson wrote: > Thanks for testing, Antonio. Out of curiosity, what version of binutils do you have on your system? I'm using ubuntu 11.04, and the version reported by the package manager is 2.21.0.20110327-2ubuntu2 ciao, Antonio |
From: Maynard J. <may...@us...> - 2011-05-05 19:33:33
|
Suravee, Below is another testimonial that the patch I asked you to review resolves this type of problem. The case that Antonio ran into is different from the original error scenario (the '__SDA_BASE_' symbol). In discussions I've had with some of my colleagues, we feel it's very likely that Antonio's problem is caused by either a compiler bug or some too-clever coding tricks (in python?) that's resulting in the odd-looking symbol value of 0x40b1acbb for the symbol '__gcmap____module_cache_module_10___PyPy_dg_strtod_2278'. So the more I think about it, the more confident I am that the current algorithm for calculating a symbol's 'end' value is correct, and if it happens to be less than 'start', then we've encountered one of these odd exceptions where it's safe to simply set symbol size to 0. If you (or anyone else) disagrees, I'd be happy to discuss it further. If not, please give your 'ack' to the patch, and I'll go ahead and commit it. Thanks. -Maynard On 05/05/2011 3:18 AM, Antonio Cuni wrote: > On 04/05/11 21:36, Maynard Johnson wrote: > >> Antonio, >> It's a bug in opreport. Please see the April 5 posting (from me) to the >> oprofile list with the subject line of: >> "[PATCH] Fix symbol size problem that causes "start> end" erorr" >> >> From the name of the offending symbol and the fact that its size is 0, I'm >> assuming this symbol (like the '__SDA_BASE__' symbol referred to in my post) >> is a linker-defined symbol. I would appreciate your testing this patch and >> letting me know if that resolves the problem (without the use of the >> '--exclude-symbols' workaround). > > Hello Maynard, > > yes, I can confirm that with your patch, opreport -l works fine. Thank you > very much! > > ciao, > Antonio |
From: Suravee S. <sur...@am...> - 2011-05-06 04:38:05
|
Hi Maynard, The patch looks ok. Sorry for delay reply. Suravee On 05/05/2011 02:33 PM, Maynard Johnson wrote: > Suravee, > Below is another testimonial that the patch I asked you to review resolves this > type of problem. The case that Antonio ran into is different from the original > error scenario (the '__SDA_BASE_' symbol). In discussions I've had with some of > my colleagues, we feel it's very likely that Antonio's problem is caused by > either a compiler bug or some too-clever coding tricks (in python?) that's > resulting in the odd-looking symbol value of 0x40b1acbb for the symbol > '__gcmap____module_cache_module_10___PyPy_dg_strtod_2278'. So the more I think > about it, the more confident I am that the current algorithm for calculating a > symbol's 'end' value is correct, and if it happens to be less than 'start', then > we've encountered one of these odd exceptions where it's safe to simply set > symbol size to 0. If you (or anyone else) disagrees, I'd be happy to discuss it > further. If not, please give your 'ack' to the patch, and I'll go ahead and > commit it. > > Thanks. > > -Maynard > > > On 05/05/2011 3:18 AM, Antonio Cuni wrote: >> On 04/05/11 21:36, Maynard Johnson wrote: >> >>> Antonio, >>> It's a bug in opreport. Please see the April 5 posting (from me) to the >>> oprofile list with the subject line of: >>> "[PATCH] Fix symbol size problem that causes "start> end" erorr" >>> >>> From the name of the offending symbol and the fact that its size is 0, I'm >>> assuming this symbol (like the '__SDA_BASE__' symbol referred to in my post) >>> is a linker-defined symbol. I would appreciate your testing this patch and >>> letting me know if that resolves the problem (without the use of the >>> '--exclude-symbols' workaround). >> Hello Maynard, >> >> yes, I can confirm that with your patch, opreport -l works fine. Thank you >> very much! >> >> ciao, >> Antonio > |