Vasilis Liaskovitis wrote:
> HI,
>
> thanks for the replies
>
> On Fri, Sep 11, 2009 at 7:29 AM, Maynard Johnson <maynardj@...> wrote:
>> Vasilis Liaskovitis wrote:
>>> does timer-mode work on ARMv4 with oprofile0.9.5? This is an ARM920T
>> Unfortunately, timer mode is broken in 0.9.5. See my posting on this list from yesterday (Sept 10), subject "Re: [PATCH1/1] Fix Timer mode". Suravee had > posted a patch to fix timer mode, and in my reply, I attached a new version of that patch with a slight modification. Please test that patch and let us know if > that resolves your problem.
>>
>
> a) timer mode works with 0.9.5 or 0.9.4 for non-kernel code. However
> for kernel code
>
> # opcontrol --vmlinux=/boot/vmlinux-2.6.30
> oprofile: using timer interrupt.
> # opcontrol --init
> # opcontrol --start
> Using 2.6+ OProfile kernel interface.
> error: mis-parsed kernel range: 0-0
There is no such error message in opcontrol -- at least not in the opcontrol we have in SF CVS. You'll have to debug this yourself to find out where the error is coming from and why.
> Couldn't start oprofiled.
> Check the log file "/var/lib/oprofile/samples/oprofiled.log" and kernel syslog
>
> Any ideas? There is no /var/lib/oprofile directory in my arm root
> filesystem, I wonder if that's another sign of trouble. /proc/kallsyms
> is there though and the following config options are set:
>
> CONFIG_PROFILING=y
> CONFIG_OPROFILE=m
> CONFIG_HAVE_OPROFILE=y
> I am assuming I can still profile kernel code with timer mode, apart
> from sections with interrupts disabled
>
> b) regarding the idea of using other timer/counter channels on the
> board, is there a guideline on changing oprofile source code to do
> that? Would you foresee this needing only a kernel driver code change
> or a userspace change as well?
Are you referring to some non-core PMUs? If so, then IMHO, OProfile is probably not the right tool to use to monitor such events, as you probably have no way of attributing those non-core events to a particular s/w thread and it's s/w stack. You might want to look at the new perf_counters PMU interface that Ingo Molnar (and others) have contributed into the 2.6.31 kernel. While that interface is mainly focused also on monitoring core events and attributing them to running binaries, it also has a pure event counting capability (versus sampling), which would be more appropriate for non-core counters. See <linux-2.6.31>/tools/perf/design.txt for more info on perf_counters (aka "Performance Counters for Linux).
-Maynard
>
> thanks,
>
> - Vasilis
>
>> Thanks.
>> -Maynard
>>> rev0 (v4l) processor on an at91rm9200 board running a 2.6.30 kernel.
>>> I 've enabled CONFIG_OPROFILE=y but opcontrol doesn't see in-kernel
>>> support or a kernel module.
>>>
>>> # opcontrol --no-vmlinux
>>> FATAL: Module oprofile not found.
>>> FATAL: Module oprofile not found.
>>> Kernel doesn't support oprofile
>>>
>>> The FAQ mentions RTC must be disabled for oprofile to work with timer
>>> mode. I 've tried disabling CONFIG_RTC_LIB but this still doesn't
>>> work. CONFIG_AT91RM9200_RTC is also not set in my kernel config file.
>>>
>>> Does there need to be code in libop/op_cpu_type* identifying a given
>>> architecture, even for an architecture that would just use timer mode?
>>> ARMv4 is missing from the above files. (As far as I know ARMv4 does
>>> not have any h/w performance counters, and it would indeed have to use
>>> timer mode)
>>>
>>> thanks for any suggestions,
>>>
>>> - Vasilis
>>>
>>> ------------------------------------------------------------------------------
>>> Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
>>> trial. Simplify your report design, integration and deployment - and focus on
>>> what you do best, core application coding. Discover what's new with
>>> Crystal Reports now. http://p.sf.net/sfu/bobj-july
>>> _______________________________________________
>>> oprofile-list mailing list
>>> oprofile-list@...
>>> https://lists.sourceforge.net/lists/listinfo/oprofile-list
>>
|