gitextract_xp4d7it9/ ├── .clang-format ├── .gitattributes ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ ├── bug_report.yml │ │ └── config.yml │ ├── dependabot.yml │ └── workflows/ │ ├── apidiff.yml │ ├── ci.yml │ └── trusted.yml ├── .gitignore ├── .golangci.yaml ├── .vimto.toml ├── CODEOWNERS ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE ├── MAINTAINERS.md ├── Makefile ├── README.md ├── asm/ │ ├── alu.go │ ├── alu_string.go │ ├── doc.go │ ├── dsl_test.go │ ├── func.go │ ├── func_lin.go │ ├── func_string.go │ ├── func_win.go │ ├── instruction.go │ ├── instruction_test.go │ ├── jump.go │ ├── jump_string.go │ ├── load_store.go │ ├── load_store_string.go │ ├── metadata.go │ ├── metadata_test.go │ ├── opcode.go │ ├── opcode_string.go │ ├── opcode_test.go │ └── register.go ├── attachtype_string.go ├── btf/ │ ├── btf.go │ ├── btf_test.go │ ├── btf_types.go │ ├── btf_types_string.go │ ├── core.go │ ├── core_reloc_test.go │ ├── core_test.go │ ├── dedup.go │ ├── dedup_test.go │ ├── doc.go │ ├── ext_info.go │ ├── ext_info_test.go │ ├── feature.go │ ├── feature_test.go │ ├── format.go │ ├── format_test.go │ ├── fuzz_test.go │ ├── handle.go │ ├── handle_test.go │ ├── kernel.go │ ├── kernel_test.go │ ├── marshal.go │ ├── marshal_test.go │ ├── strings.go │ ├── strings_test.go │ ├── testdata/ │ │ ├── bpf_core_read.h │ │ ├── btf_testmod.btf │ │ ├── btf_testmod.btf.base │ │ ├── fuzz/ │ │ │ └── FuzzExtInfo/ │ │ │ ├── 50a33736610b4a0945179db4c8a88e8247b05fbb25f50ed81e5393baf29bc5bc │ │ │ ├── 72534f53bd90cb52a017013499b11511535c1295bf0e22f856148c02454c323e │ │ │ └── a87a26efa64ed50b598ae8e333301d57d5f234527730f042d68ccc736e90c9fa │ │ ├── relocs-eb.elf │ │ ├── relocs-el.elf │ │ ├── relocs.c │ │ ├── relocs_enum-eb.elf │ │ ├── relocs_enum-el.elf │ │ ├── relocs_enum.c │ │ ├── relocs_read-eb.elf │ │ ├── relocs_read-el.elf │ │ ├── relocs_read.c │ │ ├── relocs_read_tgt-eb.elf │ │ ├── relocs_read_tgt-el.elf │ │ ├── relocs_read_tgt.c │ │ ├── tags-eb.elf │ │ ├── tags-el.elf │ │ └── tags.c │ ├── traversal.go │ ├── traversal_test.go │ ├── types.go │ ├── types_test.go │ ├── unmarshal.go │ ├── unmarshal_test.go │ ├── workarounds.go │ └── workarounds_test.go ├── cmd/ │ └── bpf2go/ │ ├── README.md │ ├── doc.go │ ├── flags.go │ ├── gen/ │ │ ├── compile.go │ │ ├── compile_test.go │ │ ├── doc.go │ │ ├── output.go │ │ ├── output.tpl │ │ ├── output_test.go │ │ ├── target.go │ │ ├── target_test.go │ │ ├── types.go │ │ └── types_test.go │ ├── internal/ │ │ └── module.go │ ├── main.go │ ├── main_test.go │ ├── makedep.go │ ├── makedep_test.go │ ├── test/ │ │ ├── api_test.go │ │ ├── doc.go │ │ ├── test_bpfeb.go │ │ ├── test_bpfeb.o │ │ ├── test_bpfel.go │ │ └── test_bpfel.o │ ├── testdata/ │ │ ├── minimal-eb.elf │ │ ├── minimal-el.elf │ │ └── minimal.c │ ├── tools.go │ └── tools_test.go ├── collection.go ├── collection_other.go ├── collection_test.go ├── collection_windows.go ├── collection_windows_test.go ├── cpu.go ├── cpu_other.go ├── cpu_test.go ├── cpu_windows.go ├── doc.go ├── docs/ │ ├── .gitignore │ ├── Makefile │ ├── Pipfile │ ├── README.md │ ├── ebpf/ │ │ ├── about.md │ │ ├── concepts/ │ │ │ ├── features.md │ │ │ ├── global-variables.md │ │ │ ├── loader.md │ │ │ ├── object-lifecycle.md │ │ │ ├── rlimit.md │ │ │ └── section-naming.md │ │ ├── contributing/ │ │ │ ├── architecture.md │ │ │ ├── index.md │ │ │ ├── new-example.md │ │ │ ├── new-feature.md │ │ │ └── windows.md │ │ ├── guides/ │ │ │ ├── getting-started.md │ │ │ ├── portable-ebpf.md │ │ │ └── windows-support.md │ │ ├── index.md │ │ ├── stylesheets/ │ │ │ └── extra.css │ │ └── users.md │ ├── examples/ │ │ ├── docs.c │ │ ├── docs_test.go │ │ ├── features_test.go │ │ ├── getting_started/ │ │ │ ├── counter.c │ │ │ ├── counter_bpfeb.go │ │ │ ├── counter_bpfeb.o │ │ │ ├── counter_bpfel.go │ │ │ ├── counter_bpfel.o │ │ │ ├── gen.go │ │ │ └── main.go │ │ ├── rlimit_test.go │ │ └── variables/ │ │ ├── gen.go │ │ ├── main.go │ │ ├── variables.c │ │ ├── variables_bpfeb.go │ │ ├── variables_bpfeb.o │ │ ├── variables_bpfel.go │ │ └── variables_bpfel.o │ ├── includes/ │ │ └── glossary.md │ ├── macros.py │ ├── mkdocs.yml │ ├── overrides/ │ │ └── partials/ │ │ └── source-file.html │ └── vars.yml ├── elf_reader.go ├── elf_reader_test.go ├── elf_sections.go ├── example_sock_elf_test.go ├── example_sock_extract_dist_test.go ├── examples/ │ ├── README.md │ ├── cgroup_skb/ │ │ ├── bpf_bpfeb.go │ │ ├── bpf_bpfeb.o │ │ ├── bpf_bpfel.go │ │ ├── bpf_bpfel.o │ │ ├── cgroup_skb.c │ │ └── main.go │ ├── fentry/ │ │ ├── bpf_bpfeb.go │ │ ├── bpf_bpfeb.o │ │ ├── bpf_bpfel.go │ │ ├── bpf_bpfel.o │ │ ├── fentry.c │ │ └── main.go │ ├── headers/ │ │ ├── LICENSE.BSD-2-Clause │ │ ├── bpf_endian.h │ │ ├── bpf_helper_defs.h │ │ ├── bpf_helpers.h │ │ ├── bpf_tracing.h │ │ ├── common.h │ │ └── update.sh │ ├── kprobe/ │ │ ├── bpf_bpfeb.go │ │ ├── bpf_bpfeb.o │ │ ├── bpf_bpfel.go │ │ ├── bpf_bpfel.o │ │ ├── kprobe.c │ │ └── main.go │ ├── kprobe_percpu/ │ │ ├── bpf_bpfeb.go │ │ ├── bpf_bpfeb.o │ │ ├── bpf_bpfel.go │ │ ├── bpf_bpfel.o │ │ ├── kprobe_percpu.c │ │ └── main.go │ ├── kprobepin/ │ │ ├── bpf_bpfeb.go │ │ ├── bpf_bpfeb.o │ │ ├── bpf_bpfel.go │ │ ├── bpf_bpfel.o │ │ ├── kprobe_pin.c │ │ └── main.go │ ├── map_in_map/ │ │ └── main.go │ ├── ringbuffer/ │ │ ├── bpf_bpfeb.go │ │ ├── bpf_bpfeb.o │ │ ├── bpf_bpfel.go │ │ ├── bpf_bpfel.o │ │ ├── main.go │ │ └── ringbuffer.c │ ├── sched_ext/ │ │ ├── bpf_bpfeb.go │ │ ├── bpf_bpfeb.o │ │ ├── bpf_bpfel.go │ │ ├── bpf_bpfel.o │ │ ├── main.go │ │ └── sched_ext.c │ ├── tcprtt/ │ │ ├── bpf_bpfeb.go │ │ ├── bpf_bpfeb.o │ │ ├── bpf_bpfel.go │ │ ├── bpf_bpfel.o │ │ ├── main.go │ │ └── tcprtt.c │ ├── tcprtt_sockops/ │ │ ├── bpf_bpfeb.go │ │ ├── bpf_bpfeb.o │ │ ├── bpf_bpfel.go │ │ ├── bpf_bpfel.o │ │ ├── bpf_sockops.h │ │ ├── main.go │ │ └── tcprtt_sockops.c │ ├── tcx/ │ │ ├── bpf_bpfeb.go │ │ ├── bpf_bpfeb.o │ │ ├── bpf_bpfel.go │ │ ├── bpf_bpfel.o │ │ ├── main.go │ │ └── tcx.c │ ├── tracepoint_in_c/ │ │ ├── bpf_bpfeb.go │ │ ├── bpf_bpfeb.o │ │ ├── bpf_bpfel.go │ │ ├── bpf_bpfel.o │ │ ├── main.go │ │ └── tracepoint.c │ ├── tracepoint_in_go/ │ │ └── main.go │ ├── uretprobe/ │ │ ├── bpf_x86_bpfel.go │ │ ├── bpf_x86_bpfel.o │ │ ├── main.go │ │ └── uretprobe.c │ ├── xdp/ │ │ ├── bpf_bpfeb.go │ │ ├── bpf_bpfeb.o │ │ ├── bpf_bpfel.go │ │ ├── bpf_bpfel.o │ │ ├── main.go │ │ └── xdp.c │ └── xdp_live_frame/ │ ├── bpf_bpfeb.go │ ├── bpf_bpfeb.o │ ├── bpf_bpfel.go │ ├── bpf_bpfel.o │ ├── main.go │ └── xdp.c ├── features/ │ ├── doc.go │ ├── link.go │ ├── link_test.go │ ├── map.go │ ├── map_test.go │ ├── misc.go │ ├── misc_test.go │ ├── prog.go │ ├── prog_test.go │ └── version.go ├── fuzz_test.go ├── go.mod ├── go.sum ├── helpers_test.go ├── info.go ├── info_test.go ├── internal/ │ ├── cmd/ │ │ ├── genfunctions.awk │ │ ├── gensections.awk │ │ └── genwinfunctions.awk │ ├── deque.go │ ├── deque_test.go │ ├── efw/ │ │ ├── enums.go │ │ ├── error_reporting.go │ │ ├── error_reporting_test.go │ │ ├── fd.go │ │ ├── map.go │ │ ├── module.go │ │ ├── native.go │ │ ├── object.go │ │ ├── proc.go │ │ ├── proc_test.go │ │ ├── program.go │ │ ├── result.go │ │ ├── result_string_windows.go │ │ ├── result_test.go │ │ └── structs.go │ ├── elf.go │ ├── endian_be.go │ ├── endian_le.go │ ├── epoll/ │ │ ├── poller.go │ │ └── poller_test.go │ ├── errors.go │ ├── errors_test.go │ ├── feature.go │ ├── feature_test.go │ ├── io.go │ ├── io_test.go │ ├── kallsyms/ │ │ ├── cache.go │ │ ├── kallsyms.go │ │ ├── kallsyms_test.go │ │ ├── reader.go │ │ └── reader_test.go │ ├── kconfig/ │ │ ├── kconfig.go │ │ ├── kconfig_test.go │ │ └── testdata/ │ │ └── test.kconfig │ ├── linux/ │ │ ├── auxv.go │ │ ├── auxv_test.go │ │ ├── cpu.go │ │ ├── cpu_test.go │ │ ├── doc.go │ │ ├── helper_test.go │ │ ├── kconfig.go │ │ ├── platform.go │ │ ├── statfs.go │ │ ├── statfs_test.go │ │ ├── vdso.go │ │ ├── vdso_test.go │ │ ├── version.go │ │ └── version_test.go │ ├── math.go │ ├── math_test.go │ ├── nil.go │ ├── output.go │ ├── output_test.go │ ├── platform/ │ │ ├── constants.go │ │ ├── constants_test.go │ │ ├── platform.go │ │ ├── platform_linux.go │ │ ├── platform_other.go │ │ └── platform_windows.go │ ├── prog.go │ ├── sys/ │ │ ├── doc.go │ │ ├── fd.go │ │ ├── fd_linux_test.go │ │ ├── fd_other.go │ │ ├── fd_windows.go │ │ ├── pinning_other.go │ │ ├── pinning_windows.go │ │ ├── ptr.go │ │ ├── ptr_32_be.go │ │ ├── ptr_32_le.go │ │ ├── ptr_64.go │ │ ├── ptr_test.go │ │ ├── signals.go │ │ ├── signals_test.go │ │ ├── syscall.go │ │ ├── syscall_other.go │ │ ├── syscall_test.go │ │ ├── syscall_windows.go │ │ └── types.go │ ├── sysenc/ │ │ ├── buffer.go │ │ ├── buffer_test.go │ │ ├── doc.go │ │ ├── layout.go │ │ ├── layout_test.go │ │ ├── marshal.go │ │ └── marshal_test.go │ ├── testdata/ │ │ ├── errno524.log │ │ ├── invalid-R0.log │ │ ├── invalid-ctx-access.log │ │ ├── invalid-member.log │ │ └── issue-43.log │ ├── testutils/ │ │ ├── bpffs_other.go │ │ ├── bpffs_windows.go │ │ ├── bpffs_windows_test.go │ │ ├── cap.go │ │ ├── cgroup.go │ │ ├── chan.go │ │ ├── checkers.go │ │ ├── checkers_test.go │ │ ├── cpu.go │ │ ├── fd_other.go │ │ ├── fd_windows.go │ │ ├── feature.go │ │ ├── feature_other.go │ │ ├── feature_test.go │ │ ├── feature_windows.go │ │ ├── glob.go │ │ ├── netns_linux.go │ │ ├── netns_other.go │ │ ├── programs.go │ │ ├── rlimit.go │ │ ├── seed.go │ │ └── testmain/ │ │ ├── fd_trace.go │ │ ├── main.go │ │ ├── windows.go │ │ └── windows_test.go │ ├── tracefs/ │ │ ├── kprobe.go │ │ ├── kprobe_test.go │ │ ├── perf_event_test.go │ │ ├── probetype_string.go │ │ ├── uprobe.go │ │ └── uprobe_test.go │ ├── unix/ │ │ ├── doc.go │ │ ├── errno_linux.go │ │ ├── errno_linux_test.go │ │ ├── errno_other.go │ │ ├── errno_string_windows.go │ │ ├── errno_test.go │ │ ├── errno_windows.go │ │ ├── error.go │ │ ├── error_test.go │ │ ├── strings_other.go │ │ ├── strings_windows.go │ │ ├── types_linux.go │ │ └── types_other.go │ ├── version.go │ └── version_test.go ├── link/ │ ├── anchor.go │ ├── cgroup.go │ ├── cgroup_test.go │ ├── doc.go │ ├── helpers_windows_test.go │ ├── iter.go │ ├── iter_test.go │ ├── kprobe.go │ ├── kprobe_multi.go │ ├── kprobe_multi_test.go │ ├── kprobe_test.go │ ├── link.go │ ├── link_other.go │ ├── link_other_test.go │ ├── link_test.go │ ├── link_windows.go │ ├── link_windows_test.go │ ├── netfilter.go │ ├── netfilter_test.go │ ├── netkit.go │ ├── netkit_test.go │ ├── netns.go │ ├── netns_test.go │ ├── perf_event.go │ ├── perf_event_test.go │ ├── program.go │ ├── program_test.go │ ├── query.go │ ├── query_test.go │ ├── raw_tracepoint.go │ ├── raw_tracepoint_test.go │ ├── socket_filter.go │ ├── socket_filter_test.go │ ├── struct_ops.go │ ├── struct_ops_test.go │ ├── syscalls.go │ ├── syscalls_test.go │ ├── tcx.go │ ├── tcx_test.go │ ├── tracepoint.go │ ├── tracepoint_test.go │ ├── tracing.go │ ├── tracing_test.go │ ├── uprobe.go │ ├── uprobe_multi.go │ ├── uprobe_multi_test.go │ ├── uprobe_test.go │ ├── xdp.go │ └── xdp_test.go ├── linker.go ├── linker_test.go ├── map.go ├── map_test.go ├── marshaler_example_test.go ├── marshalers.go ├── marshalers_test.go ├── memory.go ├── memory_test.go ├── memory_unsafe.go ├── memory_unsafe_tag.go ├── memory_unsafe_test.go ├── netlify.toml ├── perf/ │ ├── doc.go │ ├── reader.go │ ├── reader_test.go │ ├── ring.go │ └── ring_test.go ├── pin/ │ ├── doc.go │ ├── load.go │ ├── load_test.go │ ├── pin.go │ ├── walk_other.go │ ├── walk_test.go │ └── walk_windows.go ├── prog.go ├── prog_linux_test.go ├── prog_test.go ├── ringbuf/ │ ├── doc.go │ ├── helper_other_test.go │ ├── helper_test.go │ ├── helper_windows_test.go │ ├── reader.go │ ├── reader_other.go │ ├── reader_test.go │ ├── reader_windows.go │ ├── ring.go │ ├── ring_other.go │ └── ring_windows.go ├── rlimit/ │ ├── doc.go │ ├── rlimit_linux.go │ ├── rlimit_linux_test.go │ └── rlimit_other.go ├── scripts/ │ ├── update-efw-deps.sh │ ├── update-kernel-deps.sh │ └── windows/ │ ├── README.md │ ├── Setup.ps1 │ ├── autounattend.xml │ ├── setup-efw.sh │ └── setup.sh ├── struct_ops.go ├── struct_ops_test.go ├── syscalls.go ├── syscalls_test.go ├── testdata/ │ ├── arena-eb.elf │ ├── arena-el.elf │ ├── arena.c │ ├── btf_map_init-eb.elf │ ├── btf_map_init-el.elf │ ├── btf_map_init.c │ ├── common.h │ ├── constants-eb.elf │ ├── constants-el.elf │ ├── constants.c │ ├── docker/ │ │ ├── Dockerfile │ │ ├── IMAGE │ │ ├── Makefile │ │ ├── README.md │ │ ├── VERSION │ │ ├── llvm-snapshot.gpg.key │ │ └── llvm.list │ ├── errors-eb.elf │ ├── errors-el.elf │ ├── errors.c │ ├── fentry_fexit-eb.elf │ ├── fentry_fexit-el.elf │ ├── fentry_fexit.c │ ├── freplace-eb.elf │ ├── freplace-el.elf │ ├── freplace.c │ ├── fwd_decl-eb.elf │ ├── fwd_decl-el.elf │ ├── fwd_decl.c │ ├── invalid-kfunc-eb.elf │ ├── invalid-kfunc-el.elf │ ├── invalid-kfunc.c │ ├── invalid_btf_map_init-eb.elf │ ├── invalid_btf_map_init-el.elf │ ├── invalid_btf_map_init.c │ ├── invalid_map-eb.elf │ ├── invalid_map-el.elf │ ├── invalid_map.c │ ├── invalid_map_static-eb.elf │ ├── invalid_map_static-el.elf │ ├── invalid_map_static.c │ ├── iproute2_map_compat-eb.elf │ ├── iproute2_map_compat-el.elf │ ├── iproute2_map_compat.c │ ├── kconfig-eb.elf │ ├── kconfig-el.elf │ ├── kconfig.c │ ├── kfunc-eb.elf │ ├── kfunc-el.elf │ ├── kfunc-kmod-eb.elf │ ├── kfunc-kmod-el.elf │ ├── kfunc-kmod.c │ ├── kfunc.c │ ├── ksym-eb.elf │ ├── ksym-el.elf │ ├── ksym.c │ ├── linked-el.elf │ ├── linked.h │ ├── linked1-el.elf │ ├── linked1.c │ ├── linked2-el.elf │ ├── linked2.c │ ├── loader-clang-14-eb.elf │ ├── loader-clang-14-el.elf │ ├── loader-clang-17-eb.elf │ ├── loader-clang-17-el.elf │ ├── loader-clang-20-eb.elf │ ├── loader-clang-20-el.elf │ ├── loader.c │ ├── loader.h │ ├── loader_nobtf-eb.elf │ ├── loader_nobtf-el.elf │ ├── loader_nobtf.h │ ├── manyprogs-eb.elf │ ├── manyprogs-el.elf │ ├── manyprogs.c │ ├── map_spin_lock-eb.elf │ ├── map_spin_lock-el.elf │ ├── map_spin_lock.c │ ├── raw_tracepoint-eb.elf │ ├── raw_tracepoint-el.elf │ ├── raw_tracepoint.c │ ├── strings-eb.elf │ ├── strings-el.elf │ ├── strings.c │ ├── struct_ops-eb.elf │ ├── struct_ops-el.elf │ ├── struct_ops.c │ ├── subprog_reloc-eb.elf │ ├── subprog_reloc-el.elf │ ├── subprog_reloc.c │ ├── variables-eb.elf │ ├── variables-el.elf │ ├── variables.c │ └── windows/ │ ├── LICENSE │ └── cgroup_sock_addr.sys ├── types.go ├── types_string.go ├── types_windows.go ├── types_windows_test.go ├── variable.go └── variable_test.go