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

tetragon: Setup tailcalls directly in bpf programs #3002

Open
wants to merge 12 commits into
base: main
Choose a base branch
from

Conversation

olsajiri
Copy link
Contributor

@olsajiri olsajiri commented Oct 15, 2024

This is more straigt forward than current way (which still stays supported).
It also allows to override execve sensor functionality for projects that depend on tetragon.

Copy link

netlify bot commented Oct 15, 2024

Deploy Preview for tetragon ready!

Name Link
🔨 Latest commit b3d7221
🔍 Latest deploy log https://app.netlify.com/sites/tetragon/deploys/673dfaac462021000841c708
😎 Deploy Preview https://deploy-preview-3002--tetragon.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.

@olsajiri olsajiri added the release-note/minor This PR introduces a minor user-visible change label Oct 15, 2024
@olsajiri olsajiri force-pushed the pr/olsajiri/tailcalls branch 10 times, most recently from f60dee8 to f5c9c89 Compare October 20, 2024 20:29
@olsajiri olsajiri force-pushed the pr/olsajiri/tailcalls branch 8 times, most recently from 8b8c563 to c0a797d Compare November 19, 2024 15:03
We need the support for loading BTF with declaration tags,
cilium/ebpf/main is in a good shape now.

Signed-off-by: Jiri Olsa <[email protected]>
Disable content loading at this point, we just care about the map,
the content will be loaded when the whole object gets loaded.

Signed-off-by: Jiri Olsa <[email protected]>
because it got deprecated, replacing it with our version.

Signed-off-by: Jiri Olsa <[email protected]>
Switching to explicit tail call map definition. This way it's
easier to overload tail calls in other projects using tetragon.

It also allows us to switch execve sensors to tp_btf which is
not possible at the moment due to extra numbers in the program
section name.

Signed-off-by: Jiri Olsa <[email protected]>
Switching to explicit tail call map definition. This way it's
easier to overload tail calls in other projects using tetragon.

Signed-off-by: Jiri Olsa <[email protected]>
Switching to explicit tail call map definition. This way it's
easier to overload tail calls in other projects using tetragon.

Signed-off-by: Jiri Olsa <[email protected]>
Switching to explicit tail call map definition. This way it's
easier to overload tail calls in other projects using tetragon.

Signed-off-by: Jiri Olsa <[email protected]>
Switching to explicit tail call map definition. This way it's
easier to overload tail calls in other projects using tetragon.

Signed-off-by: Jiri Olsa <[email protected]>
Allow projects that use tetragon to specify their own tail call
map and overload execve program behaviour.

Signed-off-by: Jiri Olsa <[email protected]>
When calling this functions from other projects, they stay
global and it's important the verifier knows which argment
is context.

Adding also other argument related declaration tags.

Signed-off-by: Jiri Olsa <[email protected]>
Introducing CheckSensorLoadBase function to allow checks with
specific base sensor.

Signed-off-by: Jiri Olsa <[email protected]>
@olsajiri olsajiri marked this pull request as ready for review November 21, 2024 08:14
@olsajiri olsajiri requested review from willfindlay and a team as code owners November 21, 2024 08:14
@olsajiri olsajiri changed the title Pr/olsajiri/tailcalls tetragon: Setup tailcalls directly in bpf programs Nov 21, 2024
@olsajiri olsajiri requested a review from kkourt November 21, 2024 08:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
release-note/minor This PR introduces a minor user-visible change
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant