cilium: agent does not start on Linux 7.2, FnSetRetval probe fails in the verifier
Maintainer thường phản hồi trong vòng 3 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 2/5
- Thời gian dự kiến
- 1-3 giờ
- Mức phù hợp với người mới
- 67/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- helm, kubernetes, linux
- Lĩnh vực
- infrastructure
Hướng nghiên cứu
Bắt đầu tại packages/system/cilium/charts/cilium/Chart.yaml (dòng 95 tại 9620be0), nơi ghim chart Cilium được vendored ở 1.19.5, và kiểm tra cách các phiên bản được cập nhật trong packages/system/cilium trước khi chỉnh sửa. Tùy chọn 1: nâng chart lên 1.19.8 (backport cilium/cilium#48376), trong đó probe FnSetRetval CGroupSock bị loại bỏ khỏi probes.go. Xong nghĩa là agent được vendored không còn nạp probe đó nữa và khởi động trên kernel 7.2. Tùy chọn 2 là hợp nhất branch hiện có #3343 (1.20.2), nhưng hãy cân nhắc trước lưu ý mở cilium/cilium#48778 về socket-LB/BTF.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Cilium 1.19.5 does not start on Linux 7.2, and that is the version main and v1.7.0-alpha.3 ship (packages/system/cilium/charts/cilium/Chart.yaml:95 at 9620be0). The agent dies during feature probing:
level=fatal msg="failed to probe helper" error="detect support for FnSetRetval for program type CGroupSock: load program: invalid argument: 0: (85) call bpf_set_retval#187: R1 is not a scalar" progType=CGroupSock helper=FnSetRetval
The probe loads a small CGroupSock program that calls bpf_set_retval. Since torvalds/linux@b1f7f67b74c2e the verifier requires a scalar in that argument, so the load fails. The agent treats a failed probe as fatal, and the node never gets a CNI. At v1.19.5 the probe is in pkg/datapath/linux/probes/probes.go, lines 526 and 543. Upstream issue: cilium/cilium#48016.
Upstream dropped the probe and checks the enum with bpf_core_enum_value_exists() instead (part of cilium/cilium#47737). The backports are cilium/cilium#48376 for v1.19 and cilium/cilium#48213 for v1.20. By the compare API, the v1.19 commit is in v1.19.8 and not in v1.19.7, and the v1.20 commit is in v1.20.2 and not in v1.20.1. In v1.19.8 the FnSetRetval probe is gone from probes.go.
Reproduced on Kairos Hadron v0.5.3 (kernel 7.2.6, arm64) with v1.7.0-alpha.3. On the same node, an image built from the #3343 branch (Cilium 1.20.2) came up.
There are two ways to fix it:
- Bump the vendored chart to 1.19.8.
- Land #3343, which moves to 1.20.2.
For the second one, cilium/cilium#48778 is still open: on 1.20.2, socket-LB programs fail CO-RE relocation on kernels without BTF, and new pods get no networking. It is labelled for v1.20 and main, not for v1.19.
One more thing from the same install. After the failed upgrade, the cilium HelmRelease was stuck in pending-upgrade. It only moved after the Helm release secret of the stuck revision was deleted by hand.
- Ngôn ngữ chính
- Go
- Star
- 2.2k
- Fork
- 209
- Merge trung bình
- 3 ngày 18 giờ
- Pull request đã merge (30 ngày)
- 241
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của cozystack/cozystack
-
triage/needs-triage
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
cozystack/cozystack#4787 · 1 reaction ·
Maintainer thường phản hồi trong vòng 3 ngày
-
kubernetes-nodes: raising minReplicas does not raise the MachineDeployment's replicas on upgradeĐang mởtriage/needs-triage
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 88/100
cozystack/cozystack#4786 · 1 reaction ·
Maintainer thường phản hồi trong vòng 3 ngày
-
triage/needs-triage
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
cozystack/cozystack#4785 · 1 reaction ·
Maintainer thường phản hồi trong vòng 3 ngày
-
triage/needs-triage
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
cozystack/cozystack#4777 · 1 reaction ·
Maintainer thường phản hồi trong vòng 3 ngày
-
triage/needs-triage
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
cozystack/cozystack#4773 · 1 reaction ·
Maintainer thường phản hồi trong vòng 3 ngày
Tất cả issue của cozystack/cozystack
Issue tương tự
-
L: github:actions L: php:composer
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
dependabot/dependabot-core#16493 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Controller pods on default limits CrashLoopBackOff and constantly reclaim memoryCó thể đã có người làm @brsmnv đã nhận hôm nay. Đang mởbug
Độ khó 2/5 Dưới một giờ Mức phù hợp với người mới 68/100
ironcore-dev/ironcore-net#560 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
3 registry records that cannot resolve for any client, and a caution about single-pass dead countsĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
modelcontextprotocol/registry#1692 ·
Maintainer thường phản hồi trong vòng 6 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 84/100
mark3labs/mcp-go#1039 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 8 ngày