net/mlx5: improve Verbs flow priority discovery
[dpdk.git] / drivers / net / mlx5 / mlx5_rxq.c
index 60673d0..2940c95 100644 (file)
@@ -21,6 +21,7 @@
 
 #include <mlx5_glue.h>
 #include <mlx5_malloc.h>
+#include <mlx5_common_mr.h>
 
 #include "mlx5_defs.h"
 #include "mlx5.h"
@@ -1241,8 +1242,8 @@ mlx5_mprq_alloc_mp(struct rte_eth_dev *dev)
                rte_errno = ENOMEM;
                return -rte_errno;
        }
-       ret = mlx5_mr_mempool_register(&priv->sh->share_cache, priv->sh->pd,
-                                      mp, &priv->mp_id);
+       ret = mlx5_mr_mempool_register(&priv->sh->cdev->mr_scache,
+                                      priv->sh->cdev->pd, mp, &priv->mp_id);
        if (ret < 0 && rte_errno != EEXIST) {
                ret = rte_errno;
                DRV_LOG(ERR, "port %u failed to register a mempool for Multi-Packet RQ",
@@ -1449,13 +1450,11 @@ mlx5_rxq_new(struct rte_eth_dev *dev, uint16_t idx, uint16_t desc,
                goto error;
        }
        tmpl->type = MLX5_RXQ_TYPE_STANDARD;
-       if (mlx5_mr_btree_init(&tmpl->rxq.mr_ctrl.cache_bh,
-                              MLX5_MR_BTREE_CACHE_N, socket)) {
+       if (mlx5_mr_ctrl_init(&tmpl->rxq.mr_ctrl,
+                             &priv->sh->cdev->mr_scache.dev_gen, socket)) {
                /* rte_errno is already set. */
                goto error;
        }
-       /* Rx queues don't use this pointer, but we want a valid structure. */
-       tmpl->rxq.mr_ctrl.dev_gen_ptr = &priv->sh->share_cache.dev_gen;
        tmpl->socket = socket;
        if (dev->data->dev_conf.intr_conf.rxq)
                tmpl->irq = 1;