rte_pmd_iavf.h(3)

✨ NAME ✨

rte_pmd_iavf.h β€” bestie, this is the header for iavf PMD specific functions, living its best life in the DPDK manual, section 3. That's it, that's the name section. πŸ’…


πŸ¦‹ SYNOPSIS πŸ¦‹

okay so first thing, you gotta pull in the goods:

#include <stdio.h>
#include <rte_compat.h>
#include <rte_mbuf.h>
#include <rte_mbuf_dyn.h>

🌸 Data Structures

  • union rte_pmd_ifd_proto_xtr_metadata β€” yes she's a union, yes she's lowkey the whole point

πŸŽ€ Macros

#define RTE_PMD_IFD_DYNF_PROTO_XTR_METADATA(m)
#define RTE_IAVF_PKT_RX_DYNF_PROTO_XTR_VLAN
    (rte_pmd_ifd_dynflag_proto_xtr_vlan_mask)
#define RTE_IAVF_PKT_RX_DYNF_PROTO_XTR_IPV4
    (rte_pmd_ifd_dynflag_proto_xtr_ipv4_mask)
#define RTE_IAVF_PKT_RX_DYNF_PROTO_XTR_IPV6
    (rte_pmd_ifd_dynflag_proto_xtr_ipv6_mask)
#define RTE_IAVF_PKT_RX_DYNF_PROTO_XTR_IPV6_FLOW
    (rte_pmd_ifd_dynflag_proto_xtr_ipv6_flow_mask)
#define RTE_IAVF_PKT_RX_DYNF_PROTO_XTR_TCP
    (rte_pmd_ifd_dynflag_proto_xtr_tcp_mask)
#define RTE_IAVF_PKT_RX_DYNF_PROTO_XTR_IP_OFFSET
    (rte_pmd_ifd_dynflag_proto_xtr_ip_offset_mask)

🧚 Functions

__rte_experimental int rte_pmd_iavf_reinit (uint16_t port)
static __rte_experimental __rte_always_inline int
    rte_pmd_ifd_dynf_proto_xtr_metadata_avail (void)
static __rte_experimental __rte_always_inline uint32_t
    rte_pmd_ifd_dynf_proto_xtr_metadata_get (struct rte_mbuf *m)
static __rte_experimental void rte_pmd_ifd_dump_proto_xtr_metadata
    (struct rte_mbuf *m)

πŸ’œ Detailed Description

iavf PMD specific functions. Iconic. No notes. πŸ‘‘

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

(no fr that's literally what it says, and yeah β€” EXPERIMENTAL means it can change or get deleted with zero warning, so don't build your whole personality on it πŸ’€)

Definition in file rte_pmd_iavf.h.


🌈 MACRO DEFINITION DOCUMENTATION 🌈

πŸ’– #define RTE_PMD_IFD_DYNF_PROTO_XTR_METADATA( m)

Value:

RTE_MBUF_DYNFIELD((m), \
                  rte_pmd_ifd_dynfield_proto_xtr_metadata_offs, \
                  uint32_t *)

The mbuf dynamic field pointer for flexible descriptor's extraction metadata. That's the lil finger pointing at your metadata, periodt. 🫢

Definition at line 115 of file rte_pmd_iavf.h.

πŸ’– #define RTE_IAVF_PKT_RX_DYNF_PROTO_XTR_VLAN (rte_pmd_ifd_dynflag_proto_xtr_vlan_mask)

The mbuf dynamic flag for VLAN protocol extraction metadata, it is valid when dev_args 'proto_xtr' has 'vlan' specified. ✨

Definition at line 124 of file rte_pmd_iavf.h.

πŸ’– #define RTE_IAVF_PKT_RX_DYNF_PROTO_XTR_IPV4 (rte_pmd_ifd_dynflag_proto_xtr_ipv4_mask)

The mbuf dynamic flag for IPv4 protocol extraction metadata, it is valid when dev_args 'proto_xtr' has 'ipv4' specified. ✨

