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

Backtracking #172

Draft
wants to merge 20 commits into
base: main
Choose a base branch
from
Draft

Backtracking #172

wants to merge 20 commits into from

Conversation

daniel-noland
Copy link
Collaborator

don't merge, just poking CI

@daniel-noland daniel-noland added the dont-merge Do not merge this Pull Request label Jan 26, 2025
The thiserror crate now supports no_std upstream so no need for fork anymore.

Signed-off-by: Daniel Noland <[email protected]>
We are moving out of the playground code stage.

Scratch is a mess of warnings and has served its purpose.
Thank you for your service ❤️

Scratch is replaced here by a placeholder binary crate simply called dataplane.

Signed-off-by: Daniel Noland <[email protected]>
Signed-off-by: Daniel Noland <[email protected]>
The unicode crate (part of the rust standard lib) got a license code recently it seems.
The result is that cargo deny fails us in CI if we don't add the code to our accepted licenses list.

I also sorted the list to make future commits cleaner.

Signed-off-by: Daniel Noland <[email protected]>
CI can't seem to resolve the binary cache so it is just slowing things down.

Signed-off-by: Daniel Noland <[email protected]>
Signed-off-by: Daniel Noland <[email protected]>
Today I learned that you can just pass tracing/max_level_* instead.

Signed-off-by: Daniel Noland <[email protected]>
* improves comments for clarity,
* replaces `glob` imports from `dpdk_sys` with explicit imports for better style,
* removes unused code such as the `tx queue ConfigError`.

Additionally, it refactors queue configurations, for both RX and TX queues, making the API more type-safe (e.g., introducing newtypes for queue indexes) and aligning function names with their purposes (`setup` instead of `configure`).
It also adjusts some error handling mechanisms to make failure cases clearer.

Signed-off-by: Daniel Noland <[email protected]>
This sets us up to begin using rte_malloc and friends instead of malloc directly.
This should be useful in the dataplane for performance reasons later.

Signed-off-by: Daniel Noland <[email protected]>
We have too many variations of error handling running around.
Hopefully we can standardize on this one from most cases.

Signed-off-by: Daniel Noland <[email protected]>
This commit primarily refines the memory management code by simplifying and improving the organization of structures related to memory pools and buffers in a DPDK-based application.
The `PoolHandle` struct was replaced with a simpler `Pool` struct, along with adjustments to its usage and associated methods.
Additionally, several functions dealing with raw DPDK structures were updated to use safer patterns, and logging levels were modified to better reflect their importance (e.g., switching from `debug!` to `info!`).
Finally, constants and defaults such as memory configuration parameters were adjusted.

Signed-off-by: Daniel Noland <[email protected]>
This is the method recommended by clippy, and it seems objectively better than what we were doing before.

Signed-off-by: Daniel Noland <[email protected]>
This is a rather complex commit unfortunately.

It introduces abstractions and wrappers which are helpful in accessing and manipulating DPDK lcores

Signed-off-by: Daniel Noland <[email protected]>
This code is not used for the moment but will be pulled in when we need synthetic DPDK network interfaces for testing.

Signed-off-by: Daniel Noland <[email protected]>
The import style was poor and the file needed reformatting

Signed-off-by: Daniel Noland <[email protected]>
If DPDK is holding up its end of the bargin, then we should never get a null pointer back from the rx burst inside the bounds it advertises.

Signed-off-by: Daniel Noland <[email protected]>
Prior versions made the formatting of a few files a little messy.

Signed-off-by: Daniel Noland <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dont-merge Do not merge this Pull Request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant