InfiniBand Test Specification  1.0.38
Public Member Functions | Protected Member Functions | List of all members
C15_0_1_012_17_02_3

Inherits C15_0_1_012.

Public Member Functions

 C15_0_1_012_17_02_3 ()
 
boolean execute () throws TestException
 

Protected Member Functions

boolean initialize () throws TestException
 

Detailed Description

25.2.5.17.4 SA GETTABLE(PATHRECORD)- PART 3

25.2.5.17 V1C15-0.1.012 PATHRECORD

Abstract: This test verifies that SA PathRecord is correct

Coverage: v1c15-0.1.012

Topology Configuration: SimpleLink: Tester=MADTester, Width=1X, 2X, 4X, or 12X, DUT=Node

DUT Qualifiers: DUT must have SM/SA functionality

Notes: None.

Test Case Description

◆ C15_0_1_012_17_02_3()

25.2.5.17.4 SA GETTABLE(PATHRECORD)- PART 3

Assertions: v1c15-0.1.012#17.02, v1c15-0.1.012#17.48, v1c15-0.1.012#17.53, v1c15-0.1.012#17.54, v1c15-0.1.012#17.59, v1c15-0.1.012#17.60, v1c15-0.1.012#17.65, v1c15-0.1.012#17.66, v1c15-0.1.012#17.71

Notes:

  1. This TD part will verify that the SA can correctly send back a SubnAdmGet- TableResp(PathRecord) for a SubnAdmTableGet(PathRecord) query, when the query specifies the SGID, NumbPath and P_Key components.
  2. This TD assumes that SM has minimally discovered the network, assigned LIDs to all the endnodes and created paths among all the endnodes.
  3. This TD assumes that the partition table has not been modified

Developer: Kevin King

Test Procedure

◆ initialize()

boolean initialize ( ) throws TestException
protected

Initialization:

  1. PortInfo:PortState is initialized to ACTIVE for both MADTester and DUT.
  2. GMP_DATA, MAD_DATA variable of type MadPacketSpec

◆ execute()

boolean execute ( ) throws TestException

Test Procedure:

  1. MAD_DATA is a legal GMP:
    • BTH:DestQP = 1
    • MADHeader:MgmtClass = 0x3 (SubnAdm)
    • MADHeader:ClassVersion = 0x2
    • MADHeader:Method = 0x12 (SubnAdmGetTable)
    • MADHeader:AttributeID = 0x35 (PathRecord)
    • RMPPHeader:RMPPFlags.Active = 0
    • SAHeader:SM_Key = 0
    • SAHeader:AttributeOffset = 0
    • SAHeader:ComponentMask = 0x3008 (SGID, NumbPath, P_Key)
    • PathRecord:SGID = GID of the tester
    • PathRecord:NumbPath = 1
    • PathRecord:P_Key = 0xFFFF
  2. SendMad(SubnAdmGetTable(PathRecord))
  3. GMP_DATA = ReceiveMad (SubnAdmGetTableResp(PathRecord))

  4. Verify the following:

    • if (DGIDUpper == testerPortGUID), verify:
      • GMP_DATA.MADHeader:Status == 0 // v1c15-0.1.012#17.02
      • A list of two PathRecords - PathRecord1 and PathRecord2 // v1c15-0.1.012#17.47
      • PathRecord1:DGID = GID of the tester
      • PathRecord1:SGID = GID of the tester
      • PathRecord1:DLID = LID of the tester // v1c15-0.1.012#17.71
      • PathRecord1:SLID = LID of the tester // v1c15-0.1.012#17.71
      • PathRecord1:P_Key = 0xFFFF // v1c15-0.1.012#17.47
      • PathRecord1:MtuSelector = 2 // v1c15-0.1.012#17.53
      • PathRecord1:RateSelector = 2 // v1c15-0.1.012#17.65
      • PathRecord1:Rate = Rate of the tester // v1c15-0.1.012#17.66
      • PathRecord1:PacketLifeTimeSelector = 2 // v1c15-0.1.012#17.59
      • PathRecord1:PacketLifeTime = 0 // v1c15-0.1.012#17.60
    • else if (DGIDUpper == dutPortGUID), verify:
      • PathRecord2:DGID = GID of SM/SA
      • PathRecord2:SGID = GID of the tester
      • PathRecord2:DLID = LID of SM/SA // v1c15-0.1.012#17.71
      • PathRecord2:SLID = LID of tester // v1c15-0.1.012#17.71
      • PathRecord2:P_Key = 0xFFFF // c v1c15-0.1.012#17.47
      • PathRecord2:MtuSelector = 2 // v1c15-0.1.012#17.53
      • PathRecord2:Mtu = MTU of the tester // v1c15-0.1.012#17.54
      • PathRecord2:RateSelector = 2 // v1c15-0.1.012#17.65
      • PathRecord2:Rate = Rate of the tester // v1c15-0.1.012#17.66
      • Verify SMSARate cannot be less than tester rate
      • PathRecord2:PacketLifeTimeSelector = 2 // v1c15-0.1.012#17.59
    • Remark: The fields that are omitted from (4) are not checked because either they are related to GRH or their values may depend on vendor implementation.
    • Remark: The values specified in PathRecord:Rate and PathRecord:Mtu assume the switch connected to the tester supports rate and MTU equal to or higher than the tester.

  5. Reset the DUT to its original state.


The documentation for this class was generated from the following file: