Looks fine to me.

> -----Original Message-----
> From: Doug Ledford [mailto:[email protected]]
> Sent: Monday, April 30, 2018 10:11 AM
> To: Jason Gunthorpe <[email protected]>; jackm <[email protected]>
> Cc: Håkon Bugge <[email protected]>; Hiatt, Don
> <[email protected]>; Dasaratharaman Chandramouli
> <[email protected]>; Weiny, Ira <[email protected]>;
> Hefty, Sean <[email protected]>; OFED mailing list <linux-
> [email protected]>; [email protected]
> Subject: Re: [PATCH] IB/core: Make ib_mad_client_id atomic
> 
> 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 <[email protected]>
> Reviewed-by: Jack Morgenstein <[email protected]>
> Reviewed-by: Ira Weiny <[email protected]>
> Reviewed-by: Zhu Yanjun <[email protected]>
> Signed-off-by: Doug Ledford <[email protected]>
> 
> 
> --
> Doug Ledford <[email protected]>
>     GPG KeyID: B826A3330E572FDD
>     Key fingerprint = AE6B 1BDA 122B 23B4 265B  1274 B826 A333 0E57 2FDD

Reply via email to