mirror of
https://github.com/varun-r-mallya/Python-BPF.git
synced 2025-12-31 21:06:25 +00:00
Add perf_event_output boilerplate
This commit is contained in:
@ -27,6 +27,7 @@ def hello(ctx: c_void_p) -> c_int32:
|
|||||||
dataobj.pid = process_id
|
dataobj.pid = process_id
|
||||||
dataobj.ts = ts
|
dataobj.ts = ts
|
||||||
print(f"clone called at {ts} by pid {process_id}")
|
print(f"clone called at {ts} by pid {process_id}")
|
||||||
|
events.output(dataobj)
|
||||||
return c_int32(0)
|
return c_int32(0)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -340,6 +340,10 @@ def bpf_get_current_pid_tgid_emitter(call, map_ptr, module, builder, func, local
|
|||||||
return pid
|
return pid
|
||||||
|
|
||||||
|
|
||||||
|
def bpf_perf_event_output_handler(call, map_ptr, module, builder, local_sym_tab=None):
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
helper_func_list = {
|
helper_func_list = {
|
||||||
"lookup": bpf_map_lookup_elem_emitter,
|
"lookup": bpf_map_lookup_elem_emitter,
|
||||||
"print": bpf_printk_emitter,
|
"print": bpf_printk_emitter,
|
||||||
@ -347,6 +351,7 @@ helper_func_list = {
|
|||||||
"update": bpf_map_update_elem_emitter,
|
"update": bpf_map_update_elem_emitter,
|
||||||
"delete": bpf_map_delete_elem_emitter,
|
"delete": bpf_map_delete_elem_emitter,
|
||||||
"pid": bpf_get_current_pid_tgid_emitter,
|
"pid": bpf_get_current_pid_tgid_emitter,
|
||||||
|
"output": bpf_perf_event_output_handler,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -30,3 +30,6 @@ class PerfEventArray:
|
|||||||
self.key_type = key_size
|
self.key_type = key_size
|
||||||
self.value_type = value_size
|
self.value_type = value_size
|
||||||
self.entries = {}
|
self.entries = {}
|
||||||
|
|
||||||
|
def output(self, data):
|
||||||
|
pass # Placeholder for output method
|
||||||
|
|||||||
Reference in New Issue
Block a user