| rte_comp.h(3) | Library Functions Manual | rte_comp.h(3) |
rte_comp.h
#include <rte_mbuf.h>
struct rte_comp_deflate_params
struct rte_comp_lz4_params
struct rte_comp_compress_xform
struct rte_comp_decompress_xform
struct rte_comp_xform
struct rte_comp_op
#define RTE_COMP_FF_STATEFUL_COMPRESSION (1ULL << 0)
#define RTE_COMP_FF_STATEFUL_DECOMPRESSION (1ULL << 1)
#define RTE_COMP_FF_OOP_SGL_IN_SGL_OUT (1ULL << 2)
#define RTE_COMP_FF_OOP_SGL_IN_LB_OUT (1ULL << 3)
#define RTE_COMP_FF_OOP_LB_IN_SGL_OUT (1ULL << 4)
#define RTE_COMP_FF_ADLER32_CHECKSUM (1ULL << 5)
#define RTE_COMP_FF_CRC32_CHECKSUM (1ULL << 6)
#define RTE_COMP_FF_CRC32_ADLER32_CHECKSUM (1ULL << 7)
#define RTE_COMP_FF_MULTI_PKT_CHECKSUM (1ULL << 8)
#define RTE_COMP_FF_SHA1_HASH (1ULL << 9)
#define RTE_COMP_FF_SHA2_SHA256_HASH (1ULL << 10)
#define RTE_COMP_FF_NONCOMPRESSED_BLOCKS (1ULL << 11)
#define RTE_COMP_FF_SHAREABLE_PRIV_XFORM (1ULL << 12)
#define RTE_COMP_FF_HUFFMAN_FIXED (1ULL << 13)
#define RTE_COMP_FF_HUFFMAN_DYNAMIC (1ULL << 14)
#define RTE_COMP_FF_XXHASH32_CHECKSUM (1ULL << 15)
#define RTE_COMP_FF_LZ4_DICT_ID (1ULL << 16)
#define RTE_COMP_FF_LZ4_CONTENT_WITH_CHECKSUM (1ULL << 17)
#define RTE_COMP_FF_LZ4_CONTENT_SIZE (1ULL << 18)
#define RTE_COMP_FF_LZ4_BLOCK_INDEPENDENCE (1ULL << 19)
#define RTE_COMP_FF_LZ4_BLOCK_WITH_CHECKSUM (1ULL << 20)
#define RTE_COMP_LEVEL_NONE (0)
#define RTE_COMP_LEVEL_MIN (1)
#define RTE_COMP_LEVEL_MAX (9)
#define RTE_COMP_LZ4_FLAG_DICT_ID (1 << 0)
#define RTE_COMP_LZ4_FLAG_CONTENT_CHECKSUM (1 << 2)
#define RTE_COMP_LZ4_FLAG_CONTENT_SIZE (1 << 3)
#define RTE_COMP_LZ4_FLAG_BLOCK_CHECKSUM (1 << 4)
#define RTE_COMP_LZ4_FLAG_BLOCK_INDEPENDENCE (1 << 5)
enum rte_comp_op_status { RTE_COMP_OP_STATUS_SUCCESS
= 0, RTE_COMP_OP_STATUS_NOT_PROCESSED,
RTE_COMP_OP_STATUS_INVALID_ARGS, RTE_COMP_OP_STATUS_ERROR,
RTE_COMP_OP_STATUS_INVALID_STATE,
RTE_COMP_OP_STATUS_OUT_OF_SPACE_TERMINATED,
RTE_COMP_OP_STATUS_OUT_OF_SPACE_RECOVERABLE }
enum rte_comp_algorithm { }
enum rte_comp_hash_algorithm { RTE_COMP_HASH_ALGO_NONE = 0,
RTE_COMP_HASH_ALGO_SHA1, RTE_COMP_HASH_ALGO_SHA2_256 }
enum rte_comp_checksum_type { RTE_COMP_CHECKSUM_NONE,
RTE_COMP_CHECKSUM_CRC32, RTE_COMP_CHECKSUM_ADLER32,
RTE_COMP_CHECKSUM_CRC32_ADLER32, RTE_COMP_CHECKSUM_XXHASH32 }
enum rte_comp_huffman { RTE_COMP_HUFFMAN_DEFAULT,
RTE_COMP_HUFFMAN_FIXED, RTE_COMP_HUFFMAN_DYNAMIC }
enum rte_comp_flush_flag { RTE_COMP_FLUSH_NONE,
RTE_COMP_FLUSH_SYNC, RTE_COMP_FLUSH_FULL,
RTE_COMP_FLUSH_FINAL }
enum rte_comp_xform_type { RTE_COMP_COMPRESS,
RTE_COMP_DECOMPRESS }
enum rte_comp_op_type { RTE_COMP_OP_STATELESS,
RTE_COMP_OP_STATEFUL }
struct rte_mempool * rte_comp_op_pool_create (const
char *name, unsigned int nb_elts, unsigned int cache_size, uint16_t
user_size, int socket_id)
struct rte_comp_op * rte_comp_op_alloc (struct
rte_mempool *mempool)
int rte_comp_op_bulk_alloc (struct rte_mempool *mempool, struct
rte_comp_op **ops, uint16_t nb_ops)
void rte_comp_op_free (struct rte_comp_op *op)
void rte_comp_op_bulk_free (struct rte_comp_op **ops, uint16_t
nb_ops)
const char * rte_comp_get_feature_name (uint64_t flag)
RTE definitions for Data Compression Service
Definition in file rte_comp.h.
compression service feature flags
Note
Keep these flags synchronised with rte_comp_get_feature_name() Stateful compression is supported
Definition at line 28 of file rte_comp.h.
Stateful decompression is supported
Definition at line 30 of file rte_comp.h.
Out-of-place Scatter-gather (SGL) buffers, with multiple segments, are supported in input and output
Definition at line 34 of file rte_comp.h.
Out-of-place Scatter-gather (SGL) buffers are supported in input, combined with linear buffers (LB), with a single segment, in output
Definition at line 39 of file rte_comp.h.
Out-of-place Scatter-gather (SGL) buffers are supported in output, combined with linear buffers (LB) in input
Definition at line 43 of file rte_comp.h.
Adler-32 Checksum is supported
Definition at line 45 of file rte_comp.h.
CRC32 Checksum is supported
Definition at line 47 of file rte_comp.h.
Adler-32/CRC32 Checksum is supported
Definition at line 49 of file rte_comp.h.
Generation of checksum across multiple stateless packets is supported
Definition at line 51 of file rte_comp.h.
SHA1 Hash is supported
Definition at line 53 of file rte_comp.h.
SHA256 Hash of SHA2 family is supported
Definition at line 55 of file rte_comp.h.
Creation of non-compressed blocks using RTE_COMP_LEVEL_NONE is supported
Definition at line 57 of file rte_comp.h.
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 operations in-flight.
Definition at line 63 of file rte_comp.h.
Fixed huffman encoding is supported
Definition at line 65 of file rte_comp.h.
Dynamic huffman encoding is supported
Definition at line 67 of file rte_comp.h.
xxHash-32 Checksum is supported
Definition at line 69 of file rte_comp.h.
LZ4 dictionary ID is supported
Definition at line 71 of file rte_comp.h.
LZ4 content with checksum is supported
Definition at line 73 of file rte_comp.h.
LZ4 content size is supported
Definition at line 75 of file rte_comp.h.
LZ4 block independent is supported
Definition at line 77 of file rte_comp.h.
LZ4 block with checksum is supported
Definition at line 79 of file rte_comp.h.
Use PMD Default
Definition at line 145 of file rte_comp.h.
Output uncompressed blocks if supported by the specified algorithm
Definition at line 147 of file rte_comp.h.
Use minimum compression level supported by the PMD
Definition at line 149 of file rte_comp.h.
Dictionary ID flag If this flag is set, a 4-byte dict-ID field will be present, after the descriptor flags and the content size.
Definition at line 237 of file rte_comp.h.
Content checksum flag If this flag is set, a 32-bit content checksum will be appended after the end mark.
Definition at line 244 of file rte_comp.h.
Content size flag If this flag is set, the uncompressed size of data included within the frame will be present as an 8-byte unsigned little-endian value, after the flags. Content size usage is optional.
Definition at line 252 of file rte_comp.h.
Block checksum flag. If this flag is set, each data block will be followed by a 4-byte checksum, calculated with the xxHash-32 algorithm on the raw (compressed) data block. The intent is to detect data corruption (storage or transmission errors) immediately, before decoding. Block checksum usage is optional.
Definition at line 262 of file rte_comp.h.
Block independence flag. If this flag is set to 1, blocks are independent. If this flag is set to 0, each block depends on previous ones (up to LZ4 window size, which is 64 KB). In such case, it is necessary to decode all blocks in sequence. Block dependency improves compression ratio, especially for small blocks. On the other hand, it makes random access or multi-threaded decoding impossible.
Definition at line 273 of file rte_comp.h.
Status of comp operation
Enumerator
Definition at line 82 of file rte_comp.h.
Compression Algorithms
Enumerator
Definition at line 106 of file rte_comp.h.
Compression Hash Algorithms
Enumerator
Definition at line 129 of file rte_comp.h.
Use maximum compression level supported by the PMD Compression checksum types
Enumerator
Definition at line 153 of file rte_comp.h.
Compression Huffman Type - used by DEFLATE algorithm
Enumerator
Definition at line 171 of file rte_comp.h.
Compression flush flags
Enumerator
Definition at line 181 of file rte_comp.h.
Compression transform types
Enumerator
Definition at line 204 of file rte_comp.h.
Compression operation type
Enumerator
Definition at line 212 of file rte_comp.h.
Creates an operation pool
Parameters
Returns
Allocate an operation from a mempool with default parameters set
Parameters
Returns
Bulk allocate operations from a mempool with default parameters set
Parameters
Returns
Free operation structure If operation has been allocate from a rte_mempool, then the operation will be returned to the mempool.
Parameters
Bulk free operation structures If operations have been allocated from an rte_mempool, then the operations will be returned to the mempool. The array entry will be cleared.
Parameters
Get the name of a compress service feature flag
Parameters
Returns
Generated automatically by Doxygen for DPDK from the source code.
| Version 24.11.3 | DPDK |