2010-02-03 16:52:04 -02:00
# ifndef PERF_BUILD_ID_H_
# define PERF_BUILD_ID_H_ 1
2015-07-15 18:14:28 +09:00
# define BUILD_ID_SIZE 20
# define SBUILD_ID_SIZE (BUILD_ID_SIZE * 2 + 1)
2012-10-27 23:18:29 +02:00
# include "tool.h"
2015-02-27 13:50:26 +09:00
# include "strlist.h"
2014-04-25 21:31:02 +02:00
# include <linux/types.h>
2010-02-03 16:52:04 -02:00
2011-11-28 08:30:20 -02:00
extern struct perf_tool build_id__mark_dso_hit_ops ;
2012-10-27 23:18:29 +02:00
struct dso ;
2010-02-03 16:52:04 -02:00
2012-10-27 23:18:28 +02:00
int build_id__sprintf ( const u8 * build_id , int len , char * bf ) ;
2015-08-15 20:42:59 +09:00
int sysfs__sprintf_build_id ( const char * root_dir , char * sbuild_id ) ;
int filename__sprintf_build_id ( const char * pathname , char * sbuild_id ) ;
2016-05-29 00:15:37 +09:00
char * build_id_cache__kallsyms_path ( const char * sbuild_id , char * bf ,
size_t size ) ;
2015-08-15 20:42:59 +09:00
2013-12-10 15:46:29 -03:00
char * dso__build_id_filename ( const struct dso * dso , char * bf , size_t size ) ;
2016-02-05 14:01:27 +00:00
bool dso__build_id_is_kmod ( const struct dso * dso , char * bf , size_t size ) ;
2010-05-20 12:15:33 -03:00
2012-08-07 16:56:05 +04:00
int build_id__mark_dso_hit ( struct perf_tool * tool , union perf_event * event ,
struct perf_sample * sample , struct perf_evsel * evsel ,
struct machine * machine ) ;
2014-11-04 10:14:30 +09:00
int dsos__hit_all ( struct perf_session * session ) ;
bool perf_session__read_build_ids ( struct perf_session * session , bool with_hits ) ;
int perf_session__write_buildid_table ( struct perf_session * session , int fd ) ;
int perf_session__cache_build_ids ( struct perf_session * session ) ;
2016-07-01 17:03:26 +09:00
char * build_id_cache__origname ( const char * sbuild_id ) ;
char * build_id_cache__linkname ( const char * sbuild_id , char * bf , size_t size ) ;
2016-06-08 18:29:30 +09:00
char * build_id_cache__cachedir ( const char * sbuild_id , const char * name ,
bool is_kallsyms , bool is_vdso ) ;
2016-07-01 17:03:26 +09:00
struct strlist * build_id_cache__list_all ( void ) ;
2015-02-27 13:50:26 +09:00
int build_id_cache__list_build_ids ( const char * pathname ,
struct strlist * * result ) ;
2015-02-26 15:54:40 +09:00
bool build_id_cache__cached ( const char * sbuild_id ) ;
2015-02-10 18:18:51 +09:00
int build_id_cache__add_s ( const char * sbuild_id ,
2014-11-04 10:14:30 +09:00
const char * name , bool is_kallsyms , bool is_vdso ) ;
2015-02-10 18:18:51 +09:00
int build_id_cache__remove_s ( const char * sbuild_id ) ;
2014-11-07 22:57:56 +09:00
void disable_buildid_cache ( void ) ;
2014-11-04 10:14:30 +09:00
2010-02-03 16:52:04 -02:00
# endif