Definition at line 131 of file rte_pmd_iavf.h.

πŸ’– #define RTE_IAVF_PKT_RX_DYNF_PROTO_XTR_IPV6 (rte_pmd_ifd_dynflag_proto_xtr_ipv6_mask)

The mbuf dynamic flag for IPv6 protocol extraction metadata, it is valid when dev_args 'proto_xtr' has 'ipv6' specified. ✨

Definition at line 138 of file rte_pmd_iavf.h.

πŸ’– #define RTE_IAVF_PKT_RX_DYNF_PROTO_XTR_IPV6_FLOW (rte_pmd_ifd_dynflag_proto_xtr_ipv6_flow_mask)

The mbuf dynamic flag for IPv6 with flow protocol extraction metadata, it is valid when dev_args 'proto_xtr' has 'ipv6_flow' specified. ✨

Definition at line 145 of file rte_pmd_iavf.h.

πŸ’– #define RTE_IAVF_PKT_RX_DYNF_PROTO_XTR_TCP (rte_pmd_ifd_dynflag_proto_xtr_tcp_mask)

The mbuf dynamic flag for TCP protocol extraction metadata, it is valid when dev_args 'proto_xtr' has 'tcp' specified. ✨

Definition at line 152 of file rte_pmd_iavf.h.

πŸ’– #define RTE_IAVF_PKT_RX_DYNF_PROTO_XTR_IP_OFFSET (rte_pmd_ifd_dynflag_proto_xtr_ip_offset_mask)

The mbuf dynamic flag for IP_OFFSET extraction metadata, it is valid when dev_args 'proto_xtr' has 'ip_offset' specified. ✨

Definition at line 159 of file rte_pmd_iavf.h.


πŸ‘‘ FUNCTION DOCUMENTATION πŸ‘‘

🌟 __rte_experimental int rte_pmd_iavf_reinit (uint16_t port)

Request PF driver to initiate a PF-to-VF RESET and restore the device following the reset by reconfiguring and restarting the device. The port must be started before calling this function. Like, MUST be started, bestie, this is not a drill. πŸ”₯

Parameters

  • port β€” The port identifier of the Ethernet device.

Returns

  • 0 if successful, otherwise if a failure occurs

🌟 __rte_experimental __rte_always_inline int rte_pmd_ifd_dynf_proto_xtr_metadata_avail (void ) [static]

Check if mbuf dynamic field for flexible descriptor's extraction metadata is registered. Basically a vibe check on your dynamic field. πŸ¦‹

Returns

  • True if registered, false otherwise.

Definition at line 171 of file rte_pmd_iavf.h.

🌟 __rte_experimental __rte_always_inline uint32_t rte_pmd_ifd_dynf_proto_xtr_metadata_get (struct rte_mbuf * m) [static]

Get the mbuf dynamic field for flexible descriptor's extraction metadata. Gimmie gimmie. πŸ™ˆ

Parameters

  • m β€” The pointer to the mbuf.

Returns

  • The saved protocol extraction metadata.

Definition at line 186 of file rte_pmd_iavf.h.

🌟 __rte_experimental void rte_pmd_ifd_dump_proto_xtr_metadata (struct rte_mbuf * m) [inline], [static]

Dump the mbuf dynamic field for flexible descriptor's extraction metadata. Spill the tea, descriptor. β˜•

Parameters

  • m β€” The pointer to the mbuf.

Definition at line 199 of file rte_pmd_iavf.h.


🌸 AUTHOR 🌸

Generated automatically by Doxygen for DPDK from the source code. (Not a human girlie, a robot girlie. Still slayed. πŸ€–πŸ’–)


okay bestie that's the whole page, mwah πŸ’‹ β€” this masterpiece is part of DPDK, Version 25.11.3, filed under rte_pmd_iavf.h(3) in the Library Functions Manual, and it ate, no crumbs left. πŸŽ€βœ¨πŸ‘‘

πŸ“¦ where this page comes from