qemu-stable
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-stable] Call Trace for QEMU functions


From: Michael Roth
Subject: Re: [Qemu-stable] Call Trace for QEMU functions
Date: Thu, 30 Jul 2015 05:54:20 -0500
User-agent: alot/0.3.6

Quoting Naman patel (2015-07-30 05:21:39)
> Hi,
> 
>      I have compiled QEMU (2.0) for x86_64 on Fedora 22 with tracing enabled
> and the tracing option I chose was dtrace. I have this script called
> callTrace.stp in which I try and get the Call Trace of the function 
> helper_invlpg and later tlb_flush.  But I am not able to get the function name
> of the caller function and the call trace depth is only limited to 2.
> 
> probe process("/usr/bin/qemu-system-x86_64").function("helper_invlpg") {
>                 printf("gen_helper_invlpg called \n");
>                         print_usyms(ubacktrace())
> }
> 
> 
> I run it using following command: sudo stap -d /usr/local/bin/qemu
> -system-x86_64 --ldd --vp 08 callTrace.stp
> 
> Following is the ouput:
> gen_helper_invlpg called 
>  0x7faae9d7c040 : helper_invlpg+0x0/0x30 [/usr/bin/qemu-system-x86_64]
>  0x7faac5cfcd8c : 0x7faac5cfcd8c
> gen_helper_invlpg called 
>  0x7faae9d7c040 : helper_invlpg+0x0/0x30 [/usr/bin/qemu-system-x86_64]
>  0x7faac5cfcd8c : 0x7faac5cfcd8c
> gen_helper_invlpg called 
>  0x7faae9d7c040 : helper_invlpg+0x0/0x30 [/usr/bin/qemu-system-x86_64]
>  0x7faac5cfcd8c : 0x7faac5cfcd8c
> 
> and so on...
> 
> It does not show the function name but the address from where it was called.
> Does it mean that its not possible to get backtrace for this function???
> 
> Similarly if I probe for tlb_flush then I get the following output:
> TLB FULSH called 
>  0x7faae9cf19f0 : tlb_flush+0x0/0xb0 [/usr/bin/qemu-system-x86_64]
>  0x7faac6ab5722 : 0x7faac6ab5722
> TLB FULSH called 
>  0x7faae9cf19f0 : tlb_flush+0x0/0xb0 [/usr/bin/qemu-system-x86_64]
>  0x7faac6b689be : 0x7faac6b689be
> TLB FULSH called 
>  0x7faae9cf19f0 : tlb_flush+0x0/0xb0 [/usr/bin/qemu-system-x86_64]
>  0x7faac6a74998 : 0x7faac6a74998
> TLB FULSH called 
>  0x7faae9cf19f0 : tlb_flush+0x0/0xb0 [/usr/bin/qemu-system-x86_64]
>  0x7faac6b689be : 0x7faac6b689be
> 
> Here also I am not able to get full Call Trace.
> 
> If I do this similar kind of probe using stap -d /bin/ls --ldd -e 'probe
> process("ls").function("xmalloc") {print_usyms(ubacktrace())}' -c "ls /"
> then I do get proper call trace, Check the following output.
> 0x4112f0 : xmalloc+0x0/0x20 [/usr/bin/ls]
>  0x4114c4 : xmemdup+0x14/0x30 [/usr/bin/ls]
>  0x40eb4a : clone_quoting_options+0x2a/0x40 [/usr/bin/ls]
>  0x4033e2 : main+0xa52/0x2160 [/usr/bin/ls]
>  0x7fc6be4fc790 : __libc_start_main+0xf0/0x1d0 [/usr/lib64/libc-2.21.so]
>  0x404b19 : _start+0x29/0x30 [/usr/bin/ls]
>  0x4112f0 : xmalloc+0x0/0x20 [/usr/bin/ls]
>  0x4114c4 : xmemdup+0x14/0x30 [/usr/bin/ls]
>  0x40eb4a : clone_quoting_options+0x2a/0x40 [/usr/bin/ls]
>  0x403441 : main+0xab1/0x2160 [/usr/bin/ls]
>  0x7fc6be4fc790 : __libc_start_main+0xf0/0x1d0 [/usr/lib64/libc-2.21.so]
>  0x404b19 : _start+0x29/0x30 [/usr/bin/ls]
>  0x4112f0 : xmalloc+0x0/0x20 [/usr/bin/ls]
>  0x40378f : main+0xdff/0x2160 [/usr/bin/ls]
>  0x7fc6be4fc790 : __libc_start_main+0xf0/0x1d0 [/usr/lib64/libc-2.21.so]
> 
> Do you have any clue why this could happen? Or any alternative approach to get
> the call trace?
> 
> This is my first email on the group so please pardon me if I have not followed
> some customs.

I'd recommend re-sending this to address@hidden This list is
mainly for tracking patches/bugs relating to the maintenance of past
QEMU releases, whereas this email seems more like a general query.

In either case, address@hidden should always be CC'd regardless
of what specific address@hidden you send to. This allows the entire
community to help and stay in touch with what's going on in all areas.

> 
> Regards,
> Naman




reply via email to

[Prev in Thread] Current Thread [Next in Thread]