DPDK 25.03.0-rc0
Data Fields
rte_event_eth_rx_adapter_queue_conf Struct Reference

#include <rte_event_eth_rx_adapter.h>

Data Fields

uint32_t rx_queue_flags
 
uint16_t servicing_weight
 
struct rte_event ev
 
uint16_t vector_sz
 
uint64_t vector_timeout_ns
 
struct rte_mempoolvector_mp
 
uint16_t event_buf_size
 

Detailed Description

Rx queue configuration structure

Examples
examples/eventdev_pipeline/pipeline_worker_generic.c, examples/eventdev_pipeline/pipeline_worker_tx.c, examples/ipsec-secgw/event_helper.c, examples/l2fwd-event/l2fwd_event_generic.c, examples/l2fwd-event/l2fwd_event_internal_port.c, examples/l3fwd/l3fwd_event_generic.c, and examples/l3fwd/l3fwd_event_internal_port.c.

Definition at line 158 of file rte_event_eth_rx_adapter.h.

Field Documentation

◆ rx_queue_flags

uint32_t rx_queue_flags

Flags for handling received packets

See also
RTE_EVENT_ETH_RX_ADAPTER_QUEUE_FLOW_ID_VALID
Examples
examples/ipsec-secgw/event_helper.c.

Definition at line 159 of file rte_event_eth_rx_adapter.h.

◆ servicing_weight

uint16_t servicing_weight

Relative polling frequency of ethernet receive queue when the adapter uses a service core function for ethernet to event device transfers. If it is set to zero, the Rx queue is interrupt driven (unless rx queue interrupts are not enabled for the ethernet device).

Definition at line 163 of file rte_event_eth_rx_adapter.h.

◆ ev

struct rte_event ev

The values from the following event fields will be used when queuing mbuf events:

  • event_queue_id: Targeted event queue ID for received packets.
  • event_priority: Event priority of packets from this Rx queue in the event queue relative to other events.
  • sched_type: Scheduling type for packets from this Rx queue.
  • flow_id: If the RTE_ETH_RX_EVENT_ADAPTER_QUEUE_FLOW_ID_VALID bit is set in rx_queue_flags, this flow_id is used for all packets received from this queue. Otherwise the flow ID is set to the RSS hash of the src and dst IPv4/6 addresses.

The event adapter sets ev.event_type to RTE_EVENT_TYPE_ETHDEV in the enqueued event.

Examples
examples/ipsec-secgw/event_helper.c.

Definition at line 170 of file rte_event_eth_rx_adapter.h.

◆ vector_sz

uint16_t vector_sz

Indicates the maximum number for mbufs to combine and form a vector. Should be within

See also
rte_event_eth_rx_adapter_vector_limits::min_vector_sz
rte_event_eth_rx_adapter_vector_limits::max_vector_sz Valid when RTE_EVENT_ETH_RX_ADAPTER_QUEUE_EVENT_VECTOR flag is set in
rte_event_eth_rx_adapter_queue_conf::rx_queue_flags
Examples
examples/ipsec-secgw/event_helper.c.

Definition at line 187 of file rte_event_eth_rx_adapter.h.

◆ vector_timeout_ns

uint64_t vector_timeout_ns

Indicates the maximum number of nanoseconds to wait for receiving mbufs. Should be within vectorization limits of the adapter

See also
rte_event_eth_rx_adapter_vector_limits::min_vector_ns
rte_event_eth_rx_adapter_vector_limits::max_vector_ns Valid when RTE_EVENT_ETH_RX_ADAPTER_QUEUE_EVENT_VECTOR flag is set in
rte_event_eth_rx_adapter_queue_conf::rx_queue_flags
Examples
examples/ipsec-secgw/event_helper.c.

Definition at line 196 of file rte_event_eth_rx_adapter.h.

◆ vector_mp

struct rte_mempool* vector_mp

Indicates the mempool that should be used for allocating rte_event_vector container. Should be created by using rte_event_vector_pool_create. Valid when RTE_EVENT_ETH_RX_ADAPTER_QUEUE_EVENT_VECTOR flag is set in

See also
rte_event_eth_rx_adapter_queue_conf::rx_queue_flags.
Examples
examples/ipsec-secgw/event_helper.c.

Definition at line 206 of file rte_event_eth_rx_adapter.h.

◆ event_buf_size

uint16_t event_buf_size

event buffer size for this queue

Definition at line 214 of file rte_event_eth_rx_adapter.h.


The documentation for this struct was generated from the following file: