Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(deps): update module github.com/cilium/ebpf to v0.16.0 #218

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Oct 23, 2023

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
github.com/cilium/ebpf v0.12.0 -> v0.16.0 age adoption passing confidence

Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.


Release Notes

cilium/ebpf (github.com/cilium/ebpf)

v0.16.0

Compare Source

program: automatic verifier log sizing and ProgramInfo.RecursionMisses()

For the longest time users had to specify ProgramOptions.LogSize to get the
full verifier log for large programs. The library now automatically figures out
the correct buffer size to use and the field is deprecated. It will be removed
in the next version.

ProgramInfo now exposes how often a program didn't execute due to recursion
limits via RecursionMisses.

perf, ringbuf: better control over wakeups, Flush()

There is a trade off between how fast samples are processed and how much CPU is
used. Reading samples as quickly as possible uses more CPU, reading in batches
is cheaper.

It's now possible to configure a "maximum time before a wakeup" by using
Reader.SetDeadline(). This now guarantees that any pending samples are read
at the end of the deadline, even if the Watermark wasn't reached.

It's also possible to manually flush the buffer using Flush().

Bugfixes

  • The various Copy() methods now to a full deep copy and all accept nil values.
  • link: kprobe and uprobe links can now be pinned.

What's Changed

New Contributors

Full Changelog: cilium/ebpf@v0.15.0...v0.16.0

v0.15.0

Compare Source

btf: bpf_core_type_matches is now supported

Programs can now use bpf_core_type_matches() for a stricter compatibility check. See https://github.com/cilium/ebpf/pull/1366.

program, btf: improve debuggability when CO-RE or kfunc fixup fails

The library now tries to return a more informative error when loading a program fails due to a failed CO-RE relocation or a missing kfunc. See https://github.com/cilium/ebpf/pull/1402.

btf: synthesise instruction comments into line info

asm.Comment in an instruction's Source() are now passed to the kernel in the form of BTF line info. See https://github.com/cilium/ebpf/pull/1417.

perf: add WakeupEvents support to Reader

A perf Reader can now be configured to be woken up after a specific number of events / samples have been submitted. See https://github.com/cilium/ebpf/pull/1404.

Bugfixes

  • program: fix loading a program which targets a function in a kernel module when CONFIG_DEBUG_INFO_BTF_MODULES is disabled, see #​1440.

Breaking changes

github.com/cilium/ebpf/btf
  • Copy: the transform argument was removed. Use the new btf.As function instead.
  • Transformer: removed. See above.

What's Changed

New Contributors

Full Changelog: cilium/ebpf@v0.14.0...v0.15.0

v0.14.0

Compare Source

btf: support for CO-RE relocations against kernel modules

It's now possible to use CO-RE relocations against types defined in kernel modules. See https://github.com/cilium/ebpf/pull/1300 by @​brycekahle.

link: netkit support

The link package now allows attaching to netkit interfaces. See https://github.com/cilium/ebpf/pull/1257 by @​hemanthmalla

link: support for iterating links

The new link.Iterator type allows enumerating all BPF links active. See https://github.com/cilium/ebpf/pull/1392 by @​mpastyl.

Bugfixes

Breaking changes

github.com/cilium/ebpf
  • ProgramOptions is not comparable anymore due to KernelModuleTypes.
github.com/cilium/ebpf/btf
  • CORERelocate had its singature change once again.

What's Changed

New Contributors

Full Changelog: cilium/ebpf@v0.13.2...v0.14.0

v0.13.2

Compare Source

What's Changed

Full Changelog: cilium/ebpf@v0.13.1...v0.13.2

v0.13.1

Compare Source

What's Changed

New Contributors

Full Changelog: cilium/ebpf@v0.13.0...v0.13.1

v0.13.0

Compare Source

Faster btf.LoadKernelSpec()

Obtaining the kernel's BTF used to be very slow and is now very fast. See https://github.com/cilium/ebpf/pull/1235 by @​lmb.

TCX

It's now possible to attach TC programs using the new bpf_link based TCX API. See https://github.com/cilium/ebpf/pull/1163 by @​lmb.

UprobeMulti and UretprobeMulti

These are the user-space equivalents to KprobeMulti and Kretprobe multi and allow
attaching to a large number of symbols quickly. See https://github.com/cilium/ebpf/pull/1269 by @​olsajiri.

Netfilter link

There is now support to attach Netfilter programs using bpf_links. See https://github.com/cilium/ebpf/pull/1313 by @​mehrdadrad.

Better ELF section naming compatibility

The list of recognised ELF section names is now automatically generated from
libbpf and should be more accurate and easier to keep up to date. See https://github.com/cilium/ebpf/pull/1209 by @​lmb.

Pre-allocate per-CPU values

It's now possible to cut down on allocations by pre-allocating per-CPU values. See https://github.com/cilium/ebpf/pull/1220 by @​alxn.

Batch operation support for per-CPU values

Batch operations like Map.BatchLookup now support per-CPU values. Note that this
is not particularly optimised, please check whether it is faster based on your
use case. See https://github.com/cilium/ebpf/pull/1192 by @​alxn.

Breaking changes

This release requires at least Go 1.21.

github.com/cilium/ebpf
  • (*Map).BatchLookup, (*Map).BatchLookupAndDelete: now take a MapBatchCursor.
    The previous implementation did not properly account for differences between
    map types and was unsafe.
github.com/cilium/ebpf/btf
  • CORERelocate: now takes an additional argument, which is usually Spec.TypeID.
  • MarshalExtInfos: now takes an additional *Builder instead of allocating it.
    Simply pass NewBuilder().

Both of these are considered somewhat internal API of the library.

github.com/cilium/ebpf/features
  • HaveBoundedLoops: changed from var to func
  • HaveLargeInstructions: changed from var to func
  • HaveV2ISA: changed from var to func
  • HaveV3ISA: changed from var to func
github.com/cilium/ebpf/link
  • QueryOptions.Path: removed. Instead, pass an fd to the directory via QueryOptions.Target.
  • QueryPrograms: now returns QueryResult to be able to extend the API.
  • RawAttachProgramOptions.Replace: removed. Instead, pass ReplaceProgram() to RawAttachProgramOptions.Anchor.

What's Changed

New Contributors

Full Changelog: cilium/ebpf@v0.12.3...v0.13.0

v0.12.3

Compare Source

This is a small release to fix an incompatibility with golang.org/x/sys/unix@v0.14.0. There is a variety of performance improvements as well.

What's Changed

New Contributors

Full Changelog: cilium/ebpf@v0.12.2...v0.12.3

v0.12.2

Compare Source

This release fixes unmarshaling from a map operation into a []byte, see #​1180. This is a regression in v0.12.0.

We now also properly return an error when the value to unmarshal into is too small, see #​1181. This behaviour has existed for a long time.

What's Changed

New Contributors

Full Changelog: cilium/ebpf@v0.12.1...v0.12.2

v0.12.1

Compare Source

Fixes

Fix ProgramInfo.Instructions failing to decode ExtInfos

A recent change to ProgramInfo.Instructions failed to take a difference between kernel and ELF wire format into account. This meant that retrieving the instructions of a program from the kernel failed with a error.

See #​1168, fixed by #​1169.

Fix reading auxv on 32-bit platforms

The code to determine the kernel version from vdso has been broken on 32-bit platforms. Note that 32-bit arches are not officially supported to the fix is best effort.

See #​1133, fixed by #​1144.

What's Changed

Full Changelog: cilium/ebpf@v0.12.0...v0.12.1


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@github-actions
Copy link

PR Environments:

