Messages in this thread | | | From | "Weiny, Ira" <> | Subject | RE: [PATCH] IB/core: Make ib_mad_client_id atomic | Date | Mon, 30 Apr 2018 17:49:34 +0000 |
| |
Looks fine to me.
> -----Original Message----- > From: Doug Ledford [mailto:dledford@redhat.com] > Sent: Monday, April 30, 2018 10:11 AM > To: Jason Gunthorpe <jgg@ziepe.ca>; jackm <jackm@dev.mellanox.co.il> > Cc: Håkon Bugge <haakon.bugge@oracle.com>; Hiatt, Don > <don.hiatt@intel.com>; Dasaratharaman Chandramouli > <dasaratharaman.chandramouli@intel.com>; Weiny, Ira <ira.weiny@intel.com>; > Hefty, Sean <sean.hefty@intel.com>; OFED mailing list <linux- > rdma@vger.kernel.org>; linux-kernel@vger.kernel.org > 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 <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> > > > -- > Doug Ledford <dledford@redhat.com> > GPG KeyID: B826A3330E572FDD > Key fingerprint = AE6B 1BDA 122B 23B4 265B 1274 B826 A333 0E57 2FDD
| |