-
Notifications
You must be signed in to change notification settings - Fork 6
Open
Labels
OpenedDeveloper tools for opened frameworkDeveloper tools for opened frameworkenhancementNew feature or requestNew feature or request
Description
Part of the optimization done by OPENED is to shift probes around compatible hook points (see compatible_hookpoints on this link) to maximize performance and resource usage.
As far as I understand, we currently assume a probe P is compatible to a hook point H if all helper functions of P are available in H
A few considerations:
- is this really all it takes for the "majority" of cross hook point compilations to succeed?
- Is the transformation always semantically equivalent? Can the context state or even return values of helper functions change depending on the hookpoint attached? e.g., XDP doesn't have a PID vs non-XDP generally has a PID. Uprobe has the original function's address on the instruction pointer, Uretprobe has the BPF trampoline's address.
- Specifically for the current approach: How to deal with helper functions that are named slightly differently but "equivalent" enough amongst themselves?
Metadata
Metadata
Assignees
Labels
OpenedDeveloper tools for opened frameworkDeveloper tools for opened frameworkenhancementNew feature or requestNew feature or request