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

Add support for DPDK 24.11 #92

Open
wants to merge 6 commits into
base: main
Choose a base branch
from
Open

Conversation

skye-tan
Copy link

@skye-tan skye-tan commented Jan 23, 2025

This PR adds support for DPDK 24.11 while preserving the support for previous DPDK versions.

Changes included in this PR:

  • Support for DPDK 24.11 was added.
  • The DPDK_PATH enviroment variable was deemed unnecessary and has been removed.
  • CI workflows have been updated to include checks for DPDK 24.11.
  • CI workflows have been updated to cache DPDK build.
  • Toolchain's version has been upgraded to 1.84.0.
  • Code style has been formatted in accordance with clippy guidelines.

* run ci for toolchain 1.81.0

* run ci for toolchain 1.84.0

* cache dpdk build

* check dpdk cache

* fix dpdk cache

* run ci

* fix

* fix ci
@@ -66,7 +69,7 @@ fn main() {
.stdout;

if ldflags_bytes.is_empty() {
println!("Could not get DPDK's LDFLAGS. Are DPDK_PATH, LD_LIBRARY_PATH set correctly?");
println!("Could not get DPDK's LDFLAGS. Is LD_LIBRARY_PATH set correctly?");
Copy link
Collaborator

Choose a reason for hiding this comment

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

Why this change?

uses: actions/checkout@v3

Copy link
Collaborator

Choose a reason for hiding this comment

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

not a big deal, but it is nice to have conceptually separate changes in separate PRs (formatting or toolchain changes like this vs. the DPDK update)

@thearossman
Copy link
Collaborator

Thanks for submitting! Can you name in the PR description how y'all have tested this so far?

@@ -89,7 +89,7 @@ impl fmt::Debug for Mempool {

/// Rounds `n` up to the nearest multiple of `s`
fn round_up(n: u32, s: u32) -> u32 {
((n + s - 1) / s) * s
(n.div_ceil(s)) * s
Copy link
Collaborator

@thearossman thearossman Jan 29, 2025

Choose a reason for hiding this comment

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

can you revert this and submit in a separate PR? unless there is some reason why it's tightly coupled to the DPDK change that I am missing

@@ -24,7 +24,7 @@ pub struct Ipv6<'a> {
mbuf: &'a Mbuf,
}

impl<'a> Ipv6<'a> {
impl Ipv6<'_> {
Copy link
Collaborator

@thearossman thearossman Jan 29, 2025

Choose a reason for hiding this comment

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

similarly - the lifetime syntax changes would ideally be reverted and submitted in a separate PR

@@ -33,6 +33,132 @@ impl rte_ipv4_hdr {
}
}

#[cfg(not(dpdk_ge_2411))]
Copy link
Collaborator

Choose a reason for hiding this comment

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

@tbarbette @thegwan these refactors to account for the interface changes LGTM, but checking if either of you have any concerns from working on the original DPDK layer?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

2 participants