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

Merged
merged 12 commits into from
Nov 22, 2024
Merged

Commits on Nov 20, 2024

  1. github: Allow extern declarations in c files

    Signed-off-by: Jiri Olsa <[email protected]>
    olsajiri committed Nov 20, 2024
    Configuration menu
    Copy the full SHA
    ea0aeff View commit details
    Browse the repository at this point in the history
  2. tetragon: Update ebpf version

    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]>
    olsajiri committed Nov 20, 2024
    Configuration menu
    Copy the full SHA
    6e29440 View commit details
    Browse the repository at this point in the history
  3. tetragon: Disable contents loading in initial map loading

    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]>
    olsajiri committed Nov 20, 2024
    Configuration menu
    Copy the full SHA
    f9b756e View commit details
    Browse the repository at this point in the history
  4. tetragon: Remove ebpf spec.RewriteConstants call

    because it got deprecated, replacing it with our version.
    
    Signed-off-by: Jiri Olsa <[email protected]>
    olsajiri committed Nov 20, 2024
    Configuration menu
    Copy the full SHA
    d2b0406 View commit details
    Browse the repository at this point in the history
  5. tetragon: Load tail calls directly in execve program

    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]>
    olsajiri committed Nov 20, 2024
    Configuration menu
    Copy the full SHA
    56cfe43 View commit details
    Browse the repository at this point in the history
  6. tetragon: Load tail calls directly in generickprobe program

    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]>
    olsajiri committed Nov 20, 2024
    Configuration menu
    Copy the full SHA
    2e60f7f View commit details
    Browse the repository at this point in the history
  7. tetragon: Load tail calls directly in generictracepoint program

    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]>
    olsajiri committed Nov 20, 2024
    Configuration menu
    Copy the full SHA
    31d241a View commit details
    Browse the repository at this point in the history
  8. tetragon: Load tail calls directly in genericlsm program

    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]>
    olsajiri committed Nov 20, 2024
    Configuration menu
    Copy the full SHA
    708196e View commit details
    Browse the repository at this point in the history
  9. tetragon: Load tail calls directly in genericuprobe program

    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]>
    olsajiri committed Nov 20, 2024
    Configuration menu
    Copy the full SHA
    e290086 View commit details
    Browse the repository at this point in the history
  10. tetragon: Allow to override execve tail calls

    Allow projects that use tetragon to specify their own tail call
    map and overload execve program behaviour.
    
    Signed-off-by: Jiri Olsa <[email protected]>
    olsajiri committed Nov 20, 2024
    Configuration menu
    Copy the full SHA
    653bc6b View commit details
    Browse the repository at this point in the history
  11. tetragon: Mark some execve functions with __arg_ctx

    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]>
    olsajiri committed Nov 20, 2024
    Configuration menu
    Copy the full SHA
    fbad057 View commit details
    Browse the repository at this point in the history
  12. tetragon: Introduce CheckSensorLoadBase function

    Introducing CheckSensorLoadBase function to allow checks with
    specific base sensor.
    
    Signed-off-by: Jiri Olsa <[email protected]>
    olsajiri committed Nov 20, 2024
    Configuration menu
    Copy the full SHA
    55577e9 View commit details
    Browse the repository at this point in the history