fix(fact-ebpf): improve compatibility with arm64 kernels#134
Draft
fix(fact-ebpf): improve compatibility with arm64 kernels#134
Conversation
4577812 to
cef027c
Compare
827d14b to
98fc082
Compare
cef027c to
5e3dc58
Compare
98fc082 to
f7b7885
Compare
5e3dc58 to
c74f34f
Compare
f7b7885 to
037a1c2
Compare
c74f34f to
ea10e32
Compare
In the context of ROX-30439, I started testing fact on some RHCOS versions and found some issues that are addressed by this PR, namely: * The relocation of kernfs_node for the renamed parent field was wrong, causing cgroups to not be captured correctly. * Some missing null checks that are not necessary on newer kernels. * path_unlink LSM hook is not allowed to call bpf_d_path on older kernels. This last point is the most involved part of the PR, I couldn't find a precise way to check if this call is allowed on the running kernel, so instead I created a small checks BPF object that can try to load a small probe and check if the load was successful, then use a constant loaded at runtime to exclude the call when needed.
ea10e32 to
fe72605
Compare
037a1c2 to
856f030
Compare
5 tasks
9eccab6 to
b801e91
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
A detailed explanation of the changes in your PR.
Feel free to remove this section if it is overkill for your PR, and the title of your PR is sufficiently descriptive.
Checklist
Automated testing
If any of these don't apply, please comment below.
Testing Performed
TODO(replace-me)
Use this space to explain how you tested your PR, or, if you didn't test it, why you did not do so. (Valid reasons include "CI is sufficient" or "No testable changes")
In addition to reviewing your code, reviewers must also review your testing instructions, and make sure they are sufficient.
For more details, ref the Confluence page about this section.