> You could use the command 'nm' to get your symbols and look them up. I > am sure Babeltrace can do this from a python level. You could also use > a GUI based trace viewer to get the information. nm only shows the linked address, but the traced address are the loaded address in memory. So, they're different. For example: trace@trace:~/cc$ nm instrument | grep 'add3\|main' 00000000000011a9 T add3 00000000000011ee T main
@Christophe: Do you mean that babeltrace2 can help get the function name and call site offset? B.R. Changcheng On 12:52 Tue 23 Jun, Christophe Bédard wrote: > Hi, > > Babeltrace is doing exactly what it should as far as I know. > > yes, but babeltrace can provide the information if: > * ip and vpid contexts are enabled (for userspace), e.g. > > $ lttng add-context --userspace --type=ip --type=vpid > > * LTTng state dump events are enabled, e.g. > > $ lttng enable-event --userspace 'lttng_ust_statedump:*' > > see this (from bt2 but it also applies to > bt1): [1]https://babeltrace.org/docs/v2.0/man7/babeltrace2-filter.lttng > -utils.debug-info.7/#doc-lttng-prereq > Note that the Python bindings for babeltrace don't provide/expose this > debug info. > Christophe > On Tue, 23 Jun 2020 at 11:12, Matthew Khouzam via lttng-dev > <[2]lttng-dev@lists.lttng.org> wrote: > > Hi, > You have the pointers that are traced. Babeltrace is doing exactly what > it should as far as I know. > You could use the command 'nm' to get your symbols and look them up. I > am sure Babeltrace can do this from a python level. You could also use > a GUI based trace viewer to get the information. > Hope that helps. > Matthew > __________________________________________________________________ > > From: lttng-dev <[3]lttng-dev-boun...@lists.lttng.org> on behalf of > Liu, Changcheng via lttng-dev <[4]lttng-dev@lists.lttng.org> > Sent: Tuesday, June 23, 2020 10:37 AM > To: [5]lttng-dev@lists.lttng.org <[6]lttng-dev@lists.lttng.org> > Cc: [7]changcheng....@intel.com <[8]changcheng....@intel.com> > Subject: [lttng-dev] get function names with lttng-ust-cyg-profile > > Hi all, > I'm trying to use lttng-ust-cyg-profile to trace program. > Does anyone know how to get function names and offset through > lttng-ust-cyg-profile? > In below example, the babeltrace could only get the function > entry/exit value. > 1. Source program: instrument.c > 1 #include <stdio.h> > 2 > 3 int add3(int val) { > 4 return val + 3; > 5 } > 6 > 7 int main(int argc, char **argv) { > 8 int x = 4; > 9 > 10 puts("Press Enter to continue..."); > 11 getchar(); > 12 > 13 x = add3(x); > 14 > 15 return 0; > 16 } > 2. build source code: > $ gcc -g -finstrument-functions instrument.c -o instrument > 3. run program: > $ > LD_PRELOAD=/usr/lib/x86_64-linux-gnu/liblttng-ust-cyg-profile.so > ./instrument > 4. start trace process: > trace@trace:~/cc$ sudo lttng create instrument > Session instrument created. > Traces will be output to > /root/lttng-traces/instrument-20200623-222917 > trace@trace:~/cc$ sudo lttng enable-channel user_func_trace > --userspace > UST channel user_func_trace enabled for session instrument > trace@trace:~/cc$ sudo lttng enable-event --userspace > lttng_ust_cyg_profile:func_entry --channel user_func_trace > UST event lttng_ust_cyg_profile:func_entry created in channel > user_func_trace > trace@trace:~/cc$ sudo lttng enable-event --userspace > lttng_ust_cyg_profile:func_exit --channel user_func_trace > UST event lttng_ust_cyg_profile:func_exit created in channel > user_func_trace > trace@trace:~/cc$ sudo lttng start > Tracing started for session instrument > trace@trace:~/cc$ sudo lttng destroy > Destroying session instrument.. > Session instrument destroyed > trace@trace:~/cc$ sudo babeltrace > /root/lttng-traces/instrument-20200623-222917 > [22:29:55.388607059] (+?.?????????) trace > lttng_ust_cyg_profile:func_entry: { cpu_id = 2 }, { addr = > 0x5625C88B01A9, call_site = 0x5625C88B0237 } > [22:29:55.388612293] (+0.000005234) trace > lttng_ust_cyg_profile:func_exit: { cpu_id = 2 }, { addr = > 0x5625C88B01A9, call_site = 0x5625C88B0237 } > [22:29:55.388613215] (+0.000000922) trace > lttng_ust_cyg_profile:func_exit: { cpu_id = 2 }, { addr = > 0x5625C88B01EE, call_site = 0x7FE40BD5C0B3 } > B.R. > Changcheng _______________________________________________ lttng-dev mailing list lttng-dev@lists.lttng.org https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev