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

  
 
  

home | help
rte_port.h(3)			      DPDK			   rte_port.h(3)

NAME
     rte_port.h

SYNOPSIS
     #include <stdint.h>
     #include <rte_mbuf.h>

   Data Structures
     struct rte_port_in_stats
     struct rte_port_in_ops
     struct rte_port_out_stats
     struct rte_port_out_ops

   Macros
     #define RTE_PORT_IN_BURST_SIZE_MAX   64

	 #define   RTE_MBUF_METADATA_UINT8_PTR(mbuf,	offset)      (&((uint8_t
	     *)(mbuf))[offset])
	 #define RTE_MBUF_METADATA_UINT16_PTR(mbuf,   offset)	  ((uint16_t  *)
	     RTE_MBUF_METADATA_UINT8_PTR(mbuf, offset))
	 #define  RTE_MBUF_METADATA_UINT32_PTR(mbuf,   offset)	   ((uint32_t *)
	     RTE_MBUF_METADATA_UINT8_PTR(mbuf, offset))
	 #define RTE_MBUF_METADATA_UINT64_PTR(mbuf,   offset)	  ((uint64_t  *)
	     RTE_MBUF_METADATA_UINT8_PTR(mbuf, offset))
	 #define   RTE_MBUF_METADATA_UINT8(mbuf,    offset)	(*RTE_MBUF_META-
	     DATA_UINT8_PTR(mbuf, offset))
	 #define RTE_MBUF_METADATA_UINT16(mbuf,  offset)	(*RTE_MBUF_META-
	     DATA_UINT16_PTR(mbuf, offset))
	 #define RTE_MBUF_METADATA_UINT32(mbuf,  offset)	(*RTE_MBUF_META-
	     DATA_UINT32_PTR(mbuf, offset))
	 #define RTE_MBUF_METADATA_UINT64(mbuf,  offset)	(*RTE_MBUF_META-
	     DATA_UINT64_PTR(mbuf, offset))

   Typedefs
     typedef void *(* rte_port_in_op_create) (void *params, int socket_id)
     typedef int(* rte_port_in_op_free) (void *port)
     typedef int(*  rte_port_in_op_rx)	(void  *port,  struct  rte_mbuf  **pkts,
	 uint32_t n_pkts)
     typedef	int(*	 rte_port_in_op_stats_read)    (void	*port,	  struct
	 rte_port_in_stats *stats, int clear)
     typedef void *(* rte_port_out_op_create) (void *params, int socket_id)
     typedef int(* rte_port_out_op_free) (void *port)
     typedef int(* rte_port_out_op_tx) (void *port, struct rte_mbuf *pkt)
     typedef int(* rte_port_out_op_tx_bulk) (void *port, struct rte_mbuf **pkts,
	 uint64_t pkts_mask)
     typedef int(* rte_port_out_op_flush) (void *port)
     typedef   int(*	rte_port_out_op_stats_read)    (void	*port,	  struct
	 rte_port_out_stats *stats, int clear)

Detailed Description
     RTE Port

     This  tool  is  part of the DPDK Packet Framework tool suite and provides a
     standard interface to implement different types of packet ports.

     Definition in file rte_port.h.

Macro Definition Documentation
   #define    RTE_MBUF_METADATA_UINT8_PTR(mbuf,     offset)	     (&((uint8_t
     *)(mbuf))[offset])
     Macros  to allow accessing metadata stored in the mbuf headroom just beyond
     the end of the mbuf data structure returned by a port

     Definition at line 23 of file rte_port.h.

   #define   RTE_MBUF_METADATA_UINT16_PTR(mbuf,   offset)	((uint16_t    *)
     RTE_MBUF_METADATA_UINT8_PTR(mbuf, offset))
     Macros  to allow accessing metadata stored in the mbuf headroom just beyond
     the end of the mbuf data structure returned by a port

     Definition at line 25 of file rte_port.h.

   #define   RTE_MBUF_METADATA_UINT32_PTR(mbuf,   offset)	((uint32_t    *)
     RTE_MBUF_METADATA_UINT8_PTR(mbuf, offset))
     Macros  to allow accessing metadata stored in the mbuf headroom just beyond
     the end of the mbuf data structure returned by a port

     Definition at line 27 of file rte_port.h.

   #define   RTE_MBUF_METADATA_UINT64_PTR(mbuf,   offset)	((uint64_t    *)
     RTE_MBUF_METADATA_UINT8_PTR(mbuf, offset))
     Macros  to allow accessing metadata stored in the mbuf headroom just beyond
     the end of the mbuf data structure returned by a port

     Definition at line 29 of file rte_port.h.

   #define    RTE_MBUF_METADATA_UINT8(mbuf,	offset) 	(*RTE_MBUF_META-
     DATA_UINT8_PTR(mbuf, offset))
     Macros  to allow accessing metadata stored in the mbuf headroom just beyond
     the end of the mbuf data structure returned by a port

     Definition at line 32 of file rte_port.h.

   #define    RTE_MBUF_METADATA_UINT16(mbuf,	 offset)	(*RTE_MBUF_META-
     DATA_UINT16_PTR(mbuf, offset))
     Macros  to allow accessing metadata stored in the mbuf headroom just beyond
     the end of the mbuf data structure returned by a port

     Definition at line 34 of file rte_port.h.

   #define    RTE_MBUF_METADATA_UINT32(mbuf,	 offset)	(*RTE_MBUF_META-
     DATA_UINT32_PTR(mbuf, offset))
     Macros  to allow accessing metadata stored in the mbuf headroom just beyond
     the end of the mbuf data structure returned by a port

     Definition at line 36 of file rte_port.h.

   #define    RTE_MBUF_METADATA_UINT64(mbuf,	 offset)	(*RTE_MBUF_META-
     DATA_UINT64_PTR(mbuf, offset))
     Macros  to allow accessing metadata stored in the mbuf headroom just beyond
     the end of the mbuf data structure returned by a port

     Definition at line 38 of file rte_port.h.

   #define RTE_PORT_IN_BURST_SIZE_MAX	64
     Maximum number of packets read from any input port in a single burst.  Can-
     not be changed.

     Definition at line 47 of file rte_port.h.

