Skip site navigation (1)Skip section navigation (2)

  
 
  

home | help
rte_comp_op(3)			      DPDK			  rte_comp_op(3)

NAME
     rte_comp_op

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
     void * private_xform
     void * stream
     uint32_t offset
     uint32_t length
     uint8_t * digest

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_com-
     pressdev_enqueue_burst() / rte_compressdev_dequeue_burst() APIs

     Definition at line 382 of file rte_comp.h.

Field Documentation
   void* private_xform
     Stateless private PMD data derived from an  rte_comp_xform.  A  handle  re-
     turned by rte_compressdev_private_xform_create() must be attached to opera-
     tions of op_type RTE_COMP_STATELESS.

     Definition at line 385 of file rte_comp.h.

   void* stream
     Private  PMD  data  derived  initially  from an rte_comp_xform, which holds
     state and history data and evolves as operations  are  processed.	rte_com-
     pressdev_stream_create()  must  be called on a device for all STATEFUL data
     streams and the resulting stream attached to the one or more operations as-
     sociated with the data stream. All operations in a stream must be	sent  to
     the same device.

     Definition at line 390 of file rte_comp.h.

   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

     IO address of the buffer

     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 sin-
     gle mbuf is limited by the uint16_t rte_mbuf.data_len to 64k-1. If the out-
     put  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.

   uint32_t offset
     Starting point for compression or decompression,  specified  as  number  of
     bytes  from  start  of packet in source buffer. This offset starts from the
     first segment of the buffer, in case the m_src is a chain of mbufs.  Start-
     ing point for checksum generation in compress direction.

     Starting  point  for writing output data, specified as number of bytes from
     start of packet in dest buffer. This offset starts from the  first  segment
     of  the  buffer,  in case the m_dst is a chain of mbufs. Starting point for
     checksum generation in decompress direction.

     Definition at line 430 of file rte_comp.h.

   uint32_t length
     The length, in bytes, of the data in source buffer to be compressed or  de-
     compressed.  Also	the length of the data over which the checksum should be
     generated in compress direction

     Definition at line 438 of file rte_comp.h.

   uint8_t* digest
     Output buffer to store hash output, if enabled in xform. Buffer would  con-
     tain    valid    value    only    after   an   op	 with	flush	flag   =
     RTE_COMP_FLUSH_FULL/FLUSH_FINAL is processed successfully.

     Length of buffer should be contiguous and large enough to	accommodate  di-
     gest produced by specific hash algo.

     Definition at line 457 of file rte_comp.h.

   enum rte_comp_flush_flag flush_flag
     Defines  flush characteristics for the output data. Only applicable in com-
     press 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/decom-
     pressed.

     Definition at line 482 of file rte_comp.h.

   uint32_t produced
     The number of bytes written to  the  destination  buffer  which  were  com-
     pressed/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 de-
     fined 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.

Version 25.11.0 		 Thu Aug 27 2026		  rte_comp_op(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=debug_status&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help