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

[catpowder] Enhancement: add buffer pooling and multiple ring entries to XDP backend #1495

Open
wants to merge 1 commit into
base: dev
Choose a base branch
from

Conversation

kyleholohan
Copy link
Contributor

This PR allows for multiple RX/TX ring entries in the catpowder XDP backend. It also hooks the user memory region (UmemReg) into buffer pools to prevent additional buffer copies and allow for more efficient buffer allocation.

This PR addresses both #1438 and #1437.

One potential downside of this approach: receive buffers are a limited resource, and if the client holds too many receive buffers for too long, the buffer pool may become exhausted. In this case, the system will start to drop packets. Possibly this behavior should be configurable (i.e., the receive buffers should be copied out of the receive pool unless a "zero copy" config is enabled).

@kyleholohan kyleholohan added the enhancement Enhancement Request on an Existing Feature label Jan 31, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Enhancement Request on an Existing Feature
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant