The mlx5_compress_qp_setup() function creates QP for compress,
decompress and DMA. Thus, the MMO flag is turned on only when all
operations are supported.

However, since partial transformations have been allowed, it should be
turn on for part of them.

This patch removes the compress MMO support requirement.

Fixes: 2efd26544554 ("compress/mlx5: support partial transformation")
Cc: rzid...@nvidia.com
Cc: sta...@dpdk.org

Signed-off-by: Michael Baum <michae...@nvidia.com>
---
 drivers/compress/mlx5/mlx5_compress.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/compress/mlx5/mlx5_compress.c 
b/drivers/compress/mlx5/mlx5_compress.c
index c0a861e5e4..d38f247216 100644
--- a/drivers/compress/mlx5/mlx5_compress.c
+++ b/drivers/compress/mlx5/mlx5_compress.c
@@ -243,8 +243,8 @@ mlx5_compress_qp_setup(struct rte_compressdev *dev, 
uint16_t qp_id,
                mlx5_ts_format_conv(priv->cdev->config.hca_attr.qp_ts_format);
        qp_attr.num_of_receive_wqes = 0;
        qp_attr.num_of_send_wqbbs = RTE_BIT32(log_ops_n);
-       qp_attr.mmo = priv->mmo_decomp_qp && priv->mmo_comp_qp
-                       && priv->mmo_dma_qp;
+       qp_attr.mmo = priv->mmo_decomp_qp || priv->mmo_comp_qp ||
+                     priv->mmo_dma_qp;
        ret = mlx5_devx_qp_create(priv->cdev->ctx, &qp->qp,
                                        qp_attr.num_of_send_wqbbs *
                                        MLX5_WQE_SIZE, &qp_attr, socket_id);
-- 
2.25.1

Reply via email to