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.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps github.com/cilium/ebpf from 0.13.2 to 0.16.0.
Release notes
Sourced from github.com/cilium/ebpf's releases.
... (truncated)
Commits
061e86d
map: remove misleading error message when creating without BTFb689d28
btf: fix panic when copying nil Type218b9f9
program: deprecate LogSize and VerifierError.Truncated63c6cf8
map: do not allocate on lookup when key doesn't exista61222d
fix a variety of Copy() problemsfbb9ed8
perf: do not add offline CPUs7e18818
info: make it harder to add backwards incompatible API88e8f88
link: fix nil pointer dereference in AttachXDP5976561
map: fix flaky TestMapIteratorAllocations9bd3c36
perf: fix panic when CPU is offlineDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show