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

Unify feature probing packages #25627

Merged
merged 3 commits into from May 29, 2023
Merged

Conversation

rgo3
Copy link
Contributor

@rgo3 rgo3 commented May 23, 2023

With this PR we remove the HaveFullLPM() feature probe as it is no longer needed since cilium bumped its minimal supported kernel version to 4.19.

We also migrate any leftover APIs from pkg/probe to pkg/datapath/linux/probes to only have one go pkg for feature probing APIs.

Fixes: #25621

@rgo3 rgo3 added sig/loader Impacts the loading of BPF programs into the kernel. sig/datapath Impacts bpf/ or low-level forwarding details, including map management and monitor messages. release-note/misc This PR makes changes that have no direct user impact. sig/agent Cilium agent related. labels May 23, 2023
@rgo3
Copy link
Contributor Author

rgo3 commented May 24, 2023

/test

@ti-mo ti-mo marked this pull request as ready for review May 24, 2023 12:02
@ti-mo ti-mo requested review from a team as code owners May 24, 2023 12:02
Copy link
Contributor

@ti-mo ti-mo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! We can remove moar code!

pkg/datapath/prefilter/prefilter.go Outdated Show resolved Hide resolved
pkg/datapath/linux/probes/probes.go Show resolved Hide resolved
@rgo3 rgo3 force-pushed the merge-probe-pkgs branch 2 times, most recently from d1de9a7 to fdd5b58 Compare May 24, 2023 13:42
@rgo3
Copy link
Contributor Author

rgo3 commented May 24, 2023

/test

Job 'Cilium-PR-K8s-1.16-kernel-4.19' failed:

Click to show.

Test Name

K8sAgentPolicyTest Multi-node policy test with L7 policy using connectivity-check to check datapath

Failure Output

FAIL: cannot install connectivity-check

Jenkins URL: https://jenkins.cilium.io/job/Cilium-PR-K8s-1.16-kernel-4.19/121/

If it is a flake and a GitHub issue doesn't already exist to track it, comment /mlh new-flake Cilium-PR-K8s-1.16-kernel-4.19 so I can create one.

Then please upload the Jenkins artifacts to that issue.

@ti-mo
Copy link
Contributor

ti-mo commented May 25, 2023

/test

Job 'Cilium-PR-K8s-1.26-kernel-net-next' failed:

Click to show.

Test Name

K8sDatapathServicesTest Checks N/S loadbalancing With host policy Tests NodePort

Failure Output

FAIL: Can not connect to service "http://192.168.56.12:31609" from outside cluster (1/10)

Jenkins URL: https://jenkins.cilium.io/job/Cilium-PR-K8s-1.26-kernel-net-next/180/

If it is a flake and a GitHub issue doesn't already exist to track it, comment /mlh new-flake Cilium-PR-K8s-1.26-kernel-net-next so I can create one.

Then please upload the Jenkins artifacts to that issue.

rgo3 added 3 commits May 26, 2023 08:52
Since Cilium's minimal required kernel version was bumped to 4.19 all
supported kernels have full LPM map support. This allows us to remove
this feature probe as it would always be true.

Signed-off-by: Robin Gögge <r.goegge@isovalent.com>
With the removal of HaveFullLPM every field in the prefilter config
struct will always be true. This allows the removal of all logic checks
based on those fields and the config struct itself.

Signed-off-by: Robin Gögge <r.goegge@isovalent.com>
This also refactors HaveIPv6Support into returning an error instead of a
bool to keep feature probing APIs consistent across the package and adds
a small test for the probe.

Fixes: cilium#25621.

Signed-off-by: Robin Gögge <r.goegge@isovalent.com>
@ti-mo
Copy link
Contributor

ti-mo commented May 26, 2023

/test

Job 'Cilium-PR-K8s-1.16-kernel-4.19' failed:

Click to show.

Test Name

K8sAgentPolicyTest Multi-node policy test with L7 policy using connectivity-check to check datapath

Failure Output

FAIL: cannot install connectivity-check

Jenkins URL: https://jenkins.cilium.io/job/Cilium-PR-K8s-1.16-kernel-4.19/172/

If it is a flake and a GitHub issue doesn't already exist to track it, comment /mlh new-flake Cilium-PR-K8s-1.16-kernel-4.19 so I can create one.

Then please upload the Jenkins artifacts to that issue.

@ti-mo
Copy link
Contributor

ti-mo commented May 26, 2023

/test-1.16-4.19

@maintainer-s-little-helper maintainer-s-little-helper bot added the ready-to-merge This PR has passed all tests and received consensus from code owners to merge. label May 26, 2023
@julianwiedmann julianwiedmann merged commit c83f5cd into cilium:main May 29, 2023
58 checks passed
@ti-mo ti-mo deleted the merge-probe-pkgs branch May 30, 2023 08:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ready-to-merge This PR has passed all tests and received consensus from code owners to merge. release-note/misc This PR makes changes that have no direct user impact. sig/agent Cilium agent related. sig/datapath Impacts bpf/ or low-level forwarding details, including map management and monitor messages. sig/loader Impacts the loading of BPF programs into the kernel.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Merge pkg/probe and pkg/datapath/linux/probes
6 participants