[dpdk-dev] [PATCH] net/mlx5: fix compilation without tunnel RSS support

Shahaf Shuler shahafs at mellanox.com
Sun May 13 10:07:46 CEST 2018


IBV_RX_HASH_INNER should be referenced only when having tunnel support
in the Verbs headers.

Fixes: 80f2d0ed7ff9 ("net/mlx5: add hardware flow debug dump")
Cc: xuemingl at mellanox.com

Signed-off-by: Shahaf Shuler <shahafs at mellanox.com>
---
 drivers/net/mlx5/mlx5_flow.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/drivers/net/mlx5/mlx5_flow.c b/drivers/net/mlx5/mlx5_flow.c
index ec6d00f21b..04ace3ee79 100644
--- a/drivers/net/mlx5/mlx5_flow.c
+++ b/drivers/net/mlx5/mlx5_flow.c
@@ -2188,7 +2188,12 @@ mlx5_flow_dump(struct rte_eth_dev *dev __rte_unused,
 	uint16_t j;
 	char buf[256];
 	uint8_t off;
+	uint64_t extra_hash_fields = 0;
 
+#ifdef HAVE_IBV_DEVICE_TUNNEL_SUPPORT
+	if (flow->tunnel && flow->rss_conf.level > 1)
+		extra_hash_fields = (uint32_t)IBV_RX_HASH_INNER;
+#endif
 	spec_ptr = (uintptr_t)(flow->frxq[hrxq_idx].ibv_attr + 1);
 	for (j = 0, off = 0; j < flow->frxq[hrxq_idx].ibv_attr->num_of_specs;
 	     j++) {
@@ -2205,9 +2210,7 @@ mlx5_flow_dump(struct rte_eth_dev *dev __rte_unused,
 		(void *)flow->frxq[hrxq_idx].hrxq,
 		(void *)flow->frxq[hrxq_idx].hrxq->qp,
 		(void *)flow->frxq[hrxq_idx].hrxq->ind_table,
-		flow->frxq[hrxq_idx].hash_fields |
-		(flow->tunnel &&
-		 flow->rss_conf.level > 1 ? (uint32_t)IBV_RX_HASH_INNER : 0),
+		(flow->frxq[hrxq_idx].hash_fields | extra_hash_fields),
 		flow->rss_conf.queue_num,
 		flow->frxq[hrxq_idx].ibv_attr->num_of_specs,
 		flow->frxq[hrxq_idx].ibv_attr->size,
-- 
2.12.0



More information about the dev mailing list