rte_comp_op - Man Page

Synopsis

#include <rte_comp​.h>

Data Fields

struct rte_mempool * mempool
rte_iova_t iova_addr
struct rte_mbuf * m_src
struct rte_mbuf * m_dst
enum rte_comp_flush_flag flush_flag
uint64_t input_chksum
uint64_t output_chksum
uint32_t consumed
uint32_t produced
uint64_t debug_status
uint8_t status

Detailed Description

Compression Operation​.

This structure contains data relating to performing a compression operation on the referenced mbuf data buffers​.

Comp operations are enqueued and dequeued in comp PMDs using the rte_compressdev_enqueue_burst() / rte_compressdev_dequeue_burst() APIs

Definition at line 382 of file rte_comp​.h​.

Field Documentation

struct rte_mempool* mempool

Pool from which operation is allocated

Definition at line 401 of file rte_comp​.h​.

rte_iova_t iova_addr

IOVA address of this operation

Definition at line 403 of file rte_comp​.h​.

struct rte_mbuf* m_src

source mbuf The total size of the input buffer(s) can be retrieved using rte_pktmbuf_pkt_len(m_src)​. The max data size which can fit in a single mbuf is limited by the uint16_t rte_mbuf​.data_len to 64k-1​. If the input data is bigger than this it can be passed to the PMD in a chain of mbufs if the PMD's capabilities indicate it supports this​.

Definition at line 405 of file rte_comp​.h​.

struct rte_mbuf* m_dst

destination mbuf The total size of the output buffer(s) can be retrieved using rte_pktmbuf_pkt_len(m_dst)​. The max data size which can fit in a single mbuf is limited by the uint16_t rte_mbuf​.data_len to 64k-1​. If the output data is expected to be bigger than this a chain of mbufs can be passed to the PMD if the PMD's capabilities indicate it supports this​.

Note

, if incompressible data is passed to an engine for compression using RTE_COMP_ALGO_DEFLATE, it's possible for the output data to be larger than the uncompressed data, due to the inclusion of the DEFLATE header blocks​. The size of m_dst should accommodate this, else OUT_OF_SPACE errors can be expected in this case​.

Definition at line 413 of file rte_comp​.h​.

enum rte_comp_flush_flag flush_flag

Defines flush characteristics for the output data​. Only applicable in compress direction

Definition at line 469 of file rte_comp​.h​.

uint64_t input_chksum

An input checksum can be provided to generate a cumulative checksum across sequential blocks in a STATELESS stream​. Checksum type is as specified in xform chksum_type

Definition at line 473 of file rte_comp​.h​.

uint64_t output_chksum

If a checksum is generated it will be written in here​. Checksum type is as specified in xform chksum_type​.

Definition at line 478 of file rte_comp​.h​.

uint32_t consumed

The number of bytes from the source buffer which were compressed/decompressed​.

Definition at line 482 of file rte_comp​.h​.

uint32_t produced

The number of bytes written to the destination buffer which were compressed/decompressed​.

Definition at line 486 of file rte_comp​.h​.

uint64_t debug_status

Status of the operation is returned in the status param​. This field allows the PMD to pass back extra pmd-specific debug information​. Value is not defined on the API​.

Definition at line 490 of file rte_comp​.h​.

uint8_t status

Operation status - use values from enum rte_comp_status​. This is reset to RTE_COMP_OP_STATUS_NOT_PROCESSED on allocation from mempool and will be set to RTE_COMP_OP_STATUS_SUCCESS after operation is successfully processed by a PMD

Definition at line 496 of file rte_comp​.h​.

Author

Generated automatically by Doxygen for DPDK from the source code​.

Info

Version 25.11.3 DPDK