[dpdk-dev] [PATCH 1/3] net/mlx5: fix flow priority for queue action
Nelio Laranjeiro
nelio.laranjeiro at 6wind.com
Mon Oct 23 11:44:59 CEST 2017
Priority is wrongly configured when the action is queue, using the Ethernet
layer priority instead of the most specific layer found.
Fixes: 8086cf08b2f0 ("net/mlx5: handle RSS hash configuration in RSS flow")
Signed-off-by: Nelio Laranjeiro <nelio.laranjeiro at 6wind.com>
Acked-by: Yongseok Koh <yskoh at mellanox.com>
---
drivers/net/mlx5/mlx5_flow.c | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/drivers/net/mlx5/mlx5_flow.c b/drivers/net/mlx5/mlx5_flow.c
index 2b6380fb9..440bda9a1 100644
--- a/drivers/net/mlx5/mlx5_flow.c
+++ b/drivers/net/mlx5/mlx5_flow.c
@@ -1172,8 +1172,18 @@ priv_flow_convert(struct priv *priv,
* Last step. Complete missing specification to reach the RSS
* configuration.
*/
- if (parser->queues_n > 1)
+ if (parser->queues_n > 1) {
priv_flow_convert_finalise(priv, parser);
+ } else if (!parser->drop) {
+ /*
+ * Action queue have their priority overridden with
+ * Ethernet priority, this priority needs to be adjusted to
+ * their most specific layer priority.
+ */
+ parser->queue[HASH_RXQ_ETH].ibv_attr->priority =
+ attr->priority +
+ hash_rxq_init[parser->layer].flow_priority;
+ }
exit_free:
/* Only verification is expected, all resources should be released. */
if (!parser->create) {
--
2.11.0
More information about the dev
mailing list