-
Notifications
You must be signed in to change notification settings - Fork 175
fix(userspace/libpman): fix modern bpf engine hot-reload. #2389
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
Conversation
Signed-off-by: Federico Di Pierro <nierro92@gmail.com>
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: FedeDP The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
/milestone 0.21.0 |
/cc @Andreagit97 |
Perf diff from master - unit tests
Heap diff from master - unit tests
Heap diff from master - scap file
Benchmarks diff from master
|
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #2389 +/- ##
=======================================
Coverage 77.18% 77.18%
=======================================
Files 231 231
Lines 30357 30357
Branches 4658 4658
=======================================
Hits 23430 23430
Misses 6927 6927
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
X64 kernel testing matrix
ARM64 kernel testing matrix
|
What type of PR is this?
/kind bug
Any specific area of the project related to this PR?
/area libpman
Does this PR require a change in the driver versions?
What this PR does / why we need it:
In #2255 i forgot to manage the hot-reload case; basically, in case
bpf_loop
was not supported, we put as first prog the_old
one, the one that is not usingbpf_loop
.BUT, we lost track of the other prog (the one using
bpf_loop
) that, upon an hot-reload, needs to be disabled (bpf_program__set_autoload(p, false)
) once again, otherwise we would try to load it and fail.This PR addresses the issue by storing the 0-indexed prog in
chosen_idx
to keep track of it.Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?: