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

clean up pending NBLs in FNMP and FNLWF using RAII #534

Merged
merged 2 commits into from
Jun 7, 2024

Conversation

mtfriesen
Copy link
Contributor

@mtfriesen mtfriesen commented Jun 7, 2024

Our functional tests can bugcheck if filtered NBLs are left pending in the FNMP/FNLWF. This happens if the test fails for some reason, causing an exception to be thrown and objects destructed. If the test cases don't have their handles declared extremely carefully, then an object (like an XDP program or XSK handle) might be destructed before the FNMP/FNLWF handle, causing an infinite hang.

Use the new win-net-test API to atomically clear the FNMP/FNLWF filters and return NBLs, and return an RAII object whenever a filter gets set.

Resolves #510

Also consumes a new bugfix for FNLWF that ensures its data path doesn't pause until all filtered RX frames are returned.

@mtfriesen mtfriesen added bug Something isn't working tests automated test gaps and improvements labels Jun 7, 2024
@mtfriesen mtfriesen requested a review from a team as a code owner June 7, 2024 20:52
@mtfriesen mtfriesen enabled auto-merge (squash) June 7, 2024 21:00
@mtfriesen mtfriesen merged commit 0f03e05 into main Jun 7, 2024
41 of 44 checks passed
@mtfriesen mtfriesen deleted the mtfriesen/clean_up_pending_nbls_upon_exception branch June 7, 2024 23:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working tests automated test gaps and improvements
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Functional tests bugcheck due to pending filtered NBLs
2 participants