DPDK  23.03.0
Data Fields
rte_eth_rxconf Struct Reference

#include <rte_ethdev.h>

Data Fields

struct rte_eth_thresh rx_thresh
 
uint16_t rx_free_thresh
 
uint8_t rx_drop_en
 
uint8_t rx_deferred_start
 
uint16_t rx_nseg
 
uint16_t share_group
 
uint16_t share_qid
 
uint64_t offloads
 
union rte_eth_rxsegrx_seg
 
struct rte_mempool ** rx_mempools
 
uint64_t reserved_64s [2]
 
void * reserved_ptrs [2]
 

Detailed Description

A structure used to configure an Rx ring of an Ethernet port.

Examples:
examples/bond/main.c, examples/dma/dmafwd.c, examples/eventdev_pipeline/pipeline_worker_generic.c, examples/eventdev_pipeline/pipeline_worker_tx.c, examples/flow_filtering/main.c, examples/ip_fragmentation/main.c, examples/ip_reassembly/main.c, examples/ipsec-secgw/ipsec-secgw.c, examples/ipv4_multicast/main.c, examples/l2fwd-crypto/main.c, examples/l2fwd-event/l2fwd_common.c, examples/l2fwd-jobstats/main.c, examples/l2fwd-keepalive/main.c, examples/l2fwd/main.c, examples/l3fwd-graph/main.c, examples/l3fwd-power/main.c, examples/l3fwd/l3fwd_event.c, examples/l3fwd/main.c, examples/link_status_interrupt/main.c, examples/multi_process/symmetric_mp/main.c, examples/ntb/ntb_fwd.c, examples/ptpclient/ptpclient.c, examples/qos_meter/main.c, examples/qos_sched/init.c, examples/rxtx_callbacks/main.c, examples/vhost/main.c, and examples/vmdq/main.c.

Definition at line 1078 of file rte_ethdev.h.

Field Documentation

◆ rx_thresh

struct rte_eth_thresh rx_thresh

Rx ring threshold registers.

Examples:
examples/qos_sched/init.c.

Definition at line 1079 of file rte_ethdev.h.

◆ rx_free_thresh

uint16_t rx_free_thresh

Drives the freeing of Rx descriptors.

Examples:
examples/qos_sched/init.c.

Definition at line 1080 of file rte_ethdev.h.

◆ rx_drop_en

uint8_t rx_drop_en

Drop packets if no descriptors are available.

Examples:
examples/multi_process/symmetric_mp/main.c, examples/qos_sched/init.c, examples/vhost/main.c, and examples/vmdq/main.c.

Definition at line 1081 of file rte_ethdev.h.

◆ rx_deferred_start

uint8_t rx_deferred_start

Do not start queue with rte_eth_dev_start().

Examples:
examples/qos_sched/init.c.

Definition at line 1082 of file rte_ethdev.h.

◆ rx_nseg

uint16_t rx_nseg

Number of descriptions in rx_seg array.

Definition at line 1083 of file rte_ethdev.h.

◆ share_group

uint16_t share_group

Share group index in Rx domain and switch domain. Non-zero value to enable Rx queue share, zero value disable share. PMD is responsible for Rx queue consistency checks to avoid member port's configuration contradict to each other.

Definition at line 1090 of file rte_ethdev.h.

◆ share_qid

uint16_t share_qid

Shared Rx queue ID in group

Definition at line 1091 of file rte_ethdev.h.

◆ offloads

uint64_t offloads

◆ rx_seg

union rte_eth_rxseg* rx_seg

Points to the array of segment descriptions for an entire packet. Array elements are properties for consecutive Rx segments.

The supported capabilities of receiving segmentation is reported in rte_eth_dev_info.rx_seg_capa field.

Definition at line 1105 of file rte_ethdev.h.

◆ rx_mempools

struct rte_mempool** rx_mempools

Array of mempools to allocate Rx buffers from.

This provides support for multiple mbuf pools per Rx queue. The capability is reported in device info via positive max_rx_mempools.

It could be useful for more efficient usage of memory when an application creates different mempools to steer the specific size of the packet.

If many mempools are specified, packets received using Rx burst may belong to any provided mempool. From ethdev user point of view it is undefined how PMD/NIC chooses mempool for a packet.

If Rx scatter is enabled, a packet may be delivered using a chain of mbufs obtained from single mempool or multiple mempools based on the NIC implementation.

Definition at line 1126 of file rte_ethdev.h.

◆ reserved_64s

uint64_t reserved_64s[2]

< Number of Rx mempools Reserved for future fields

Definition at line 1129 of file rte_ethdev.h.

◆ reserved_ptrs

void* reserved_ptrs[2]

Reserved for future fields

Definition at line 1130 of file rte_ethdev.h.


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