Re: py verbs tests

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 10/12/20 5:31 AM, Edward Srouji wrote:
> 
> On 10/8/2020 10:07 PM, Jason Gunthorpe wrote:
>> On Fri, Oct 02, 2020 at 04:34:22PM -0500, Bob Pearson wrote:
>>> I am currently trying to figure out why one of the pyverbs tests is failing.
>>>
>>> I added a check implementing C9-205 (p 419) of the IBA spec. I requires that a responder receiving a packet longer
>>> than the receive buffer or the PMTU shall be silently dropped. I.e. a class D error.
>>>
>>>      C9-205: Before executing the request, the responder shall validate the
>>>      Packet Length field of the LRH and the PadCnt of the BTH as described
>>>      in 9.8.3.2.2: Responder - Length Validation.
>>>      The following characteristics shall be validated:
>>>      • The Length fields shall be checked to confirm that there is sufficient
>>>      space available in the receive buffer specified by the receive WQE.
>>>      • The packet payload length must be between zero and PMTU bytes
>>>      inclusive in size.
>>>      If a packet is detected with an invalid length, the request shall be an invalid
>>>      request and it shall be silently dropped by the responder as specified in
>>>      Section 9.9.3 Responder Side Behavior on page 435. The responder then
>>>      waits for a new request packet.
>>>
>>> tests/test_cq_events.py passes PATH_MTU = 1024 in the modify QPs verb for RC and XRC but not UD.
>>> This should be a required parameter as part of the primary destination address but is not getting
>>> set for UD. The test then proceeds to send a 1024 byte payload to the destination and for UD hangs
>>> waiting for the completion.
>>>
>>> I don't want to mess with these tests because I am a poor python coder. Is there some reason why it is
>>> OK to not set the PMTU for UD QPs?
>> Edward is the person to ask about the tests..
>>
>> It seems like you are right and it should be set for UD too, if it is
>> not set what is the default?
>>
>> Jason
> 
> AFAIK PATH_MTU (when modifying a QP) is valid only for connected types (e.g. RC/UC etc.). It's not valid for UD. If you look at the code you may see that modify_qp does not update the PMTU according to the user attribute.
> 
> There is a default PMTU set for UD (usually it's the maximum PMTU).
> 
> Edward.
> 
> 
Totally agree. Sorry for the wild goose chase. 



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux