rte_port.h - Man Page
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)
#define RTE_MBUF_METADATA_UINT16_PTR(mbuf, offset)
#define RTE_MBUF_METADATA_UINT32_PTR(mbuf, offset)
#define RTE_MBUF_METADATA_UINT64_PTR(mbuf, offset)
#define RTE_MBUF_METADATA_UINT8(mbuf, offset)
#define RTE_MBUF_METADATA_UINT16(mbuf, offset)
#define RTE_MBUF_METADATA_UINT32(mbuf, offset)
#define RTE_MBUF_METADATA_UINT64(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)
Value:
(&((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)
Value:
((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)
Value:
((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)
Value:
((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)
Value:
(*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 32 of file rte_port.h.
#define RTE_MBUF_METADATA_UINT16( mbuf, offset)
Value:
(*RTE_MBUF_METADATA_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)
Value:
(*RTE_MBUF_METADATA_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)
Value:
(*RTE_MBUF_METADATA_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. Cannot 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.
Referenced By
The man pages RTE_MBUF_METADATA_UINT16(3), RTE_MBUF_METADATA_UINT16_PTR(3), RTE_MBUF_METADATA_UINT32(3), RTE_MBUF_METADATA_UINT32_PTR(3), RTE_MBUF_METADATA_UINT64(3), RTE_MBUF_METADATA_UINT64_PTR(3), RTE_MBUF_METADATA_UINT8(3), RTE_MBUF_METADATA_UINT8_PTR(3), RTE_PORT_IN_BURST_SIZE_MAX(3), rte_port_in_op_create(3), rte_port_in_op_free(3), rte_port_in_op_rx(3), rte_port_in_op_stats_read(3), rte_port_out_op_create(3), rte_port_out_op_flush(3), rte_port_out_op_free(3), rte_port_out_op_stats_read(3), rte_port_out_op_tx(3) and rte_port_out_op_tx_bulk(3) are aliases of rte_port.h(3).