All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bob Pearson <rpearsonhpe@gmail.com>
To: Edward Srouji <edwards@nvidia.com>, Jason Gunthorpe <jgg@nvidia.com>
Cc: linux-rdma@vger.kernel.org, Leon Romanovsky <leon@kernel.org>
Subject: Re: py verbs tests
Date: Tue, 13 Oct 2020 09:22:52 -0500	[thread overview]
Message-ID: <57ecdc40-9c71-a543-a692-032c19f95e08@gmail.com> (raw)
In-Reply-To: <585b94bf-cd80-f135-0823-b68c7ce9fcdb@nvidia.com>

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. 

      parent reply	other threads:[~2020-10-13 14:22 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-02 21:34 py verbs tests Bob Pearson
2020-10-02 21:41 ` Bob Pearson
2020-10-08 19:07 ` Jason Gunthorpe
     [not found]   ` <585b94bf-cd80-f135-0823-b68c7ce9fcdb@nvidia.com>
2020-10-13 14:22     ` Bob Pearson [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=57ecdc40-9c71-a543-a692-032c19f95e08@gmail.com \
    --to=rpearsonhpe@gmail.com \
    --cc=edwards@nvidia.com \
    --cc=jgg@nvidia.com \
    --cc=leon@kernel.org \
    --cc=linux-rdma@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.