|
DPDK
19.08.2
|
Go to the source code of this file.
Data Structures | |
| struct | rte_comp_deflate_params |
| struct | rte_comp_compress_xform |
| struct | rte_comp_decompress_xform |
| struct | rte_comp_xform |
| struct | rte_comp_op |
Macros | |
| #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_LEVEL_NONE (0) |
| #define | RTE_COMP_LEVEL_MIN (1) |
| #define | RTE_COMP_LEVEL_MAX (9) |
Functions | |
| __rte_experimental 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) |
| __rte_experimental struct rte_comp_op * | rte_comp_op_alloc (struct rte_mempool *mempool) |
| __rte_experimental int | rte_comp_op_bulk_alloc (struct rte_mempool *mempool, struct rte_comp_op **ops, uint16_t nb_ops) |
| __rte_experimental void | rte_comp_op_free (struct rte_comp_op *op) |
| __rte_experimental void | rte_comp_op_bulk_free (struct rte_comp_op **ops, uint16_t nb_ops) |
| __rte_experimental const char * | rte_comp_get_feature_name (uint64_t flag) |
RTE definitions for Data Compression Service
Definition in file rte_comp.h.
| #define RTE_COMP_FF_STATEFUL_COMPRESSION (1ULL << 0) |
compression service feature flags
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 33 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 37 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 42 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 60 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_LEVEL_NONE (0) |
Use PMD Default
Definition at line 133 of file rte_comp.h.
| #define RTE_COMP_LEVEL_MIN (1) |
Output uncompressed blocks if supported by the specified algorithm
Definition at line 135 of file rte_comp.h.
| #define RTE_COMP_LEVEL_MAX (9) |
Use minimum compression level supported by the PMD
Definition at line 137 of file rte_comp.h.
| enum rte_comp_op_status |
Status of comp operation
Definition at line 72 of file rte_comp.h.
| enum rte_comp_algorithm |
Compression Algorithms
| Enumerator | |
|---|---|
| RTE_COMP_ALGO_NULL |
No Compression algorithm No compression. Pass-through, data is copied unchanged from source buffer to destination buffer. |
| RTE_COMP_ALGO_DEFLATE |
DEFLATE compression algorithm https://tools.ietf.org/html/rfc1951 |
| RTE_COMP_ALGO_LZS |
LZS compression algorithm https://tools.ietf.org/html/rfc2395 |
Definition at line 96 of file rte_comp.h.
Compression Hash Algorithms
| Enumerator | |
|---|---|
| RTE_COMP_HASH_ALGO_NONE |
No hash |
| RTE_COMP_HASH_ALGO_SHA1 |
SHA1 hash algorithm |
| RTE_COMP_HASH_ALGO_SHA2_256 |
SHA256 hash algorithm of SHA2 family |
Definition at line 116 of file rte_comp.h.
Use maximum compression level supported by the PMD Compression checksum types
Definition at line 141 of file rte_comp.h.
| enum rte_comp_huffman |
Compression Huffman Type - used by DEFLATE algorithm
| Enumerator | |
|---|---|
| RTE_COMP_HUFFMAN_DEFAULT |
PMD may choose which Huffman codes to use |
| RTE_COMP_HUFFMAN_FIXED |
Use Fixed Huffman codes |
| RTE_COMP_HUFFMAN_DYNAMIC |
Use Dynamic Huffman codes |
Definition at line 156 of file rte_comp.h.
| enum rte_comp_flush_flag |
Compression flush flags
Definition at line 166 of file rte_comp.h.
| enum rte_comp_xform_type |
Compression transform types
| Enumerator | |
|---|---|
| RTE_COMP_COMPRESS |
Compression service - compress |
| RTE_COMP_DECOMPRESS |
Compression service - decompress |
Definition at line 189 of file rte_comp.h.
| enum rte_comp_op_type |
Compression operation type
Definition at line 197 of file rte_comp.h.
| __rte_experimental 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
| 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 |
| __rte_experimental struct rte_comp_op* rte_comp_op_alloc | ( | struct rte_mempool * | mempool | ) |
Allocate an operation from a mempool with default parameters set
| mempool | Compress operation mempool |
| __rte_experimental 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
| mempool | Compress operation mempool |
| ops | Array to place allocated operations |
| nb_ops | Number of operations to allocate |
| __rte_experimental void 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.
| op | Compress operation |
| __rte_experimental 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.
| ops | Array of Compress operations |
| nb_ops | Number of operations to free |
| __rte_experimental const char* rte_comp_get_feature_name | ( | uint64_t | flag | ) |
Get the name of a compress service feature flag
| flag | The mask describing the flag |
1.8.9.1