Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 30 Mar 2018 18:24:35 +0000 (UTC)
From:      Hans Petter Selasky <hselasky@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org
Subject:   svn commit: r331773 - stable/11/sys/ofed/drivers/infiniband/core
Message-ID:  <201803301824.w2UIOZQ3071778@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: hselasky
Date: Fri Mar 30 18:24:35 2018
New Revision: 331773
URL: https://svnweb.freebsd.org/changeset/base/331773

Log:
  MFC r330491:
  Do not add RoCEv2 default GID in ibcore when IPv6 is disabled to honor the
  networking stack's IPv6 disabled setting. Else the offload HCA can start using
  IPv6 packets for QPs.
  
  Sponsored by:	Mellanox Technologies

Modified:
  stable/11/sys/ofed/drivers/infiniband/core/ib_cache.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sys/ofed/drivers/infiniband/core/ib_cache.c
==============================================================================
--- stable/11/sys/ofed/drivers/infiniband/core/ib_cache.c	Fri Mar 30 18:17:33 2018	(r331772)
+++ stable/11/sys/ofed/drivers/infiniband/core/ib_cache.c	Fri Mar 30 18:24:35 2018	(r331773)
@@ -42,6 +42,7 @@
 #include <linux/slab.h>
 #include <linux/workqueue.h>
 #include <linux/netdevice.h>
+#include <linux/in6.h>
 
 #include <rdma/ib_cache.h>
 
@@ -702,6 +703,16 @@ void ib_cache_gid_set_default_gid(struct ib_device *ib
 	make_default_gid(ndev, &gid);
 	memset(&gid_attr, 0, sizeof(gid_attr));
 	gid_attr.ndev = ndev;
+
+	/* Default GID is created using unique GUID and local subnet prefix,
+	 * as described in section 4.1.1 and 3.5.10 in IB spec 1.3.
+	 * Therefore don't create RoCEv2 default GID based on it that
+	 * resembles as IPv6 GID based on link local address when IPv6 is
+	 * disabled in kernel.
+	 */
+#ifndef INET6
+	gid_type_mask &= ~BIT(IB_GID_TYPE_ROCE_UDP_ENCAP);
+#endif
 
 	for (gid_type = 0; gid_type < IB_GID_TYPE_SIZE; ++gid_type) {
 		int ix;



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201803301824.w2UIOZQ3071778>