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

[v1.14.x] prov/verbs: track transmit requests, so we can report failures on shutdown #7301

Merged
merged 2 commits into from
Dec 9, 2021

Conversation

shefty
Copy link
Member

@shefty shefty commented Dec 9, 2021

No description provided.

Shrink the size of struct vrb_context by combining disjointly
used fields into a union.  Replace the use of generic OFI flags
with a verbs specific enum.  And remove setting unnecessary
fields in call paths.

The vrb_context structure will be expanded to track send operations
in a follow on patch.  These changes keep the structure size to
castable with struct fi_context.  Even though there is currently no
requirement to restrict vrb_context to that size.

Signed-off-by: Sean Hefty <[email protected]>
Add transmit operations to a software SQ when posting, and
remove them when handling the completion.

Generate flushed completions for any outstanding transmit
operations when shutting down an endpoint.

This update ensures that all posted sends will generate a
completion to the application.  This fixes an issue with DAOS
where a send operation never completes in the case that the
peer has crashed, resulting in the local application hanging.

Signed-off-by: Sean Hefty <[email protected]>
@shefty shefty changed the title prov/verbs: track transmit requests, so we can report failures on shutdown [v1.14.x] prov/verbs: track transmit requests, so we can report failures on shutdown Dec 9, 2021
@shefty
Copy link
Member Author

shefty commented Dec 9, 2021

Fixes #7287

@shefty shefty merged commit 1756782 into ofiwg:v1.14.x Dec 9, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant