Hi Pablo Looks fine. Just minor comments:
>-----Original Message----- >From: Pablo de Lara [mailto:pablo.de.lara.gua...@intel.com] >Sent: 06 July 2018 08:24 >To: Verma, Shally <shally.ve...@cavium.com>; Gupta, Ashish ><ashish.gu...@cavium.com>; fiona.tr...@intel.com; >lee.d...@intel.com >Cc: dev@dpdk.org; Pablo de Lara <pablo.de.lara.gua...@intel.com> >Subject: [PATCH v4 3/4] compressdev: replace mbuf scatter gather flag > ... >@@ -6,19 +6,21 @@ >diff --git a/doc/guides/compressdevs/overview.rst >b/doc/guides/compressdevs/overview.rst >index d01c1a966..6d12c3bd6 100644 >--- a/doc/guides/compressdevs/overview.rst >+++ b/doc/guides/compressdevs/overview.rst >@@ -16,3 +16,17 @@ Supported Feature Flags > - "Pass-through" feature flag refers to the ability of the PMD > to let input buffers pass-through it, copying the input to the output, > without making any modifications to it (no compression done). >+ >+ - "OOP SGL In SGL Out" feature flag stands for >+ "Out-of-place Scatter-gather list Input, Scatter-gater list Output", >+ which means that the input and output buffers can consist of multiple >segments. >+ May be its simpler to rephrase it and following somewhat this way: Which means " PMD support different scatter-gather styled input and output buffers i.e. both can consists of multiple segments" >+ - "OOP SGL In LB Out" feature flag stands for >+ "Out-of-place Scatter-gather list Input, Flat Buffers Output", >+ which means that the input buffer can consist of multiple segments >combined >+ with a single segment buffer in the output. Which means "PMD support input from scatter-gathered styled buffers , but can output to linear buffers. And better to replace "flat" by "linear" to be consistent with name. >+ >+ - "OOP LB In SGL Out" feature flag stands for >+ "Out-of-place Flat Buffers Input, Scatter-gather list Output", >+ which means that the output buffer can consist of multiple segments >combined >+ with a single segment buffer in the input. Thanks Shally >diff --git a/doc/guides/rel_notes/release_18_08.rst >b/doc/guides/rel_notes/release_18_08.rst >index bc0124295..3487e3fb9 100644 >--- a/doc/guides/rel_notes/release_18_08.rst >+++ b/doc/guides/rel_notes/release_18_08.rst >@@ -60,6 +60,12 @@ API Changes > Also, make sure to start the actual text at the margin. > ========================================================= > >+* compressdev: Feature flag ``RTE_COMP_FF_MBUF_SCATTER_GATHER`` is >+ replaced with the following more explicit flags: >+ - ``RTE_COMP_FF_OOP_SGL_IN_SGL_OUT`` >+ - ``RTE_COMP_FF_OOP_SGL_IN_LB_OUT`` >+ - ``RTE_COMP_FF_OOP_LB_IN_SGL_OUT`` >+ > > ABI Changes > ----------- >diff --git a/lib/librte_compressdev/rte_comp.c >b/lib/librte_compressdev/rte_comp.c >index d596ba872..97ea0d922 100644 >--- a/lib/librte_compressdev/rte_comp.c >+++ b/lib/librte_compressdev/rte_comp.c >@@ -14,8 +14,12 @@ rte_comp_get_feature_name(uint64_t flag) > return "STATEFUL_COMPRESSION"; > case RTE_COMP_FF_STATEFUL_DECOMPRESSION: > return "STATEFUL_DECOMPRESSION"; >- case RTE_COMP_FF_MBUF_SCATTER_GATHER: >- return "MBUF_SCATTER_GATHER"; >+ case RTE_COMP_FF_OOP_SGL_IN_SGL_OUT: >+ return "OOP_SGL_IN_SGL_OUT"; >+ case RTE_COMP_FF_OOP_SGL_IN_LB_OUT: >+ return "OOP_SGL_IN_LB_OUT"; >+ case RTE_COMP_FF_OOP_LB_IN_SGL_OUT: >+ return "OOP_LB_IN_SGL_OUT"; > case RTE_COMP_FF_MULTI_PKT_CHECKSUM: > return "MULTI_PKT_CHECKSUM"; > case RTE_COMP_FF_ADLER32_CHECKSUM: >diff --git a/lib/librte_compressdev/rte_comp.h >b/lib/librte_compressdev/rte_comp.h >index 5b513c77e..274b5eadf 100644 >--- a/lib/librte_compressdev/rte_comp.h >+++ b/lib/librte_compressdev/rte_comp.h >@@ -30,23 +30,34 @@ extern "C" { > /**< Stateful compression is supported */ > #define RTE_COMP_FF_STATEFUL_DECOMPRESSION (1ULL << 1) > /**< Stateful decompression is supported */ >-#define RTE_COMP_FF_MBUF_SCATTER_GATHER (1ULL << 2) >-/**< Scatter-gather mbufs are supported */ >-#define RTE_COMP_FF_ADLER32_CHECKSUM (1ULL << 3) >+#define RTE_COMP_FF_OOP_SGL_IN_SGL_OUT (1ULL << 2) >+/**< Out-of-place Scatter-gather (SGL) buffers, >+ * with multiple segments, are supported in input and output >+ */ >+#define RTE_COMP_FF_OOP_SGL_IN_LB_OUT (1ULL << 3) >+/**< Out-of-place Scatter-gather (SGL) buffers are supported >+ * in input, combined with linear buffers (LB), with a >+ * single segment, in output >+ */ >+#define RTE_COMP_FF_OOP_LB_IN_SGL_OUT (1ULL << 4) >+/**< Out-of-place Scatter-gather (SGL) mbufs are supported >+ * in output, combined with linear buffers (LB) in input >+ */ >+#define RTE_COMP_FF_ADLER32_CHECKSUM (1ULL << 5) > /**< Adler-32 Checksum is supported */ >-#define RTE_COMP_FF_CRC32_CHECKSUM (1ULL << 4) >+#define RTE_COMP_FF_CRC32_CHECKSUM (1ULL << 6) > /**< CRC32 Checksum is supported */ >-#define RTE_COMP_FF_CRC32_ADLER32_CHECKSUM (1ULL << 5) >+#define RTE_COMP_FF_CRC32_ADLER32_CHECKSUM (1ULL << 7) > /**< Adler-32/CRC32 Checksum is supported */ >-#define RTE_COMP_FF_MULTI_PKT_CHECKSUM (1ULL << 6) >+#define RTE_COMP_FF_MULTI_PKT_CHECKSUM (1ULL << 8) > /**< Generation of checksum across multiple stateless packets is supported */ >-#define RTE_COMP_FF_SHA1_HASH (1ULL << 7) >+#define RTE_COMP_FF_SHA1_HASH (1ULL << 9) > /**< SHA1 Hash is supported */ >-#define RTE_COMP_FF_SHA2_SHA256_HASH (1ULL << 8) >+#define RTE_COMP_FF_SHA2_SHA256_HASH (1ULL << 10) > /**< SHA256 Hash of SHA2 family is supported */ >-#define RTE_COMP_FF_NONCOMPRESSED_BLOCKS (1ULL << 9) >+#define RTE_COMP_FF_NONCOMPRESSED_BLOCKS (1ULL << 11) > /**< Creation of non-compressed blocks using RTE_COMP_LEVEL_NONE is supported > */ >-#define RTE_COMP_FF_SHAREABLE_PRIV_XFORM (1ULL << 10) >+#define RTE_COMP_FF_SHAREABLE_PRIV_XFORM (1ULL << 12) > /**< Private xforms created by the PMD can be shared > * across multiple stateless operations. If not set, then app needs > * to create as many priv_xforms as it expects to have stateless >-- >2.14.4