Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 17 Jul 2018 09:32:09 +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: r336385 - head/sys/ofed/drivers/infiniband/core
Message-ID:  <201807170932.w6H9W9TD023248@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: hselasky
Date: Tue Jul 17 09:32:09 2018
New Revision: 336385
URL: https://svnweb.freebsd.org/changeset/base/336385

Log:
  Set IPv4 TOS and IPv6 traffic class field for RoCEv2 traffic in ibcore.
  
  The current implementation assumes a static mapping between
  the TOS bits and the priority code point, PCP bits.
  
  MFC after:		1 week
  Sponsored by:		Mellanox Technologies

Modified:
  head/sys/ofed/drivers/infiniband/core/ib_cma.c

Modified: head/sys/ofed/drivers/infiniband/core/ib_cma.c
==============================================================================
--- head/sys/ofed/drivers/infiniband/core/ib_cma.c	Tue Jul 17 09:30:32 2018	(r336384)
+++ head/sys/ofed/drivers/infiniband/core/ib_cma.c	Tue Jul 17 09:32:09 2018	(r336385)
@@ -2451,15 +2451,9 @@ static int cma_resolve_iw_route(struct rdma_id_private
 
 static int iboe_tos_to_sl(struct net_device *ndev, int tos)
 {
-	/* get service level, SL, from type of service, TOS */
-	int sl = tos;
+	/* get service level, SL, from IPv4 type of service, TOS */
+	int sl = (tos >> 5) & 0x7;
 
-	/* range check input argument and map 1:1 */
-	if (sl > 255)
-		sl = 255;
-	else if (sl < 0)
-		sl = 0;
-
 	/* final mappings are done by the vendor specific drivers */
 	return sl;
 }
@@ -2543,6 +2537,7 @@ static int cma_resolve_iboe_route(struct rdma_id_priva
 	route->path_rec->pkey = cpu_to_be16(0xffff);
 	route->path_rec->mtu_selector = IB_SA_EQ;
 	route->path_rec->sl = iboe_tos_to_sl(ndev, id_priv->tos);
+	route->path_rec->traffic_class = id_priv->tos;
 	route->path_rec->mtu = iboe_get_mtu(ndev->if_mtu);
 	route->path_rec->rate_selector = IB_SA_EQ;
 	route->path_rec->rate = iboe_get_rate(ndev);



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