COOLBPF USERSPACE API
Functions
- COOLBPF_API int coolbpf_object_load (struct coolbpf_object *cb)
load coolbpf object
- Parameters:
cb –
- Returns:
int
- COOLBPF_API int coolbpf_object_attach (struct coolbpf_object *cb)
attach coolbpf object
- Parameters:
cb –
- Returns:
int
- COOLBPF_API void coolbpf_object_destory (struct coolbpf_object *cb)
destory coolbpf object instance
- Parameters:
cb –
- COOLBPF_API int coolbpf_object_find_map (struct coolbpf_object *cb, const char *name)
get bpf map fd from coolbpf object
- Parameters:
cb –
name –
- Returns:
int
- COOLBPF_API const struct bpf_object * coolbpf_get_bpf_object (struct coolbpf_object *cb)
get bpf_object instance
- Parameters:
cb –
- Returns:
const struct bpf_object*
- COOLBPF_API uint32_t coolbpf_major_version ()
get coolbpf major verison
- Returns:
uint32_t
- COOLBPF_API uint32_t coolbpf_minor_version ()
get coolbpf minor version
- Returns:
uint32_t
- COOLBPF_API const char * coolbpf_version_string (void)
get coolbpf version as string
- Returns:
const char*
- COOLBPF_API void * perf_thread_worker (void *ctx)
perf thread worker
- Parameters:
ctx – perf thread arguments
- Returns:
void *
- COOLBPF_API pthread_t initial_perf_thread (struct perf_thread_arguments *args)
Create a perf thread to receive perf events.
- Parameters:
mapfd – fd of map of type BPF_MAP_TYPE_PERF_EVENT_ARRAY
- Returns:
pthread_t thread id, you can use it later to destroy the thread
- COOLBPF_API int kill_perf_thread (pthread_t thread)
Destroy perf thread.
- Parameters:
thread – perf thread id
- Returns:
int
-
int bump_memlock_rlimit(void)
Extend locked-in-memory address space.
- Returns:
int
Defines
-
COOLBPF_MAJOR_VERSION 0
-
COOLBPF_MINOR_VERSION 1
-
__coolbpf_object_new(skel, preload, preattach, ctx)
-
coolbpf_object_new(skel) __coolbpf_object_new(skel, NULL, NULL, NULL)
-
coolbpf_object_new_with_prehandler(skel, preload, preattach, ctx) __coolbpf_object_new(skel, preload, preattach, ctx)
Functions
- COOLBPF_API struct ksyms * ksyms__load (void)
load kernel symbols from /proc/kallsyms
- Returns:
struct ksyms*
- COOLBPF_API void ksyms__free (struct ksyms *ksyms)
release ksyms memory
- Parameters:
ksyms – ksyms object
- COOLBPF_API const struct ksym * ksyms__map_addr (const struct ksyms *ksyms, unsigned long addr)
find kernel symbol by memory address
- Parameters:
ksyms – ksyms object
addr – memory address
- Returns:
const struct ksym*