-
Notifications
You must be signed in to change notification settings - Fork 2.7k
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
bpf: Add BPF map operations for the StateDB reconciler #32123
Conversation
I left out the batch operations as I'm not sure how we could currently do this efficiently without bunch of copying and the benchmarks didn't show significant improvement in speed. Here's how it would approximately look like: https://github.com/cilium/cilium/pull/31035/files#diff-d8fb501ccfd280cddcf1eb74a221bcd6de40714f3fbba1176502fbb435ec18c7R165. |
Add index.Uint32 and use Append* functions instead for shorter implementation. Signed-off-by: Jussi Maki <jussi@isovalent.com>
f62c128
to
558373e
Compare
This allows defining the desired state of a BPF map as a StateDB table and to reconcile it with a BPF map. The table can be inspected with "cilium-dbg statedb dump" (or with a table-specific command), and the reconciliation state of each object can be queried. Failure the reconcile will be reported in module health, metrics and in the individual objects. See ops_linux_test.go for example usage. Signed-off-by: Jussi Maki <jussi@isovalent.com>
558373e
to
fefb136
Compare
/test |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
/test |
This allows defining the desired state of a BPF map as a StateDB table and to reconcile it with a BPF map. The table can be inspected with "cilium-dbg statedb dump" (or with a table-specific command), and the reconciliation state of each object can be queried. Failure the reconcile will be reported in module health, metrics and in the individual objects.
See ops_linux_test.go for example usage.