Skip to contentSkip to conversation

MLX5 device won't start with no RX queue

dpdk-dev [email protected] 1 participant 1 message Feb 13, 2020

lore
Share & tools
lore
#0 lore raw

https://bugs.dpdk.org/show_bug.cgi?id=398

            Bug ID: 398
           Summary: MLX5 device won't start with no RX queue
           Product: DPDK
           Version: 19.11
          Hardware: All
                OS: All
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: ethdev
          Assignee: [email protected]
          Reporter: [email protected]

Target Milestone: ---

When using a mlx5 device as TX only (0 rx queue), the call to rte_eth_dev_start fails with the following message:

net_mlx5: port 1 cannot allocate RSS queue list (0)
net_mlx5: port 1 reta config failed: Cannot allocate memory

From what I see in the code it's because, in mlx5_dev_start(), the very first thing that is called without condition is mlx5_dev_configure_rss_reta(), which immediately tries to malloc(nb_rx_queus*blablabla), which returns 0 because requested size is 0.

My dirty fix is, in mlx5_dev_configure_rss_reta
(drivers/net/mlx5/mlx5_ethdev.c):
- if (priv->skip_default_rss_reta == 0)
+ if (priv->skip_default_rss_reta || rxqs_n == 0)

                return ret;
Signature · 2 lines
You are receiving this mail because:
You are the assignee for the bug.