Hi Zhangfei,

Overall, a well written driver.
Please see below comment.

> +static int
> +uadk_compress_pmd_config(struct rte_compressdev *dev,
> +                      struct rte_compressdev_config *config)
> +{
> +     char mp_name[RTE_MEMPOOL_NAMESIZE];
> +     struct uadk_compress_priv *priv;
> +     struct rte_mempool *mp;
> +     int ret;
> +
> +     if (dev == NULL || config == NULL)
> +             return -EINVAL;
> +
> +     snprintf(mp_name, RTE_MEMPOOL_NAMESIZE,
> +              "stream_mp_%u", dev->data->dev_id);
> +     priv = dev->data->dev_private;
> +
> +     /* alloc resources */
> +     ret = wd_comp_env_init(NULL);
> +     if (ret < 0)
> +             return -EINVAL;
> +
> +     mp = priv->mp;
> +     if (mp == NULL) {
> +             mp = rte_mempool_create(mp_name,
> +                                     config->max_nb_priv_xforms +
> +                                     config->max_nb_streams,
> +                                     sizeof(struct uadk_stream),
> +                                     0, 0, NULL, NULL, NULL,
> +                                     NULL, config->socket_id, 0);
> +             if (mp == NULL) {
> +                     UADK_LOG(ERR, "Cannot create private xform pool on
> socket %d\n",
> +                              config->socket_id);
> +                     ret = -ENOMEM;
> +                     goto err_mempool;
> +             }
> +             priv->mp = mp;
> +     }

Do you really need a mempool here? It is for uadk_stream which is just struct 
of pointer and an enum.
It can simply be rte_malloc. 
And even you do not need uadk_compress_priv.
This can be simplified. Right?

Also remove the execution part of documentation from 1/3 and add it in 3/3
Since the PMD is complete in 3/3, release notes and execution part of 
documentation should be in last patch.

Reply via email to