Date: Mon, 5 Mar 2018 11:52:39 +0000 (UTC) From: Hans Petter Selasky <hselasky@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r330491 - head/sys/ofed/drivers/infiniband/core Message-ID: <201803051152.w25Bqd0H024129@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: hselasky Date: Mon Mar 5 11:52:39 2018 New Revision: 330491 URL: https://svnweb.freebsd.org/changeset/base/330491 Log: 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. MFC after: 1 week Sponsored by: Mellanox Technologies Modified: head/sys/ofed/drivers/infiniband/core/ib_cache.c Modified: head/sys/ofed/drivers/infiniband/core/ib_cache.c ============================================================================== --- head/sys/ofed/drivers/infiniband/core/ib_cache.c Mon Mar 5 11:49:45 2018 (r330490) +++ head/sys/ofed/drivers/infiniband/core/ib_cache.c Mon Mar 5 11:52:39 2018 (r330491) @@ -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?201803051152.w25Bqd0H024129>