Hi Lee,

> -----Original Message-----
> From: Daly, Lee
> Sent: Saturday, April 28, 2018 12:39 AM
> To: dev@dpdk.org
> Cc: De Lara Guarch, Pablo <pablo.de.lara.gua...@intel.com>; Tucker, Greg B
> <greg.b.tuc...@intel.com>; Jain, Deepak K <deepak.k.j...@intel.com>; Trahe,
> Fiona <fiona.tr...@intel.com>; Daly, Lee <lee.d...@intel.com>
> Subject: [PATCH v4 08/10] compress/isal: add ISA-L compression functionality
> 
> Adds compression functionality, this sets internal ISA-L structures, provides 
> input
> & output mbuf addresses, executes compression, which ISA-L calls deflate, and
> finally error checks.
> 
> Signed-off-by: Lee Daly <lee.d...@intel.com>
> ---
>  drivers/compress/isal/isal_compress_pmd.c         | 93
> ++++++++++++++++++++++-
>  drivers/compress/isal/isal_compress_pmd_ops.c     | 28 +++++++
>  drivers/compress/isal/isal_compress_pmd_private.h |  2 +
>  3 files changed, 121 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/compress/isal/isal_compress_pmd.c
> b/drivers/compress/isal/isal_compress_pmd.c
> index b13822a..e09fd3f 100644
> --- a/drivers/compress/isal/isal_compress_pmd.c
> +++ b/drivers/compress/isal/isal_compress_pmd.c
> @@ -6,6 +6,7 @@
>  #include <rte_bus_vdev.h>
>  #include <rte_common.h>
>  #include <rte_malloc.h>
> +#include <rte_mbuf.h>
>  #include <rte_compressdev_pmd.h>
> 
>  #include "isal_compress_pmd_private.h"
> @@ -208,14 +209,102 @@ isal_comp_set_priv_xform_parameters(struct
> isal_priv_xform *priv_xform,
>       return 0;
>  }
> 
> +/* Stateless Compression Function */
> +static int
> +process_isal_deflate(struct rte_comp_op *op, struct isal_comp_qp *qp,
> +             struct isal_priv_xform *priv_xform)
> +{
> +     int ret = 0;
> +     op->status = RTE_COMP_OP_STATUS_SUCCESS;
> +
> +     /* Required due to init clearing level_buf */
> +     uint8_t *temp_level_buf = qp->stream->level_buf;
> +
> +     /* Initialize compression stream */
> +     isal_deflate_stateless_init(qp->stream);
> +
> +     qp->stream->level_buf = temp_level_buf;
> +
> +     qp->stream->flush = NO_FLUSH;

Worth putting a comment here saying why you are not using the flush flag from 
op.

> +
> +     /* Set op checksum, none by default */
> +     qp->stream->gzip_flag = priv_xform->compress.chksum;
> +

...

> +     }
> +
> +     if (ret != COMP_OK) {
> +             op->status = RTE_COMP_OP_STATUS_ERROR;
> +             return ret;
> +     }
> +
> +     op->consumed = op->src.length - qp->stream->avail_in;

Could you use qp->stream->total_in here? Looks simpler.

Reply via email to