-
Notifications
You must be signed in to change notification settings - Fork 3.4k
bpf/lib/lb.h: Fix active connection tracking + IPv6 #39509
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/lib/lb.h: Fix active connection tracking + IPv6 #39509
Conversation
/ci-verifier |
During some other work I discovered that the whole active connection tracking feature does not compile when enabled. Adding to the complexity tests to add some compile coverage as regression test. Will fix the actual issue in a subsequent commit. Signed-off-by: Dylan Reimerink <dylan.reimerink@isovalent.com>
When both IPv6 and active connection tracking are enabled, we are unable to compile, resulting in the following error: ``` ./lib/lb.h:1071:21: error: use of undeclared identifier 'ct_state' ``` This is because in `lb6_local` the name of the variable is `state` not `ct_state`. This issue seems to have been here since the introduction of the feature and was never caught due to a lack of testing. Signed-off-by: Dylan Reimerink <dylan.reimerink@isovalent.com>
42f14ae
to
ee5cb29
Compare
/test |
@@ -42,3 +42,4 @@ | |||
-DENABLE_EGRESS_GATEWAY=1 | |||
-DSERVICE_NO_BACKEND_RESPONSE=1 | |||
-DTRACE_NOTIFY=1 | |||
-DENABLE_ACTIVE_CONNECTION_TRACKING=1 |
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.
During some other work I discovered that the whole active connection
tracking feature does not compile when enabled. Adding to the complexity
tests to add some compile coverage as regression test.
Note complexity tests are different from compile tests. Compile tests are contained in bpf/Makefile, rather cheap, and covering various arbitrary combinations of options. These are complexity tests are should attempt to maximize complexity. Hence, this macro should also be added to bpf/Makefile and it should probably be in every single complexity test file given it seems likely to only increase complexity.
During some other work I discovered that the whole active connection tracking feature does not compile when enabled in combination with IPv6.
When both IPv6 and active connection tracking are enabled, we are unable to compile, resulting in the following error:
This is because in
lb6_local
the name of the variable isstate
notct_state
. This issue seems to have been here since the introduction of the feature and was never caught due to a lack of testing.Also adding to the complexity tests to add some compile coverage as regression test.