lkml.org 
[lkml]   [2018]   [May]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] IB/core: Make ib_mad_client_id atomic
From
Date


> On 1 May 2018, at 06:38, jackm <jackm@dev.mellanox.co.il> wrote:
>
> On Mon, 30 Apr 2018 13:10:49 -0400
> Doug Ledford <dledford@redhat.com> wrote:
>
> Looks good!

Yes, absolutely!

Håkon

>
> -Jack
>
>> On Mon, 2018-04-30 at 08:49 -0600, Jason Gunthorpe wrote:
>>> On Mon, Apr 23, 2018 at 10:16:18PM +0300, jackm wrote:
>>>
>>>>>> TIDs need to be globally unique on the entire machine.
>>>> Jason, that is not exactly correct.
>>>
>>> The expecation for /dev/umad users is that they all receive locally
>>> unique TID prefixes. The kernel may be OK to keep things
>>> port-specific but it is slightly breaking the API we are presenting
>>> to userspace to allow them to alias..
>>>
>>> Jason
>>
>> Would people be happier with this commit message then:
>>
>> IB/core: Make ib_mad_client_id atomic
>>
>> Currently, the kernel protects access to the agent ID allocator on a
>> per port basis using a spinlock, so it is impossible for two
>> apps/threads on the same port to get the same TID, but it is entirely
>> possible for two threads on different ports to end up with the same
>> TID.
>>
>> As this can be confusing (regardless of it being legal according to
>> the IB Spec 1.3, C13-18.1.1, in section 13.4.6.4 - TransactionID
>> usage), and as the rdma-core user space API for /dev/umad devices
>> implies unique TIDs even across ports, make the TID an atomic type so
>> that no two allocations, regardless of port number, will be the same.
>>
>> Signed-off-by: Håkon Bugge <haakon.bugge@oracle.com>
>> Reviewed-by: Jack Morgenstein <jackm@dev.mellanox.co.il>
>> Reviewed-by: Ira Weiny <ira.weiny@intel.com>
>> Reviewed-by: Zhu Yanjun <yanjun.zhu@oracle.com>
>> Signed-off-by: Doug Ledford <dledford@redhat.com>
>>
>>
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html

\
 
 \ /
  Last update: 2018-05-01 08:41    [W:3.117 / U:0.180 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site