Typedef Documentation
   typedef void *(* rte_port_in_op_create) (void *params, int socket_id)
     Input port create

     Parameters
	 params Parameters for input port creation
	 socket_id CPU socket ID (e.g. for memory allocation purpose)

     Returns
	 Handle to input port instance

     Definition at line 65 of file rte_port.h.

   typedef int(* rte_port_in_op_free) (void *port)
     Input port free

     Parameters
	 port Handle to input port instance

     Returns
	 0 on success, error code otherwise

     Definition at line 75 of file rte_port.h.

   typedef   int(*  rte_port_in_op_rx)	(void  *port,  struct  rte_mbuf  **pkts,
     uint32_t n_pkts)
     Input port packet burst RX

     Parameters
	 port Handle to input port instance
	 pkts Burst of input packets
	 n_pkts Number of packets in the input burst

     Returns
	 0 on success, error code otherwise

     Definition at line 89 of file rte_port.h.

   typedef    int(*    rte_port_in_op_stats_read)    (void     *port,	  struct
     rte_port_in_stats *stats, int clear)
     Input port stats get

     Parameters
	 port Handle to output port instance
	 stats Handle to port_in stats struct to copy data
	 clear Flag indicating that stats should be cleared after read

     Returns
	 Error code or 0 on success.

     Definition at line 107 of file rte_port.h.

   typedef void *(* rte_port_out_op_create) (void *params, int socket_id)
     Output port create

     Parameters
	 params Parameters for output port creation
	 socket_id CPU socket ID (e.g. for memory allocation purpose)

     Returns
	 Handle to output port instance

     Definition at line 139 of file rte_port.h.

   typedef int(* rte_port_out_op_free) (void *port)
     Output port free

     Parameters
	 port Handle to output port instance

     Returns
	 0 on success, error code otherwise

     Definition at line 149 of file rte_port.h.

   typedef int(* rte_port_out_op_tx) (void *port, struct rte_mbuf *pkt)
     Output port single packet TX

     Parameters
	 port Handle to output port instance
	 pkt Input packet

     Returns
	 0 on success, error code otherwise

     Definition at line 161 of file rte_port.h.

   typedef  int(*  rte_port_out_op_tx_bulk) (void *port, struct rte_mbuf **pkts,
     uint64_t pkts_mask)
     Output port packet burst TX

     Parameters
	 port Handle to output port instance
	 pkts Burst of input packets specified as array of up to 64 pointers  to
	 struct rte_mbuf
	 pkts_mask  64-bit  bitmask  specifying which packets in the input burst
	 are valid. When pkts_mask bit n is set, then element n of pkts array is
	 pointing to a valid packet. Otherwise, element n of pkts array will not
	 be accessed.

     Returns
	 0 on success, error code otherwise

     Definition at line 180 of file rte_port.h.

   typedef int(* rte_port_out_op_flush) (void *port)
     Output port flush

     Parameters
	 port Handle to output port instance

     Returns
	 0 on success, error code otherwise

     Definition at line 193 of file rte_port.h.

   typedef    int(*    rte_port_out_op_stats_read)    (void    *port,	  struct
     rte_port_out_stats *stats, int clear)
     Output port stats read

     Parameters
	 port Handle to output port instance
	 stats Handle to port_out stats struct to copy data
	 clear Flag indicating that stats should be cleared after read

     Returns
	 Error code or 0 on success.

     Definition at line 208 of file rte_port.h.

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

Version 25.11.0 		 Thu Aug 27 2026		   rte_port.h(3)

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

home | help