|
InfiniBand Test Specification
1.0.38
|
Inherits TransportTest.
Public Member Functions | |
| C09_142_01 () | |
| boolean | execute () throws TestException |
Protected Member Functions | |
| boolean | initialize () throws TestException |
9.7.6.1.3 V1C09-142 Outstanding Request Timeout
Abstract: This test verifies that a DUT correctly utilizes the retry counter.
Coverage: v1c09-142, v1c09-143
Topology Configuration: SimpleLink: Tester=Transport Tester; Width=1X, 4X, or 12X; DUT=xCA
DUT Qualifiers:Must not support Automatic Path Migration.
Notes: None
| C09_142_01 | ( | ) |
9.7.6.1.3.4 V1C09-142 Outstanding Request Timeout
Assertions: V1c09-142#01, v1c09-143#01
Notes:
Developer: Llolsten Kaonga
|
protected |
Initialization:
OpenRcChannel( CC ) // (reliable connection)
Set QP Retry Count = 2. Setting it to the default (0) will result in a QP completion which we want to avoid.
Set ACK Timeout to 18 (1.07 sec)
| boolean execute | ( | ) | throws TestException |
Test Procedure:
Register memory region for receiving remote packets
Post one receive request for each expected packet from DUT *RemarkThere is only one packet in this case
Set the retry count to a non-zero value.
Get the timeout value, T_tr, from the DUT
Transmit 1 RC READ WQE from DUT at size (PMTU).
While retry count is not zero...
Receive all expected packets
Verify all packets were received and were valid
Verify each message contained a single Read Request packet
Silently drop the received packet – do not transmit a response to the DUT
Sleep for about T_tr = 1.07 seconds
Check the receive QP for a retry – there should hopefully be an RDMA Read request
Verify that the retry count has been decremented
End while retry count is not zero
Verify that the DUT retried the RDMA Read request retry count times
Verify that the DUT throws the IBV_WC_RETRY_EXEC_ERR (12) error
Poll for completion of read request on DUT's send queue
Verify exactly 1 work completion was dequeued from the send queue
Verify that the status of the work completion indicates expected error status
CloseRcChannel( CC )