Re: [PATCH for-next] IB/cma: Introduce rdma_set_min_rnr_timer()

Haakon Bugge
2021-03-31T13:26:45Z

> On 31 Mar 2021, at 14:58, Haakon Bugge <haakon.bugge@oracle.com> wrote:
>
>
>
>> On 31 Mar 2021, at 14:00, Jason Gunthorpe <jgg@nvidia.com> wrote:
>>
>> On Wed, Mar 31, 2021 at 10:38:02AM +0000, Haakon Bugge wrote:
>>>
>>>
>>>> On 31 Mar 2021, at 01:12, Jason Gunthorpe <jgg@nvidia.com> wrote:
>>>>
>>>> On Thu, Mar 25, 2021 at 02:05:47PM +0100, Håkon Bugge wrote:
>>>>> Introduce the ability for both user-space and kernel ULPs to adjust
>>>>> the minimum RNR Retry timer. The INIT -> RTR transition executed by
>>>>> RDMA CM will be used for this adjustment. This avoids an additional
>>>>> ib_modify_qp() call.
>>>>
>>>> Can't userspace override the ibv_modify_qp() call the librdmacm wants
>>>> to make to do this?
>>>
>>> Not sure I understand. The point is, that user-land which intends to
>>> set said timer, can do so without an additional ibv_modify_qp()
>>> call. May be I should have added:
>>
>> IIRC in userspace the application has the option to call
>> ibv_modify_qp() so it can just change it before it makes the call?
>
> User-space can call ibv_modify_qp, but that call is inherently expensive on some HCA implementations running virtualized. So this commit enables user-space to use rdma_set_option() to set information in the kernel's cm_id such that the required INIT -> RTR transition takes care of the RNR Retry timer value as well - with an additional modify_qp.

s/with/without/

-h

>
> Thxs, Håkon
>
>>> Shamelessly-inspired-by: 2c1619edef61 ("IB/cma: Define option to set ack timeout and pack tos_set")
>>
>> Hmm..
>>
>> Jason
>