DPDK  23.03.0
Data Fields
rte_eth_hairpin_conf Struct Reference

#include <rte_ethdev.h>

Data Fields

uint32_t peer_count:16
 
uint32_t tx_explicit:1
 
uint32_t manual_bind:1
 
uint32_t use_locked_device_memory:1
 
uint32_t use_rte_memory:1
 
uint32_t force_memory:1
 
uint32_t reserved:11
 

Detailed Description

Warning
EXPERIMENTAL: this API may change, or be removed, without prior notice

A structure used to configure hairpin binding.

Definition at line 1213 of file rte_ethdev.h.

Field Documentation

◆ peer_count

uint32_t peer_count

The number of peers.

Definition at line 1214 of file rte_ethdev.h.

◆ tx_explicit

uint32_t tx_explicit

Explicit Tx flow rule mode. One hairpin pair of queues should have the same attribute.

  • When set, the user should be responsible for inserting the hairpin Tx part flows and removing them.
  • When clear, the PMD will try to handle the Tx part of the flows, e.g., by splitting one flow into two parts.

Definition at line 1225 of file rte_ethdev.h.

◆ manual_bind

uint32_t manual_bind

Manually bind hairpin queues. One hairpin pair of queues should have the same attribute.

  • When set, to enable hairpin, the user should call the hairpin bind function after all the queues are set up properly and the ports are started. Also, the hairpin unbind function should be called accordingly before stopping a port that with hairpin configured.
  • When cleared, the PMD will try to enable the hairpin with the queues configured automatically during port start.

Definition at line 1238 of file rte_ethdev.h.

◆ use_locked_device_memory

uint32_t use_locked_device_memory

Use locked device memory as a backing storage.

  • When set, PMD will attempt place descriptors and/or data buffers in dedicated device memory.
  • When cleared, PMD will use default memory type as a backing storage. Please refer to PMD documentation for details.

API user should check if PMD supports this configuration flag using

See also
rte_eth_dev_hairpin_capability_get.

Definition at line 1251 of file rte_ethdev.h.

◆ use_rte_memory

uint32_t use_rte_memory

Use DPDK memory as backing storage.

  • When set, PMD will attempt place descriptors and/or data buffers in host memory managed by DPDK.
  • When cleared, PMD will use default memory type as a backing storage. Please refer to PMD documentation for details.

API user should check if PMD supports this configuration flag using

See also
rte_eth_dev_hairpin_capability_get.

Definition at line 1264 of file rte_ethdev.h.

◆ force_memory

uint32_t force_memory

Force usage of hairpin memory configuration.

  • When set, PMD will attempt to use specified memory settings. If resource allocation fails, then hairpin queue allocation will result in an error.
  • When clear, PMD will attempt to use specified memory settings. If resource allocation fails, then PMD will retry allocation with default configuration.

Definition at line 1276 of file rte_ethdev.h.

◆ reserved

uint32_t reserved

Reserved bits.

Definition at line 1278 of file rte_ethdev.h.


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