Tags: YRXING/ebpf
Tags
btf: move vmlinux search logic into findVMLinux() loadKernelSpec() gets short-circuited in the first statement on most kernels, resulting in the vmlinux search code being rarely exercised successfully in CI. Split the search logic out into its own function to make it testable in isolation. Although virtme VMs don't have images at any of these paths, running the test suite on a host with a full distro does result in a proper test execution. Signed-off-by: Timo Beckers <[email protected]>
Deprecate StructOpts and perf.IsClosed() These were deprecated and scheduled to be removed in 0.8.0. Signed-off-by: Timo Beckers <[email protected]>
README.md: changes for clarity Signed-off-by: Liz Rice <[email protected]>
map: include errnos with errors
We replace some errnos from map syscalls with more descriptive
sentinel errors. Include the original errno with the error so
that both
errors.Is(err, ErrKeyNotExist)
errors.Is(err, unix.ENOENT)
work. We'll use this for other errors in the future where we
want to introduce our own errors without breaking callers that
rely on the (coarser) errno semantics.
prog: document ProgramSpec's KernelVersion field more accurately Signed-off-by: Timo Beckers <[email protected]>
btf: avoid Type copy in FuncProto.walk
FuncProto.walk currently takes a copy of FuncParam.Type since the
for loop implicitly makes a copy of the FuncParam value:
for _, m := range fp.Params {
m is a copy of the original param, so &m.Type is the address of a
temporary variable. Instead, iterate params using the index and
take the correct address. Also extend the tests to cover this case.
PreviousNext