-
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
CI: verifier-test.sh always skips cgroup programs #17125
Comments
Sigh, good catch, I was not aware we had these; we should definitely find a way to error. |
I think the reason we don't error out right now is that depending on kernel support, it's expected that we skip the CG tests (why error out if you can't run those tests?). That's the first case in the cilium/test/bpf/verifier-test.sh Lines 193 to 195 in c6d25fc
|
Is there a way to error out other than passing the KERNEL version in the script? I was hoping to avoid that, but I don't really see another solution :-( |
Maybe |
What do you mean? We already rely on cilium/test/bpf/verifier-test.sh Line 125 in c6d25fc
|
Assuming that
|
Ah, I see. That's a bit specific to our current issue, but it's probably enough 👍 |
Yeah true. Maybe something more reliable would be to verify that there are no "Skipping" lines in the output when running this test on net-next...? |
Ah, of course! 🤦 We can easily do that from K8sVerifier, where there's already per-version code. |
I'm just curious - why don't we run |
@aditighag I think the question is how we determine the "all the expected programs" from your question above. If we need to manually maintain a list of programs somewhere (eg to check whether they are present in From that perspective, the right approach to me is one step more abstract: Assemble a list of all possible programs from the tree programmatically, and ensure that every one of them is loaded. If any of the programs in the tree are not loaded, then the script needs fixing and it should quit out. The script should be doing 90% of this already, it just prints "Skipping ..." if it cannot load a program. The missing piece is that we don't force the test to fail in that case. |
Commit 696012f changed the section names for the cgroup BPF programs (e.g., from
from-sock4
toconnect4
), but didn't change the corresponding code inverifier-test.sh
:cilium/test/bpf/verifier-test.sh
Lines 125 to 144 in c6d25fc
As a result we always skip those programs in the K8sVerifier test. Maybe we should also find a way to error out when skipping something that should be tested.
/cc @borkmann
The text was updated successfully, but these errors were encountered: