|
From: Lv Z. <zh...@sh...> - 2005-08-16 07:49:03
|
You are welcome, but your data seems not containing backtrace
informations. only samples marked 'self' are generated.
I think you should confirm following things, these will cause the
callgraph data missing problem:
1. make sure your kernel is compiled with "framepointer" enabled
2. make sure callgraph depth is set with none-zero value
`cat /dev/oprofile/backtrace_depth`
you can do this by opcontrol --callgraph=5 after executing
opcontrol --vmlinux=XX (pay attention to the command sequence,
vmlinux must be set first)
3. make sure you are not using an ARM kernel together with
oprofile-0.9.0 (a bug fix can be found in 0.9.1)
4. use opreport -c to generate callgraph data for you samples.
following is a sample for oprofile callgraph usage:
VMLINUX="/vmlinux"
BACKTRACE=5
VERSION=`uname -r`
opcontrol --shutdown &> /dev/null
opcontrol --init
opcontrol --reset
opcontrol --vmlinux=${VMLINUX}
opcontrol --callgraph=${BACKTRACE}
opcontrol --separate=kernel
opcontrol --event=GLOBAL_POWER_EVENTS:533333:1:1:1
opcontrol --start
# run something here
opcontrol --dump
opcontrol --shutdown
opreport -c -l -o myreport_${VERSION}_${i}_${j}
Best regards
----- Original Message -----
From: "Ming Zhang" <mi...@el...>
To: "Lv Zheng" <zh...@sh...>
Cc: "oprofile" <opr...@li...>
Sent: Monday, August 15, 2005 8:46 PM
Subject: Re: how to explain the call graph
> thanks a lot. i found it.
>
> i assumed opstack could give me this. but seems opreport --callgraph is
> for this.
>
> Ming
>
> On Mon, 2005-08-15 at 09:58 +0800, Lv Zheng wrote:
> > Hi, Ming
> >
> > Make sure following configuration items enabled for your kernel
> > then run oprofile --callgraph again.
> >
> > oprofile:
> > Profiling support
> > -> Profiling support
> > -> OProfile system profiling
> > frame pointers:
> > Kernel hacking
> > -> Kernel debugging
> > -> Compile the kernel with frame pointers
> >
> > Best regards
> >
> > ----- Original Message -----
> > From: "Ming Zhang" <mi...@el...>
> > To: "oprofile" <opr...@li...>
> > Sent: Friday, August 12, 2005 2:40 AM
> > Subject: how to explain the call graph
> >
> >
> > > I wonder how to explain this call graph output.
> > >
> > > i have oprofile configured as this
> > >
> > > [root@sc420 root]# opcontrol --status
> > > Daemon running: pid 3469
> > > Separate options: library kernel
> > > vmlinux file: /usr/src/linux-2.6.12.3/vmlinux
> > > Image filter: none
> > > Call-graph depth: 5
> > >
> > > then i ran this to get file x.
> > >
> > > opreport -t0.1 -l -c -p /lib/modules/2.6.12.3/kernel/ -o x
> > >
> > > for example, i saw this schedule take 5%. but then how can i tell who
> > > and where this schedule() is called?
> > >
> >
> --------------------------------------------------------------------------
> > -----
> > > 54820 5.6787 vmlinux vmlinux
> > > schedule
> > > 54820 100.000 vmlinux vmlinux
> > > schedule [self]
> > >
> > >
> > > thanks a lot!
> > >
> > > Ming
> > >
> > >
> >
>
>
>
> -------------------------------------------------------
> SF.Net email is Sponsored by the Better Software Conference & EXPO
> September 19-22, 2005 * San Francisco, CA * Development Lifecycle
Practices
> Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
> Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
> _______________________________________________
> oprofile-list mailing list
> opr...@li...
> https://lists.sourceforge.net/lists/listinfo/oprofile-list
|