@renovate renovate bot changed the title fix(deps): update module github.com/cilium/ebpf to v0.12.2 fix(deps): update module github.com/cilium/ebpf to v0.12.3 Nov 9, 2023
@renovate renovate bot force-pushed the renovate/github.com-cilium-ebpf-0.x branch from 6f2724e to 96bf97f Compare November 9, 2023 17:13
@renovate renovate bot force-pushed the renovate/github.com-cilium-ebpf-0.x branch from 96bf97f to 70eacc3 Compare February 15, 2024 19:16
@renovate renovate bot changed the title fix(deps): update module github.com/cilium/ebpf to v0.12.3 fix(deps): update module github.com/cilium/ebpf to v0.13.0 Feb 15, 2024
@renovate renovate bot force-pushed the renovate/github.com-cilium-ebpf-0.x branch from 70eacc3 to 83fccb5 Compare February 22, 2024 13:16
@renovate renovate bot changed the title fix(deps): update module github.com/cilium/ebpf to v0.13.0 fix(deps): update module github.com/cilium/ebpf to v0.13.1 Feb 22, 2024
@renovate renovate bot force-pushed the renovate/github.com-cilium-ebpf-0.x branch from 83fccb5 to 5be1a71 Compare February 22, 2024 22:02
@renovate renovate bot changed the title fix(deps): update module github.com/cilium/ebpf to v0.13.1 fix(deps): update module github.com/cilium/ebpf to v0.13.2 Feb 22, 2024
@renovate renovate bot force-pushed the renovate/github.com-cilium-ebpf-0.x branch from 5be1a71 to 9732470 Compare March 27, 2024 11:26
@renovate renovate bot changed the title fix(deps): update module github.com/cilium/ebpf to v0.13.2 fix(deps): update module github.com/cilium/ebpf to v0.14.0 Mar 27, 2024
@renovate renovate bot force-pushed the renovate/github.com-cilium-ebpf-0.x branch from 9732470 to f5e4b46 Compare March 29, 2024 08:14
@renovate renovate bot force-pushed the renovate/github.com-cilium-ebpf-0.x branch from f5e4b46 to 2fa75ab Compare April 14, 2024 11:26
@renovate renovate bot force-pushed the renovate/github.com-cilium-ebpf-0.x branch from 2fa75ab to bf99dc1 Compare April 22, 2024 15:33
@renovate renovate bot changed the title fix(deps): update module github.com/cilium/ebpf to v0.14.0 fix(deps): update module github.com/cilium/ebpf to v0.15.0 Apr 22, 2024
@renovate renovate bot force-pushed the renovate/github.com-cilium-ebpf-0.x branch from bf99dc1 to 76f9916 Compare May 9, 2024 12:08
Copy link
Contributor Author

renovate bot commented Jun 4, 2024

ℹ Artifact update notice

File name: go.mod

In order to perform the update(s) described in the table above, Renovate ran the go get command, which resulted in the following additional change(s):

  • 1 additional dependency was updated
  • The go directive was updated for compatibility reasons

Details:

Package Change
go 1.19 -> 1.23.1
golang.org/x/sys v0.14.0 -> v0.20.0

@renovate renovate bot force-pushed the renovate/github.com-cilium-ebpf-0.x branch from 76f9916 to 8240480 Compare June 4, 2024 12:32
@renovate renovate bot force-pushed the renovate/github.com-cilium-ebpf-0.x branch from 8240480 to b0af6de Compare June 16, 2024 07:40
@renovate renovate bot force-pushed the renovate/github.com-cilium-ebpf-0.x branch from b0af6de to e3378d0 Compare July 14, 2024 09:48
@renovate renovate bot force-pushed the renovate/github.com-cilium-ebpf-0.x branch from e3378d0 to 5716567 Compare July 24, 2024 14:01
@renovate renovate bot changed the title fix(deps): update module github.com/cilium/ebpf to v0.15.0 fix(deps): update module github.com/cilium/ebpf to v0.16.0 Jul 24, 2024
@renovate renovate bot force-pushed the renovate/github.com-cilium-ebpf-0.x branch from 5716567 to 1bd2f0e Compare September 11, 2024 16:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants