On Thu, Jan 28, 2021 at 02:58:01PM +0000, Christoph Lameter wrote: > On Thu, 28 Jan 2021, Jason Gunthorpe wrote: > > > > Well it was quilt ...... Do I need to put it into a git tree somewhere? > > > > If you are doing this a lot get a quilt that can generate git diff > > format output. > > > > https://lists.gnu.org/archive/html/quilt-dev/2015-06/msg00002.html > > Sadly that patch was never merged. > > Will this do it? Patchworks ingored it > > commit 64e734c38f509d591073fc1e1db3caa42be3b874 > Author: Christoph Lameter <cl@xxxxxxxxx> > Date: Thu Jan 28 14:55:36 2021 +0000 > > Fix: Remove racy Subnet Manager sendonly join checks > > When a system receives a REREG event from the SM, then the SM information in > the kernel is marked as invalid and a request is sent to the SM to update > the information. The SM information is invalid in that time period. > > However, receiving a REREG also occurs simultaneously in user space > applications that are now trying to rejoin the multicast groups. Some of those > may be sendonly multicast groups which are then failing. > > If the SM information is invalid then ib_sa_sendonly_fullmem_support() > returns false. That is wrong because it just means that we do not know > yet if the potentially new SM supports sendonly joins. > > Sendonly join was introduced in 2015 and all the Subnet managers have > supported it ever since. So there is no point in checking if a subnet > manager supports it. > > Should an old opensm get a request for a sendonly join then the request > will fail. The code that is removed here accomodated that situation > and fell back to a full join. > > Falling back to a full join is problematic in itself. The reason to > use the sendonly join was to reduce the traffic on the Infiniband > fabric otherwise one could have just stayed with the regular join. > So this patch may cause users of very old opensms to discover that > lots of traffic needlessly crosses their IB fabrics. > > Signed-off-by: Christoph Lameter <cl@xxxxxxxxx> This is 'git show', not 'git format-patch', tooling requires 'git format-patch' output. Preferably in a clean new email to get reliably captured by patchworks > diff --git a/drivers/infiniband/core/cma.c b/drivers/infiniband/core/cma.c > index c51b84b2d2f3..58ee7004c8d8 100644 > +++ b/drivers/infiniband/core/cma.c But this is all OK now, the index line is what allows easy resolving conflicts Jason