-
Notifications
You must be signed in to change notification settings - Fork 386
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.19.x] prov/efa: Use long CTS protocol when memory registration limits are reached #9623
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
FI_ENOMR is returned when the hardware memory registration limit is reached Signed-off-by: Sai Sunku <[email protected]> (cherry picked from commit 72a3c31)
The READ_NACK feature is checked before sending a EFA_RDM_READ_NACK_PKT packet. The EFA_RDM_READ_NACK_PKT packet is sent by a receiver when it fails to register a buffer to receive the RDMA read data in a long read or runting read protocol Signed-off-by: Sai Sunku <[email protected]> (cherry picked from commit 25b8636)
…ENOMR Long read protocol could fail with ENOMR if the EFA provider is unable to register the buffer with the NIC. In that case, we should fall back to long CTS instead This commit is for the changes when the sender fails to register the source buffer. The sender will switch to the long CTS protocol. Signed-off-by: Sai Sunku <[email protected]> (cherry picked from commit 3810dd0)
This change is required for the long read nack protocol where we get the msg_id from ope instead of from the pke Signed-off-by: Sai Sunku <[email protected]> (cherry picked from commit 8755e9c)
Long read protocol could fail with ENOMR if the EFA provider is unable to register the buffer with the NIC. In that case, we should fall back to long CTS protocol. This commit is for the changes when the receiver fails to register the destination memory. Receiver sends a NACK packet (packet type EFA_RDM_READ_NACK_PKT) to the sender. The sender switches to the long CTS protocol. Signed-off-by: Sai Sunku <[email protected]> (cherry picked from commit 59e0e1f)
…ENOMR Runting read protocol could fail with ENOMR if the EFA provider is unable to register the buffer with the NIC. In that case, we should fall back to long CTS instead This commit is for the changes when the sender fails to register the source buffer. The sender will switch to the long CTS protocol. Signed-off-by: Sai Sunku <[email protected]> (cherry picked from commit a29640f)
Runting read protocol could fail with ENOMR if the EFA provider is unable to register the buffer with the NIC. In that case, we should fall back to long CTS protocol. This commit is for the changes when the receiver fails to register the destination memory. Receiver sends a NACK packet (packet type EFA_RDM_READ_NACK_PKT) to the sender. The sender switches to the long CTS protocol. Signed-off-by: Sai Sunku <[email protected]> (cherry picked from commit a5b7e59)
Signed-off-by: Sai Sunku <[email protected]> (cherry picked from commit 592dd68)
This commit introduces common functions that can be used to directly manipulate memory registrations on EFA devices using the verbs API Signed-off-by: Sai Sunku <[email protected]> (cherry picked from commit 6ad6a83)
Signed-off-by: Sai Sunku <[email protected]> (cherry picked from commit d3480a5)
Add a pingpong test that exhausts MRs on both client and server This test first exhausts MRs on the server and runs a pingpong test It then exhausts MRs on the client and runs another pingpong test A pytest hook is used to run this test after all other tests to prevent MR exhaustion from affecting other tests Signed-off-by: Sai Sunku <[email protected]> (cherry picked from commit a715487)
shijin-aws
approved these changes
Dec 5, 2023
bot:aws:retest |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Cherry-pick of #9493 and #9533 to v1.19.x branch