LIBTRACEEVENT(3)

NAME
tep_find_function, tep_find_function_address - Find function name / start address.

SYNOPSIS

#include <event-parse.h>

const char *tep_find_function(struct tep_handle *tep, unsigned long long addr);
unsigned long long tep_find_function_address(struct tep_handle *tep, unsigned long long addr);

DESCRIPTION

These functions can be used to find function name and start address, by given address. The given address does not have to be exact, it will select the function that would contain it.

The tep_find_function() function returns the function name, which contains the given address addr. The tep argument is the trace event parser context.

The tep_find_function_address() function returns the function start address, by given address addr. The addr does not have to be exact, it will select the function that would contain it. The tep argument is the trace event parser context.

RETURN VALUE

The tep_find_function() function returns the function name, or NULL in case it cannot be found.

The tep_find_function_address() function returns the function start address, or 0 in case it cannot be found.

EXAMPLE

    #include <event-parse.h>
    ...
    struct tep_handle *tep = tep_alloc();
    ...
    void show_function( unsigned long long addr)
    {
            const char *fname = tep_find_function(tep, addr);
            unsigned long long fstart = tep_find_function_address(tep, addr);

            /* addr is in function named fname, starting at fstart address, at offset (addr - fstart) */
    }
    ...

FILES

    event-parse.h
            Header file to include in order to have access to the library APIs.
    -ltraceevent
            Linker switch to add when building a program that uses the library.

SEE ALSO

libtraceevent(3), trace-cmd(1)

AUTHOR

    Steven Rostedt <rostedt@goodmis.org[1]>, author of libtraceevent.
    Tzvetomir Stoyanov <tz.stoyanov@gmail.com[2]>, author of this man page.

REPORTING BUGS

Report bugs to <linux-trace-devel@vger.kernel.org[3]>

LICENSE

libtraceevent is Free Software licensed under the GNU LGPL 2.1

RESOURCES

https://git.kernel.org/pub/scm/libs/libtrace/libtraceevent.git/

NOTES

1.  rostedt@goodmis.org
    mailto:rostedt@goodmis.org

2.  tz.stoyanov@gmail.com
    mailto:tz.stoyanov@gmail.com

3.  linux-trace-devel@vger.kernel.org
    mailto:linux-trace-devel@vger.kernel.org