|
NAMErte_comp.h SYNOPSIS#include <rte_common.h>
Data Structuresstruct rte_comp_deflate_params
Macros#define RTE_COMP_FF_STATEFUL_COMPRESSION (1ULL << 0)
Enumerationsenum 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,
RTE_COMP_OP_STATUS_CHECKSUM_VALIDATION_FAILED }
Functionsvoid rte_comp_op_free (struct rte_comp_op *op)
Macro Definition Documentation#define RTE_COMP_FF_STATEFUL_COMPRESSION (1ULL << 0)compression service feature flags Note New features flags should be added to the end of the
list
Keep these flags synchronised with rte_comp_get_feature_name() Stateful compression is supported Definition at line 29 of file rte_comp.h. #define RTE_COMP_FF_STATEFUL_DECOMPRESSION (1ULL << 1)Stateful decompression is supported Definition at line 31 of file rte_comp.h. #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 Definition at line 35 of file rte_comp.h. #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 Definition at line 40 of file rte_comp.h. #define RTE_COMP_FF_OOP_LB_IN_SGL_OUT (1ULL << 4)Out-of-place Scatter-gather (SGL) buffers are supported in output, combined with linear buffers (LB) in input Definition at line 44 of file rte_comp.h. #define RTE_COMP_FF_ADLER32_CHECKSUM (1ULL << 5)Adler-32 Checksum is supported Definition at line 46 of file rte_comp.h. #define RTE_COMP_FF_CRC32_CHECKSUM (1ULL << 6)CRC32 Checksum is supported Definition at line 48 of file rte_comp.h. #define RTE_COMP_FF_CRC32_ADLER32_CHECKSUM (1ULL << 7)Adler-32/CRC32 Checksum is supported Definition at line 50 of file rte_comp.h. #define RTE_COMP_FF_MULTI_PKT_CHECKSUM (1ULL << 8)Generation of checksum across multiple stateless packets is supported Definition at line 52 of file rte_comp.h. #define RTE_COMP_FF_SHA1_HASH (1ULL << 9)SHA1 Hash is supported Definition at line 54 of file rte_comp.h. #define RTE_COMP_FF_SHA2_SHA256_HASH (1ULL << 10)SHA256 Hash of SHA2 family is supported Definition at line 56 of file rte_comp.h. #define RTE_COMP_FF_NONCOMPRESSED_BLOCKS (1ULL << 11)Creation of non-compressed blocks using RTE_COMP_LEVEL_NONE is supported Definition at line 58 of file rte_comp.h. #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 operations in-flight. Definition at line 64 of file rte_comp.h. #define RTE_COMP_FF_HUFFMAN_FIXED (1ULL << 13)Fixed huffman encoding is supported Definition at line 66 of file rte_comp.h. #define RTE_COMP_FF_HUFFMAN_DYNAMIC (1ULL << 14)Dynamic huffman encoding is supported Definition at line 68 of file rte_comp.h. #define RTE_COMP_FF_XXHASH32_CHECKSUM (1ULL << 15)xxHash-32 Checksum is supported Definition at line 70 of file rte_comp.h. #define RTE_COMP_FF_LZ4_DICT_ID (1ULL << 16)LZ4 dictionary ID is supported Definition at line 72 of file rte_comp.h. #define RTE_COMP_FF_LZ4_CONTENT_WITH_CHECKSUM (1ULL << 17)LZ4 content with checksum is supported Definition at line 74 of file rte_comp.h. #define RTE_COMP_FF_LZ4_CONTENT_SIZE (1ULL << 18)LZ4 content size is supported Definition at line 76 of file rte_comp.h. #define RTE_COMP_FF_LZ4_BLOCK_INDEPENDENCE (1ULL << 19)LZ4 block independent is supported Definition at line 78 of file rte_comp.h. #define RTE_COMP_FF_LZ4_BLOCK_WITH_CHECKSUM (1ULL << 20)LZ4 block with checksum is supported Definition at line 80 of file rte_comp.h. #define RTE_COMP_LEVEL_MIN (1)Output uncompressed blocks if supported by the specified algorithm Definition at line 152 of file rte_comp.h. #define RTE_COMP_LEVEL_MAX (9)Use minimum compression level supported by the PMD Definition at line 154 of file rte_comp.h. #define RTE_COMP_LZ4_FLAG_DICT_ID (1 << 0)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 258 of file rte_comp.h. #define RTE_COMP_LZ4_FLAG_CONTENT_CHECKSUM (1 << 2)Content checksum flag If this flag is set, a 32-bit content checksum will be appended after the end mark. Definition at line 265 of file rte_comp.h. #define RTE_COMP_LZ4_FLAG_CONTENT_SIZE (1 << 3)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 273 of file rte_comp.h. #define RTE_COMP_LZ4_FLAG_BLOCK_CHECKSUM (1 << 4)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 283 of file rte_comp.h. #define RTE_COMP_LZ4_FLAG_BLOCK_INDEPENDENCE (1 << 5)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 294 of file rte_comp.h. Enumeration Type Documentationenum rte_comp_op_statusStatus of comp operation Enumerator
Definition at line 83 of file rte_comp.h. enum rte_comp_algorithmCompression Algorithms Enumerator
Definition at line 111 of file rte_comp.h. enum rte_comp_hash_algorithmCompression Hash Algorithms Enumerator
Definition at line 134 of file rte_comp.h. enum rte_comp_checksum_typeUse maximum compression level supported by the PMD Compression checksum types Enumerator
Definition at line 158 of file rte_comp.h. enum rte_comp_huffmanCompression Huffman Type - used by DEFLATE algorithm Enumerator
Definition at line 180 of file rte_comp.h. enum rte_comp_flush_flagCompression flush flags Enumerator
Definition at line 190 of file rte_comp.h. enum rte_comp_xform_typeCompression transform types Enumerator
Definition at line 213 of file rte_comp.h. enum rte_comp_op_typeCompression operation type Enumerator
Definition at line 221 of file rte_comp.h. Function Documentationvoid rte_comp_op_free (struct rte_comp_op * op)Free operation structure If operation has been allocate from a rte_mempool, then the operation will be returned to the mempool. Parameters op Compress operation pointer allocated from
rte_comp_op_alloc() If op is NULL, no operation is performed.
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)Creates an operation pool Parameters name Compress pool name
nb_elts Number of elements in pool cache_size Number of elements to cache on lcore, see rte_mempool_create for further details about cache size user_size Size of private data to allocate for user with each operation socket_id Socket to identifier allocate memory on Returns
struct rte_mempool struct rte_comp_op * rte_comp_op_alloc (struct rte_mempool * mempool)Allocate an operation from a mempool with default parameters set Parameters mempool Compress operation mempool
Returns
int rte_comp_op_bulk_alloc (struct rte_mempool * mempool, struct rte_comp_op ** ops, uint16_t nb_ops)Bulk allocate operations from a mempool with default parameters set Parameters mempool Compress operation mempool
ops Array to place allocated operations nb_ops Number of operations to allocate Returns
void rte_comp_op_bulk_free (struct rte_comp_op ** ops, uint16_t nb_ops)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 ops Array of Compress operations
nb_ops Number of operations to free const char * rte_comp_get_feature_name (uint64_t flag)Get the name of a compress service feature flag Parameters flag The mask describing the flag
Returns The name of this flag, or NULL if it's not a valid
feature flag.
AuthorGenerated automatically by Doxygen for DPDK from the source code.
|