19 #include <rte_compat.h>
29 #define RTE_COMP_FF_STATEFUL_COMPRESSION (1ULL << 0)
31 #define RTE_COMP_FF_STATEFUL_DECOMPRESSION (1ULL << 1)
33 #define RTE_COMP_FF_OOP_SGL_IN_SGL_OUT (1ULL << 2)
37 #define RTE_COMP_FF_OOP_SGL_IN_LB_OUT (1ULL << 3)
42 #define RTE_COMP_FF_OOP_LB_IN_SGL_OUT (1ULL << 4)
46 #define RTE_COMP_FF_ADLER32_CHECKSUM (1ULL << 5)
48 #define RTE_COMP_FF_CRC32_CHECKSUM (1ULL << 6)
50 #define RTE_COMP_FF_CRC32_ADLER32_CHECKSUM (1ULL << 7)
52 #define RTE_COMP_FF_MULTI_PKT_CHECKSUM (1ULL << 8)
54 #define RTE_COMP_FF_SHA1_HASH (1ULL << 9)
56 #define RTE_COMP_FF_SHA2_SHA256_HASH (1ULL << 10)
58 #define RTE_COMP_FF_NONCOMPRESSED_BLOCKS (1ULL << 11)
60 #define RTE_COMP_FF_SHAREABLE_PRIV_XFORM (1ULL << 12)
66 #define RTE_COMP_FF_HUFFMAN_FIXED (1ULL << 13)
68 #define RTE_COMP_FF_HUFFMAN_DYNAMIC (1ULL << 14)
70 #define RTE_COMP_FF_XXHASH32_CHECKSUM (1ULL << 15)
72 #define RTE_COMP_FF_LZ4_DICT_ID (1ULL << 16)
74 #define RTE_COMP_FF_LZ4_CONTENT_WITH_CHECKSUM (1ULL << 17)
76 #define RTE_COMP_FF_LZ4_CONTENT_SIZE (1ULL << 18)
78 #define RTE_COMP_FF_LZ4_BLOCK_INDEPENDENCE (1ULL << 19)
80 #define RTE_COMP_FF_LZ4_BLOCK_WITH_CHECKSUM (1ULL << 20)
109 RTE_COMP_ALGO_UNSPECIFIED = 0,
145 #define RTE_COMP_LEVEL_PMD_DEFAULT (-1)
147 #define RTE_COMP_LEVEL_NONE (0)
149 #define RTE_COMP_LEVEL_MIN (1)
151 #define RTE_COMP_LEVEL_MAX (9)
239 #define RTE_COMP_LZ4_FLAG_DICT_ID (1 << 0)
246 #define RTE_COMP_LZ4_FLAG_CONTENT_CHECKSUM (1 << 2)
254 #define RTE_COMP_LZ4_FLAG_CONTENT_SIZE (1 << 3)
264 #define RTE_COMP_LZ4_FLAG_BLOCK_CHECKSUM (1 << 4)
275 #define RTE_COMP_LZ4_FLAG_BLOCK_INDEPENDENCE (1 << 5)
506 unsigned int nb_elts,
unsigned int cache_size,
struct rte_mempool * mempool
enum rte_comp_flush_flag flush_flag
__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)
char name[RTE_MEMPOOL_NAMESIZE]
__rte_experimental struct rte_comp_op * rte_comp_op_alloc(struct rte_mempool *mempool)
__rte_experimental void rte_comp_op_bulk_free(struct rte_comp_op **ops, uint16_t nb_ops)
enum rte_comp_huffman huffman
__rte_experimental const char * rte_comp_get_feature_name(uint64_t flag)
#define __rte_cache_aligned
__rte_experimental void rte_comp_op_free(struct rte_comp_op *op)
__rte_experimental int rte_comp_op_bulk_alloc(struct rte_mempool *mempool, struct rte_comp_op **ops, uint16_t nb_ops)