RE: opcontrol does not create results
"Lentes, Bernd" <[email protected]>
| Newsgroups | gmane.linux.oprofile |
|---|---|
| Message-ID | <[email protected]> |
William wrote:
>
> >
> >
> >
>
>
> You might take a look at
> http://people.redhat.com/wcohen/Fedora12OprofileTutorial.txt and
> use the following to get a better idea what it is doing in __do_softirq:
>
> opreport --include-symbols=__do_softirq --details
idcc-devel:~ # opreport -l --include-symbols=__do_softirq --details --image-path=/usr/lib/debug/boot/
warning: /af_packet could not be found.
...
warning: /xt_tcpudp could not be found.
CPU: CPU with timer interrupt, speed 0 MHz (estimated)
Profiling through timer interrupt
vma samples % image name app name symbol name
ffffffff8013a83b 4374 24.2676 vmlinux-2.6.16.60-0.103.1-smp.debug update-status __do_softirq
ffffffff8013a885 4374 100.000
ffffffff8013a83b 4204 23.3245 vmlinux-2.6.16.60-0.103.1-smp.debug transact __do_softirq
ffffffff8013a885 4204 100.000
ffffffff8013a83b 2994 16.6112 vmlinux-2.6.16.60-0.103.1-smp.debug mono __do_softirq
ffffffff8013a885 2994 100.000
ffffffff8013a83b 1543 8.5608 vmlinux-2.6.16.60-0.103.1-smp.debug vmlinux-2.6.16.60-0.103.1-smp.debug __do_softirq
ffffffff8013a885 1543 100.000
ffffffff8013a83b 991 5.4982 vmlinux-2.6.16.60-0.103.1-smp.debug parse-metadata __do_softirq
ffffffff8013a885 991 100.000
ffffffff8013a83b 932 5.1709 vmlinux-2.6.16.60-0.103.1-smp.debug sshd __do_softirq
ffffffff8013a885 932 100.000
ffffffff8013a83b 640 3.5508 vmlinux-2.6.16.60-0.103.1-smp.debug resolve-dependencies __do_softirq
ffffffff8013a885 640 100.000
ffffffff8013a83b 464 2.5743 vmlinux-2.6.16.60-0.103.1-smp.debug hald-addon-storage __do_softirq
ffffffff8013a885 464 100.000
ffffffff8013a83b 298 1.6534 vmlinux-2.6.16.60-0.103.1-smp.debug mysqld __do_softirq
ffffffff8013a885 298 100.000
ffffffff8013a83b 271 1.5036 vmlinux-2.6.16.60-0.103.1-smp.debug top __do_softirq
ffffffff8013a885 271 100.000
No new information for me.
>
> Maybe use the opannotate to see what lines of code in __do_softirq are
> getting the samples.
>
Hi,
i invoked "opannotate -s -o annotate -i __do_softirq -d /usr/src/linux/" and afterwards "less annotate/usr/src/linux-2.6.16.60-0.103.1/kernel/softirq.c".
What I got:
:asmlinkage void __do_softirq(void)
:{ /* __do_softirq total: 18024 100.000 */
: struct softirq_action *h;
: __u32 pending;
: int max_restart = MAX_SOFTIRQ_RESTART;
: int cpu;
:
: pending = local_softirq_pending();
:
: local_bh_disable();
: cpu = smp_processor_id();
:restart:
: /* Reset the pending bitmask before enabling irqs */
: set_softirq_pending(0);
:
: local_irq_enable();
:
: h = softirq_vec;
:
: do {
18024 100.000 : if (pending & 1) {
: h->action(h);
: rcu_bh_qsctr_inc(cpu);
: }
: h++;
: pending >>= 1;
: } while (pending);
:
: local_irq_disable();
:
: pending = local_softirq_pending();
: if (pending && --max_restart)
: goto restart;
:
: if (pending)
: wakeup_softirqd();
:
: __local_bh_enable();
:}
and at the end:
/*
* Total samples for file : "kernel/softirq.c"
*
* 18024 100.000
*/
/*
* Command line: opannotate -s -o annotate -i __do_softirq -d /usr/src/linux/
*
* Interpretation of command line:
* Output annotated source file with samples
* Output all files
*
* CPU: CPU with timer interrupt, speed 0 MHz (estimated)
* Profiling through timer interrupt
*/
What I understand is that __do_softirq has 18024 samples and all the samples spent their time in
do {
if (pending & 1) {
h->action(h);
rcu_bh_qsctr_inc(cpu);
}
h++;
pending >>= 1;
} while (pending);
Having a look at "Understanding the Linux Kernel" I find:
" For each bit set in the pending local variable, it executes the corresponding softirq function; recall that the function address for the softirq with index n is stored in softirq_vec[n]->action."
So here is where the respective softirq is startet. But which one ? How can I find out that ? Is there e.g. a way to check the variable h or pending ?
Bernd
Helmholtz Zentrum München
Deutsches Forschungszentrum für Gesundheit und Umwelt (GmbH)
Ingolstädter Landstr. 1
85764 Neuherberg
www.helmholtz-muenchen.de
Aufsichtsratsvorsitzende: MinDir´in Bärbel Brumme-Bothe
Geschäftsführer: Prof. Dr. Günther Wess, Dr. Nikolaus Blum, Dr. Alfons Enhsen
Registergericht: Amtsgericht München HRB 6466
USt-IdNr: DE 129521671
------------------------------------------------------------------------------
BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT
Develop your own process in accordance with the BPMN 2 standard
Learn Process modeling best practices with Bonita BPM through live exercises
http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual- event?utm_
source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF
_______________________________________________
oprofile-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/oprofile-list