-
Notifications
You must be signed in to change notification settings - Fork 23
Dpdk force static link #353
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
Conversation
📝 WalkthroughWalkthroughRemoved the Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Changes span multiple build and packaging files with moderate heterogeneity (Meson build, options, wraps, Makefile, packaging). Review requires verifying option propagation, wrap bump, and no unintended build regressions. Suggested reviewers
Pre-merge checks✅ Passed checks (3 passed)
📜 Recent review detailsConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro 📒 Files selected for processing (6)
🚧 Files skipped from review as they are similar to previous changes (2)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (7)
🔇 Additional comments (4)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
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.
Actionable comments posted: 0
🧹 Nitpick comments (1)
subprojects/dpdk.wrap (1)
3-3: Consider pinning to a commit SHA for reproducibility.Tags can be moved; locking
revisionto the exact commit for v24.11.3 avoids supply‑chain drift in long‑term builds.
📜 Review details
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
meson.build(1 hunks)subprojects/dpdk.wrap(1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (8)
- GitHub Check: build-and-tests (clang-18, none, debugoptimized, ubuntu-24.04, false)
- GitHub Check: build-and-tests (gcc-14, address, debug, ubuntu-24.04, -Dfrr=enabled, true)
- GitHub Check: build-and-tests (clang-16, none, debugoptimized, ubuntu-24.04, false)
- GitHub Check: build-and-tests (clang-15, none, debugoptimized, ubuntu-22.04, false)
- GitHub Check: build-and-tests (gcc-13, none, debugoptimized, ubuntu-24.04, -Dfrr=enabled, false)
- GitHub Check: build-cross-aarch64
- GitHub Check: rpm
- GitHub Check: deb
🔇 Additional comments (3)
meson.build (3)
59-63: Good: version bump + static dep.
version: '>= 24.11.3'matches the wrap, andstatic: trueenforces static linking when available. LGTM.
71-72: Heads‑up: static link may pull external static deps (mlx5, RDMA).Enabling
common/mlx5,net/mlx5under static linking typically requires static rdma‑core (libibverbs,libmlx5) and friends. Ensure those static libs are present in CI/build images or consider gating/removing mlx5 from the static profile.
64-76: No changes needed. All option types and values are correct for DPDK v24.11.3:
developer_mode(feature type) properly usesdisabledtests,enable_docs,enable_kmods(boolean types) properly usefalseenable_drivers,enable_libs,disable_apps(string types) properly use string values
rjarry
left a comment
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.
Static linking should be disabled by default. You can add a meson option to enable it if you want.
Also, do not change the minimum required version in meson.build since it does not add any crucial features. You can simply bump the version in subprojects/dpdk.wrap.
This release contains several fixes, update accordingly. Signed-off-by: Maxime Leroy <[email protected]>
DPDK always builds both shared and static libraries, regardless of the default_library setting. The default_library option only controls how applications are linked, not what DPDK produces. In Buildroot, Meson libraries are built as shared by default and static linking with glibc is not supported globally. However, linking our application against the DPDK static library provides better performance. Add a new meson option to force static linking on the DPDK dependency. Signed-off-by: Maxime Leroy <[email protected]>
5cf2411 to
eda4b32
Compare
Summary by CodeRabbit