net/mlx5: Allow configuring mlx5 port for TX only

Message ID 1586783744-8962-1-git-send-email-mohsinshaikh@niometrics.com (mailing list archive)
State Superseded, archived
Delegated to: Raslan Darawsheh
Headers
Series net/mlx5: Allow configuring mlx5 port for TX only |

Checks

Context Check Description
ci/checkpatch warning coding style issues
ci/iol-intel-Performance success Performance Testing PASS
ci/iol-mellanox-Performance success Performance Testing PASS
ci/iol-testing success Testing PASS
ci/travis-robot success Travis build: passed
ci/Intel-compilation success Compilation OK

Commit Message

Mohsin Shaikh April 13, 2020, 1:15 p.m. UTC
  Configuring mlx5 port with 0 rx rings and 1 or more tx rings causes following
error in dev_start:
    net_mlx5: port 1 cannot allocate RSS queue list (0)
    net_mlx5: port 1 reta config failed: Cannot allocate memory
Skip mlx5_dev_configure_rss_reta() when there are no rx rings.

Cc: stable@dpdk.org
Signed-off-by: Mohsin Shaikh <mohsinshaikh@niometrics.com>
---
 drivers/net/mlx5/mlx5_ethdev.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
  

Patch

diff --git a/drivers/net/mlx5/mlx5_ethdev.c b/drivers/net/mlx5/mlx5_ethdev.c
index d7d3bc7..1d443c1 100644
--- a/drivers/net/mlx5/mlx5_ethdev.c
+++ b/drivers/net/mlx5/mlx5_ethdev.c
@@ -463,7 +463,7 @@  struct ethtool_link_settings {
 	unsigned int *rss_queue_arr = NULL;
 	unsigned int rss_queue_n = 0;
 
-	if (priv->skip_default_rss_reta)
+	if (priv->skip_default_rss_reta || !rxqs_n)
 		return ret;
 	rss_queue_arr = rte_malloc("", rxqs_n * sizeof(unsigned int), 0);
 	if (!rss_queue_arr) {