bpf-loader-lib 0.2.1

A library to load json-described ebpf programs, and automatically poll outputs from the program
Documentation
ELF��t@@��w c
���{
����������������yU)������"�#a���c�����������q��y�����������qa���c�q��aaW���q��c�-�q�������w c��g w ]J����������ya�yU9�������yy-q.�(����'�#�{va���c������������q��y�����������qa���c�0����������qa���wW�c�a���a�����Dual BSD/GPL���9�9/(   	.2
8@ KP@\�`
�fKP@qKP@y���@�`���!��K��� �� # 
(,"���'%3'�9)�?*� E@L`S.�^b n&@�2������� �@�`���3��5�C�E��F����
�Q&S@0V�;9�AWP7@bXeX@oY�xj� �`!��!��!��!�&"�@"�`"�a"�b"c"�"�"(�"8�"L�"S&�"`l#��$n�$s&�$�2%�2@%�9�%�9&�2�&�9�&�9@'�|�'��(�9*�9�*��+��@+
��+�+#,)@,/��,<&@-B&�-I�-T.c&@.k&�.s��.��@1���1���1��2��@2���2��3��@3���3��4��@4���4���4��5��@5��5��5&�6(��647A�@7L��7Z��7c�7m�8u�8��8��9�� 9��@9���9�2:��@:�)�:���:��;��@;���;
��;�<%&@<4��<A��<F�>T�>a?n�@?{��?��?��?��@�9@@���@��A�9@A���A		�B	C&	�@C6	��CG	9�DW	g@Ea	��Ei	��Ex	��E}	F�	&@F�	��F�G�	��G�	��G�	�@H�	�H�	�H�	&�H�	I�	@I
&�I
&�I%
�J+
@J>
2�JN
��J\
*Kk
)@Kt
�K}
�K�
�K�
�K>�
�L�
�N'�&�
@�
@	(�
@�
+�
�
,�
-�
/1@&0/+3,$4
u;�H6M7�V9@��fa@r�{���;@�
�?@
�@�
�@�
�&�A��&�@��&8@8�7&:#:@9(�9D@M�X�an@y����<�@������@����
/
@D
�O
�_
r
@�
��
��
�
@�
��
=�
>�
@5P�
	@@�*�3�B&K&@X&�aB�ajs x0�9�&��&��� �0�D@C{����7����@����<
@��� �+�6�H�SG�\G�k@sHxI�J@�N�3O��O��O��O�� s7�I��<K
LM���G[�P�R
STU&0 &"
@,
�9
�E(�P9@Z9�bo(dki@[p�&�&@�Z��Z��7�&��X�\@�&��_��9��`@�a��&��c)@d�+g�5hH]QQ^X& d7g&�Ib
~Wwe�f�
<a5Z���k `0�mp@n
(ol(�q�s�z(�r�@�`�����r�tKv w@���u�%/x4yHe @{E@J`V&�]&�ple&~p@}~}R/#@v��{���������,���OO�������sP���@�`�@$4�<4�K8@4�8��
S_ cW`�wjs9YXdyx}��U��9��������&�J�������m���@v�����&��tLMqK]O�^#86<@B�H�NY@e�{�U����TrQZ� �d��@��`�9���,����v�@����9����"9-9�;9K�U�_�i�qy �@�*`�2������@������)@���o�
�@�&��@�
��s 5�:�@I�HRTl�qw*��n����@�`fz}�����&���� �0�&@�&����&��&�&@&�&� &@*�5�HL
�X�_�e� K�(k�,m�-q�/s�0z�4~�5��6��7��8���D��9�9��9V7��@�9��}�9��� @������)3�@`���(e�4G@Z�a�q�v��
���
���
��(��d@�e��e����9�����^��9�2����,�d�9@&�$0�@6�=@L`Y���i,�u����&����@�����@�����)�@�	��k
)@9�+����A����W����n�������������d�5�xK� �@������@A	BCD'E6FAGNH�ISJXKeL�MtN~O�Q�R�S�T�U�V�W�X�YZ[&\1]9^C_N`Ua��b����j@}��������@��`��p�����"3;GS[bn{��
���2u)@�&�3����@�������@����`������
`��@&�&�- 1@�`:��D�@O�c@g`-�@kGm9u}@(���9���&�&@�O�KO��O�O���@��i���v��9@V���s.�/�,@�
���9v��*�g
�m
:	
�
R�ch@l
�u��|@��K���@������@���������	�@
��
N�
kh��	�   % . 7 !C %N &Y (�b  ^f  jo y } @� �� &� &@� &�� &�� &� &@� &�� &�� &� &@� &�� &�� &� &@� &�� &��&� &@�&��&�� &N|U�\� � &H@1� &@3� � !!!)!+!/!	p(!,! 0!@4!`8!�<!�@!�D! ��
`M!(!�,!�0!� Z!�0"@^!�d!�D!%o!&�'
(�#$y!}!@4!8! <!@@!` @0�!'�!'�!�(!,! 0!@4!`8!�<!�@!�D! ��!O`�!Oh�!Op�!Ox�!O��!O��*��!`�!@�!!�!,�!."@""@f -�OO1[# ���@�����!
(0�#2 
�%4
7	
�%6:
;	<�%(�%
�@�%`������%9?
@	A�%���% ��@�%B� �%>&=C
& &8&5
 &�L��2&;&�D&\&�g&o&|&�&�&�&�&�&
�&\�&W	�&���&��&'''3'H'�X'f'�v'�}'x	�'��'�'�'�'�'�'�'((%(int__ARRAY_SIZE_TYPE__pid_t__kernel_pid_tu64__u64unsigned long longtypemax_entrieskeyvalueexec_startrb_execrb_exittrace_event_raw_sched_process_execent__data_loc_filenamepidold_pid__datatrace_entryflagspreempt_countunsigned shortunsigned charu32__u32unsigned intcharctxhandle_exectp/sched/sched_process_exec/root/eunomia-bpf/bpf-loader-rs/bpf-loader-lib/assets/multiple_export_ringbuf/multiple.bpf.cint handle_exec(struct trace_event_raw_sched_process_exec* ctx) {    pid = bpf_get_current_pid_tgid() >> 32;    ts = bpf_ktime_get_ns();    bpf_map_update_elem(&exec_start, &pid, &ts, BPF_ANY);    if (min_duration_ns)    e = bpf_ringbuf_reserve(&rb_exec, sizeof(*e), 0);    if (!e)    task = (struct task_struct*)bpf_get_current_task();    e->pid = pid;task_structthread_infostatestackusageptraceon_cpuwake_entrycpuwakee_flipswakee_flip_decay_tslast_wakeerecent_used_cpuwake_cpuon_rqpriostatic_prionormal_priort_prioritysched_classsertsched_task_groupdlbtrace_seqpolicynr_cpus_allowedcpus_ptrcpus_masksched_infotaskspushable_taskspushable_dl_tasksmmactive_mmvmacacherss_statexit_stateexit_codeexit_signalpdeath_signaljobctlpersonalitysched_reset_on_forksched_contributes_to_loadsched_migratedsched_remote_wakeupin_execvein_iowaitrestore_sigmaskno_cgroup_migrationfrozenatomic_flagsrestart_blocktgidstack_canaryreal_parentparentchildrensiblinggroup_leaderptracedptrace_entrythread_pidpid_linksthread_groupthread_nodevfork_doneset_child_tidclear_child_tidutimestimegtimeprev_cputimenvcswnivcswstart_timestart_boottimemin_fltmaj_fltposix_cputimersptracer_credreal_credcredcached_requested_keycommnameidatasysvsemsysvshmfsfilesnsproxysignalsighandblockedreal_blockedsaved_sigmaskpendingsas_ss_spsas_ss_sizesas_ss_flagstask_worksaudit_contextloginuidsessionidseccompparent_exec_idself_exec_idalloc_lockpi_lockwake_qpi_waiterspi_top_taskpi_blocked_onjournal_infobio_listplugreclaim_statebacking_dev_infoio_contextcapture_controlptrace_messagelast_siginfoioacacct_rss_mem1acct_vm_mem1acct_timexpdmems_allowedmems_allowed_seqcpuset_mem_spread_rotorcpuset_slab_spread_rotorcgroupscg_listrobust_listcompat_robust_listpi_state_listpi_state_cachefutex_exit_mutexfutex_stateperf_event_ctxpperf_event_mutexperf_event_listmempolicyil_prevpref_node_forkrseqrseq_sigrseq_event_masktlb_ubcsplice_pipetask_fragdelaysnr_dirtiednr_dirtied_pausedirty_paused_whentimer_slack_nsdefault_timer_slack_nstracetrace_recursionutaskpagefault_disabledoom_reaper_liststack_vm_areastack_refcountsecuritymce_addrmce_ripvmce_whole_page__mce_reservedmce_kill_methreadstatusunsigned longlongrefcount_trefcount_structrefsatomic_tcounter__call_single_nodellistllist_nodenextu_flagsa_flagssched_entityloadrun_nodegroup_nodesum_exec_runtimevruntimeprev_sum_exec_runtimenr_migrationsstatisticsdepthcfs_rqmy_qrunnable_weightavgload_weightweightinv_weightrb_node__rb_parent_colorrb_rightrb_leftlist_headprevsched_statisticswait_startwait_maxwait_countwait_sumiowait_countiowait_sumsleep_startsleep_maxsum_sleep_runtimeblock_startblock_maxexec_maxslice_maxnr_migrations_coldnr_failed_migrations_affinenr_failed_migrations_runningnr_failed_migrations_hotnr_forced_migrationsnr_wakeupsnr_wakeups_syncnr_wakeups_migratenr_wakeups_localnr_wakeups_remotenr_wakeups_affinenr_wakeups_affine_attemptsnr_wakeups_passivenr_wakeups_idles64__s64long longsched_avglast_update_timeload_sumrunnable_sumutil_sumperiod_contribload_avgrunnable_avgutil_avgutil_estenqueuedewmasched_rt_entityrun_listtimeoutwatchdog_stamptime_sliceon_listbacksched_dl_entitydl_runtimedl_deadlinedl_perioddl_bwdl_densityruntimedeadlinedl_throttleddl_boosteddl_yieldeddl_non_contendingdl_overrundl_timerinactive_timerhrtimernode_softexpiresfunctionbaseis_relis_softis_hardtimerqueue_nodeexpiresktime_thrtimer_restartHRTIMER_NORESTARTHRTIMER_RESTARTu8__u8cpumask_tcpumaskbitspcountrun_delaylast_arrivallast_queuedplist_nodeprio_listnode_listseqnumvmasvm_area_structvm_startvm_endvm_nextvm_prevvm_rbrb_subtree_gapvm_mmvm_page_protvm_flagssharedanon_vma_chainanon_vmavm_opsvm_pgoffvm_filevm_private_dataswap_readahead_infovm_policyvm_userfaultfd_ctxpgprot_tpgprotpgprotval_trbrb_subtree_lastatomic_long_tatomic64_ttask_rss_stateventscountfnfutexnanosleeppolluaddrvalbitsettimeuaddr2clockidclockid_t__kernel_clockid_ttimespec_typeTT_NONETT_NATIVETT_COMPATrmtpcompat_rmtpufdsnfdshas_timeouttv_sectv_nsechlist_nodepprevlockraw_spinlock_traw_spinlockraw_lockarch_spinlock_tqspinlocklockedlocked_pendingtailu16__u16basestimers_activeexpiry_activeposix_cputimer_basenextevttqheadtimerqueue_headrb_rootrb_root_cachedrb_leftmostsysv_semundo_listsysv_shmshm_clistsigset_tsigsigpendinglistsize_t__kernel_size_t__kernel_ulong_tkuid_tuid_t__kernel_uid32_tmodefilterspinlock_tspinlockrlockwake_q_nodekernel_siginfo_ttask_io_accountingrcharwcharsyscrsyscwread_byteswrite_bytescancelled_write_bytesnodemask_tseqcount_tseqcountsequencemutexownerwait_lockosqwait_listoptimistic_spin_queueperf_event_contextpmuactive_ctx_listpinned_groupsflexible_groupsevent_listpinned_activeflexible_activenr_eventsnr_activeis_activenr_statnr_freqrotate_disablerotate_necessaryrefcounttasktimestampparent_ctxparent_gengenerationpin_counttask_ctx_datacallback_headperf_event_groupstreeindexfuncshorttlbflush_unmap_batcharchflush_requiredwritablearch_tlbflush_unmap_batchbool_Boolrcu_usersrcupage_fragpageoffsetsizethread_structtls_arrayspesdsfsindexgsindexfsbasegsbaseptrace_bpsdebugreg6ptrace_dr7cr2trap_nrerror_codeio_bitmapiopl_emuladdr_limitsig_on_uaccess_errfpudesc_structlimit0base0base1sdplplimit1avlldgbase2perf_eventevent_entrysibling_listactive_listgroup_indexmigrate_entryhlist_entryactive_entrynr_siblingsevent_capsgroup_capspmu_privateattach_statechild_counttotal_time_enabledtotal_time_runningtstampshadow_ctx_timeattrheader_sizeid_header_sizeread_sizehwchild_total_time_enabledchild_total_time_runningchild_mutexchild_listoncpuowner_entrymmap_mutexmmap_countrb_entryrcu_batchesrcu_pendingwaitqfasyncpending_wakeuppending_killpending_disableevent_limitaddr_filtersaddr_filter_rangesaddr_filters_genaux_eventdestroynsidclockoverflow_handleroverflow_handler_contextorig_overflow_handlerprogtp_eventsb_listperf_event_statePERF_EVENT_STATE_DEADPERF_EVENT_STATE_EXITPERF_EVENT_STATE_ERRORPERF_EVENT_STATE_OFFPERF_EVENT_STATE_INACTIVEPERF_EVENT_STATE_ACTIVElocal64_talocal_tperf_event_attrconfigsample_typeread_formatdisabledinheritpinnedexclusiveexclude_userexclude_kernelexclude_hvexclude_idlemmapfreqinherit_statenable_on_execwatermarkprecise_ipmmap_datasample_id_allexclude_hostexclude_guestexclude_callchain_kernelexclude_callchain_usermmap2comm_execuse_clockidcontext_switchwrite_backwardnamespacesksymbolbpf_eventaux_outputcgroup__reserved_1bp_typebranch_sample_typesample_regs_usersample_stack_usersample_regs_intraux_watermarksample_max_stack__reserved_2aux_sample_size__reserved_3sample_periodsample_freqwakeup_eventswakeup_watermarkbp_addrkprobe_funcuprobe_pathconfig1bp_lenkprobe_addrprobe_offsetconfig2__s32hw_perf_eventtargetprev_countlast_periodperiod_leftinterrupts_seqinterruptsfreq_time_stampfreq_count_stamplast_tagconfig_baseevent_baseevent_base_rdpmcidxlast_cpuextra_regbranch_reghw_perf_event_extraregalloctp_listpwr_accptscinfobp_listarch_hw_breakpointaddressmaskleniommu_bankiommu_cntrpaddingconfconf1wait_queue_head_twait_queue_headheadirq_workllnodeperf_addr_filters_headnr_file_filtersperf_overflow_handler_tperf_sample_dataaddrrawbr_stackperiodtxndata_srciptid_entrystream_idcpu_entrycallchainaux_sizeregs_userregs_user_copyregs_intrstack_user_sizephys_addrperf_mem_data_srcmem_opmem_lvlmem_snoopmem_lockmem_dtlbmem_lvl_nummem_remotemem_snoopxmem_rsvdtidreservedperf_regsabiregspt_regsr15r14r13r12bpbxr11r10r9r8axcxdxsidiorig_axcsssmm_segment_tsegavx512_timestampfpregs_statefsavefxsavesoftxsave__paddingfregs_statecwdswdtwdfipfcsfoofosst_spacefxregs_statefopmxcsrmxcsr_maskxmm_spaceriprdppadding1sw_reservedswregs_stateftopchangedlookaheadno_updatermalimitentry_eipxregs_statei387headerextended_state_areaxstate_headerxfeaturesxcomp_bv0:57    e->ppid = BPF_CORE_READ(task, real_parent, tgid);0:55    bpf_get_current_comm(&e->comm, sizeof(e->comm));0:1    fname_off = ctx->__data_loc_filename & 0xFFFF;                       (void*)ctx + fname_off);    bpf_probe_read_str(&e->filename, sizeof(e->filename),    bpf_ringbuf_submit(e, 0);}trace_event_raw_sched_process_templatehandle_exittp/sched/sched_process_exit    id = bpf_get_current_pid_tgid();    pid = id >> 32;    tid = (u32)id;    if (pid != tid)    start_ts = bpf_map_lookup_elem(&exec_start, &pid);    if (start_ts)        duration_ns = bpf_ktime_get_ns() - *start_ts;    else if (min_duration_ns)    bpf_map_delete_elem(&exec_start, &pid);    if (min_duration_ns && duration_ns < min_duration_ns)    e = bpf_ringbuf_reserve(&rb_exit, sizeof(*e), 0);    e->duration_ns = duration_ns;0:38    e->exit_code = (BPF_CORE_READ(task, exit_code) >> 8) & 0xff;LICENSEmin_duration_nsevent_exitduration_nsppid__dummy1event_execfilename__dummy2.bss.maps.rodatalicense__kernel_timespecblk_plugbpf_progcompat_robust_list_headcompletioncss_setevent_filterfasync_structfilefiles_structfs_structfutex_pi_statehrtimer_clock_basekernel_siginfomath_emu_infomm_structold_timespec32perf_addr_filter_rangeperf_branch_stackperf_bufferperf_callchain_entryperf_raw_recordpid_namespacepipe_inode_infopollfdrobust_list_headrt_mutex_waiterseccomp_filtersem_undo_listsighand_structsignal_structtask_delay_infotask_grouptrace_event_calluprobe_taskvm_operations_structvm_struct�� $$t�t8#�#38T��T��T�&�T�	� T
�(T�8TPT<�pTv	��Tv	��T�	��T�	��T�!��T	��T	��TT*"�8T@T*"�PT*"�XT*"
�`Te"�pTe"��T�"��T�"#�T#��T#��T;#�TY#�#)T�#
<T�#@T�#	@ T�#D0T�#	P@THT
$`hTA$	dpTS$h�TS$,h�TS$*h�T�$l�T�$l�T�T�$t�T�$	�T�$�T�$*�T�$	�T
%	�HT�	�PT�!�`TC%�hT	�pT	��T�T*"��T�T*"��T*"��T*"
�TTj%�0Tj%�8Tj%4�@Tj%:�HTj%�PTe"�`Te"�pT;#��TY#�8�$%"$`"��"�#x$%"�$`"�$e%�����������	 ^�	 ?�K	0�



P	p
�H	�
�	�

�6�6�6	�67
7
07,<P`p�������� 0@P`p��������(8HXhx��������(8HXhx��������(8HXhx�������.text.rel.BTF.extexec_start.reltp/sched/sched_process_exithandle_exitrb_exit.bss.mapsmin_duration_ns.llvm_addrsiglicense.reltp/sched/sched_process_exechandle_execrb_exec.strtab.symtab.rodata.rel.BTFLICENSELBB1_8LBB1_6LBB1_4LBB1_3LBB0_3__dummy2__dummy1��s@�@��	@�m0#(�	@nP|�
��X�@S�b�	@hnp g,	@�n�
nL�o��s�Pl