FD.io VPP  v18.10-32-g1161dda
Vector Packet Processing
format.c File Reference
+ Include dependency graph for format.c:

Go to the source code of this file.

Macros

#define foreach_dpdk_counter
 
#define foreach_dpdk_q_counter
 
#define foreach_dpdk_rss_hf
 
#define foreach_dpdk_rx_offload_caps
 
#define foreach_dpdk_tx_offload_caps
 
#define foreach_dpdk_pkt_rx_offload_flag
 
#define foreach_dpdk_pkt_type
 
#define foreach_dpdk_pkt_tx_offload_flag
 
#define foreach_dpdk_pkt_offload_flag
 
#define foreach_dpdk_log_level
 

Functions

u8format_dpdk_device_name (u8 *s, va_list *args)
 
u8format_dpdk_device_flags (u8 *s, va_list *args)
 
static u8format_dpdk_device_type (u8 *s, va_list *args)
 
static u8format_dpdk_link_status (u8 *s, va_list *args)
 
u8format_dpdk_rss_hf_name (u8 *s, va_list *args)
 
u8format_dpdk_rx_offload_caps (u8 *s, va_list *args)
 
u8format_dpdk_tx_offload_caps (u8 *s, va_list *args)
 
u8format_dpdk_device_errors (u8 *s, va_list *args)
 
static u8format_dpdk_device_module_info (u8 *s, va_list *args)
 
static const char * ptr2sname (void *p)
 
u8format_dpdk_device (u8 *s, va_list *args)
 
u8format_dpdk_tx_trace (u8 *s, va_list *va)
 
u8format_dpdk_rx_trace (u8 *s, va_list *va)
 
static u8format_dpdk_pkt_types (u8 *s, va_list *va)
 
static u8format_dpdk_pkt_offload_flags (u8 *s, va_list *va)
 
u8format_dpdk_rte_mbuf_vlan (u8 *s, va_list *va)
 
u8format_dpdk_rte_mbuf (u8 *s, va_list *va)
 
clib_error_tunformat_rss_fn (unformat_input_t *input, uword *rss_fn)
 
uword unformat_dpdk_log_level (unformat_input_t *input, va_list *args)
 
clib_error_tunformat_hqos (unformat_input_t *input, dpdk_device_config_hqos_t *hqos)
 

Macro Definition Documentation

#define foreach_dpdk_counter
Value:
_ (tx_frames_ok, opackets) \
_ (tx_bytes_ok, obytes) \
_ (tx_errors, oerrors) \
_ (rx_frames_ok, ipackets) \
_ (rx_bytes_ok, ibytes) \
_ (rx_errors, ierrors) \
_ (rx_missed, imissed) \
_ (rx_no_bufs, rx_nombuf)

Definition at line 31 of file format.c.

#define foreach_dpdk_log_level
Value:
_ (EMERG, "emergency") \
_ (ALERT, "alert") \
_ (CRIT, "critical") \
_ (ERR, "error") \
_ (WARNING, "warning") \
_ (NOTICE, "notice") \
_ (INFO, "info") \
_ (DEBUG, "debug")
#define INFO(...)
Definition: main.c:64
#define DEBUG
Definition: dlmalloc.c:32

Definition at line 174 of file format.c.

#define foreach_dpdk_pkt_offload_flag
Value:

Definition at line 170 of file format.c.

#define foreach_dpdk_pkt_rx_offload_flag
Value:
_ (PKT_RX_VLAN, "RX packet is a 802.1q VLAN packet") \
_ (PKT_RX_RSS_HASH, "RX packet with RSS hash result") \
_ (PKT_RX_FDIR, "RX packet with FDIR infos") \
_ (PKT_RX_L4_CKSUM_BAD, "L4 cksum of RX pkt. is not OK") \
_ (PKT_RX_IP_CKSUM_BAD, "IP cksum of RX pkt. is not OK") \
_ (PKT_RX_EIP_CKSUM_BAD, "External IP header checksum error") \
_ (PKT_RX_VLAN_STRIPPED, "RX packet VLAN tag stripped") \
_ (PKT_RX_IP_CKSUM_GOOD, "IP cksum of RX pkt. is valid") \
_ (PKT_RX_L4_CKSUM_GOOD, "L4 cksum of RX pkt. is valid") \
_ (PKT_RX_IEEE1588_PTP, "RX IEEE1588 L2 Ethernet PT Packet") \
_ (PKT_RX_IEEE1588_TMST, "RX IEEE1588 L2/L4 timestamped packet") \
_ (PKT_RX_QINQ_STRIPPED, "RX packet QinQ tags stripped") \
_ (PKT_RX_TIMESTAMP, "Timestamp field is valid")

Definition at line 108 of file format.c.

#define foreach_dpdk_pkt_tx_offload_flag
Value:
_ (PKT_TX_VLAN_PKT, "TX packet is a 802.1q VLAN packet") \
_ (PKT_TX_IP_CKSUM, "IP cksum of TX pkt. computed by NIC") \
_ (PKT_TX_TCP_CKSUM, "TCP cksum of TX pkt. computed by NIC") \
_ (PKT_TX_SCTP_CKSUM, "SCTP cksum of TX pkt. computed by NIC") \
_ (PKT_TX_IEEE1588_TMST, "TX IEEE1588 packet to timestamp")

Definition at line 163 of file format.c.

#define foreach_dpdk_pkt_type
Value:
_ (L2, ETHER, "Ethernet packet") \
_ (L2, ETHER_TIMESYNC, "Ethernet packet for time sync") \
_ (L2, ETHER_ARP, "ARP packet") \
_ (L2, ETHER_LLDP, "LLDP (Link Layer Discovery Protocol) packet") \
_ (L2, ETHER_NSH, "NSH (Network Service Header) packet") \
_ (L2, ETHER_VLAN, "VLAN packet") \
_ (L2, ETHER_QINQ, "QinQ packet") \
_ (L3, IPV4, "IPv4 packet without extension headers") \
_ (L3, IPV4_EXT, "IPv4 packet with extension headers") \
_ (L3, IPV4_EXT_UNKNOWN, "IPv4 packet with or without extension headers") \
_ (L3, IPV6, "IPv6 packet without extension headers") \
_ (L3, IPV6_EXT, "IPv6 packet with extension headers") \
_ (L3, IPV6_EXT_UNKNOWN, "IPv6 packet with or without extension headers") \
_ (L4, TCP, "TCP packet") \
_ (L4, UDP, "UDP packet") \
_ (L4, FRAG, "Fragmented IP packet") \
_ (L4, SCTP, "SCTP (Stream Control Transmission Protocol) packet") \
_ (L4, ICMP, "ICMP packet") \
_ (L4, NONFRAG, "Non-fragmented IP packet") \
_ (TUNNEL, GRE, "GRE tunneling packet") \
_ (TUNNEL, VXLAN, "VXLAN tunneling packet") \
_ (TUNNEL, NVGRE, "NVGRE Tunneling packet") \
_ (TUNNEL, GENEVE, "GENEVE Tunneling packet") \
_ (TUNNEL, GRENAT, "Teredo, VXLAN or GRE Tunneling packet") \
_ (INNER_L2, ETHER, "Inner Ethernet packet") \
_ (INNER_L2, ETHER_VLAN, "Inner Ethernet packet with VLAN") \
_ (INNER_L3, IPV4, "Inner IPv4 packet without extension headers") \
_ (INNER_L3, IPV4_EXT, "Inner IPv4 packet with extension headers") \
_ (INNER_L3, IPV4_EXT_UNKNOWN, "Inner IPv4 packet with or without extension headers") \
_ (INNER_L3, IPV6, "Inner IPv6 packet without extension headers") \
_ (INNER_L3, IPV6_EXT, "Inner IPv6 packet with extension headers") \
_ (INNER_L3, IPV6_EXT_UNKNOWN, "Inner IPv6 packet with or without extension headers") \
_ (INNER_L4, TCP, "Inner TCP packet") \
_ (INNER_L4, UDP, "Inner UDP packet") \
_ (INNER_L4, FRAG, "Inner fragmented IP packet") \
_ (INNER_L4, SCTP, "Inner SCTP (Stream Control Transmission Protocol) packet") \
_ (INNER_L4, ICMP, "Inner ICMP packet") \
_ (INNER_L4, NONFRAG, "Inner non-fragmented IP packet")

Definition at line 123 of file format.c.

#define foreach_dpdk_q_counter
Value:
_ (rx_frames_ok, q_ipackets) \
_ (tx_frames_ok, q_opackets) \
_ (rx_bytes_ok, q_ibytes) \
_ (tx_bytes_ok, q_obytes) \
_ (rx_errors, q_errors)

Definition at line 41 of file format.c.

#define foreach_dpdk_rss_hf
Value:
_(ETH_RSS_IPV4, "ipv4") \
_(ETH_RSS_FRAG_IPV4, "ipv4-frag") \
_(ETH_RSS_NONFRAG_IPV4_TCP, "ipv4-tcp") \
_(ETH_RSS_NONFRAG_IPV4_UDP, "ipv4-udp") \
_(ETH_RSS_NONFRAG_IPV4_SCTP, "ipv4-sctp") \
_(ETH_RSS_NONFRAG_IPV4_OTHER, "ipv4-other") \
_(ETH_RSS_IPV6, "ipv6") \
_(ETH_RSS_FRAG_IPV6, "ipv6-frag") \
_(ETH_RSS_NONFRAG_IPV6_TCP, "ipv6-tcp") \
_(ETH_RSS_NONFRAG_IPV6_UDP, "ipv6-udp") \
_(ETH_RSS_NONFRAG_IPV6_SCTP, "ipv6-sctp") \
_(ETH_RSS_NONFRAG_IPV6_OTHER, "ipv6-other") \
_(ETH_RSS_IPV6_TCP_EX, "ipv6-tcp-ex") \
_(ETH_RSS_IPV6_UDP_EX, "ipv6-udp-ex") \
_(ETH_RSS_L2_PAYLOAD, "l2-payload") \
_(ETH_RSS_IPV6_EX, "ipv6-ex") \
_(ETH_RSS_IPV6_TCP_EX, "ipv6-tcp-ex") \
_(ETH_RSS_IPV6_UDP_EX, "ipv6-udp-ex") \
_(ETH_RSS_PORT, "port") \
_(ETH_RSS_VXLAN, "vxlan") \
_(ETH_RSS_GENEVE, "geneve") \
_(ETH_RSS_NVGRE, "nvgre")

Definition at line 48 of file format.c.

#define foreach_dpdk_rx_offload_caps
Value:
_(DEV_RX_OFFLOAD_VLAN_STRIP, "vlan-strip") \
_(DEV_RX_OFFLOAD_IPV4_CKSUM, "ipv4-cksum") \
_(DEV_RX_OFFLOAD_UDP_CKSUM , "udp-cksum") \
_(DEV_RX_OFFLOAD_TCP_CKSUM , "tcp-cksum") \
_(DEV_RX_OFFLOAD_TCP_LRO , "rcp-lro") \
_(DEV_RX_OFFLOAD_QINQ_STRIP, "qinq-strip") \
_(DEV_RX_OFFLOAD_OUTER_IPV4_CKSUM, "outer-ipv4-cksum") \
_(DEV_RX_OFFLOAD_MACSEC_STRIP, "macsec-strip") \
_(DEV_RX_OFFLOAD_HEADER_SPLIT, "header-split") \
_(DEV_RX_OFFLOAD_VLAN_FILTER, "vlan-filter") \
_(DEV_RX_OFFLOAD_VLAN_EXTEND, "vlan-extend") \
_(DEV_RX_OFFLOAD_JUMBO_FRAME, "jumbo-frame") \
_(DEV_RX_OFFLOAD_CRC_STRIP, "crc-strip") \
_(DEV_RX_OFFLOAD_SCATTER, "scatter") \
_(DEV_RX_OFFLOAD_TIMESTAMP, "timestamp") \
_(DEV_RX_OFFLOAD_SECURITY, "security")

Definition at line 73 of file format.c.

#define foreach_dpdk_tx_offload_caps
Value:
_(DEV_TX_OFFLOAD_VLAN_INSERT, "vlan-insert") \
_(DEV_TX_OFFLOAD_IPV4_CKSUM, "ipv4-cksum") \
_(DEV_TX_OFFLOAD_UDP_CKSUM , "udp-cksum") \
_(DEV_TX_OFFLOAD_TCP_CKSUM , "tcp-cksum") \
_(DEV_TX_OFFLOAD_SCTP_CKSUM , "sctp-cksum") \
_(DEV_TX_OFFLOAD_TCP_TSO , "tcp-tso") \
_(DEV_TX_OFFLOAD_UDP_TSO , "udp-tso") \
_(DEV_TX_OFFLOAD_OUTER_IPV4_CKSUM, "outer-ipv4-cksum") \
_(DEV_TX_OFFLOAD_QINQ_INSERT, "qinq-insert") \
_(DEV_TX_OFFLOAD_VXLAN_TNL_TSO, "vxlan-tnl-tso") \
_(DEV_TX_OFFLOAD_GRE_TNL_TSO, "gre-tnl-tso") \
_(DEV_TX_OFFLOAD_IPIP_TNL_TSO, "ipip-tnl-tso") \
_(DEV_TX_OFFLOAD_GENEVE_TNL_TSO, "geneve-tnl-tso") \
_(DEV_TX_OFFLOAD_MACSEC_INSERT, "macsec-insert") \
_(DEV_TX_OFFLOAD_MT_LOCKFREE, "mt-lockfree") \

Definition at line 91 of file format.c.

Function Documentation

u8* format_dpdk_device ( u8 s,
va_list *  args 
)

Definition at line 537 of file format.c.

+ Here is the call graph for this function:

u8* format_dpdk_device_errors ( u8 s,
va_list *  args 
)

Definition at line 487 of file format.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u8* format_dpdk_device_flags ( u8 s,
va_list *  args 
)

Definition at line 290 of file format.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static u8* format_dpdk_device_module_info ( u8 s,
va_list *  args 
)
static

Definition at line 501 of file format.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u8* format_dpdk_device_name ( u8 s,
va_list *  args 
)

Definition at line 185 of file format.c.

+ Here is the call graph for this function:

static u8* format_dpdk_device_type ( u8 s,
va_list *  args 
)
static

Definition at line 305 of file format.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static u8* format_dpdk_link_status ( u8 s,
va_list *  args 
)
static

Definition at line 419 of file format.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static u8* format_dpdk_pkt_offload_flags ( u8 s,
va_list *  va 
)
inlinestatic

Definition at line 796 of file format.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static u8* format_dpdk_pkt_types ( u8 s,
va_list *  va 
)
inlinestatic

Definition at line 773 of file format.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u8* format_dpdk_rss_hf_name ( u8 s,
va_list *  args 
)

Definition at line 450 of file format.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u8* format_dpdk_rte_mbuf ( u8 s,
va_list *  va 
)

Definition at line 840 of file format.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u8* format_dpdk_rte_mbuf_vlan ( u8 s,
va_list *  va 
)

Definition at line 819 of file format.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u8* format_dpdk_rx_offload_caps ( u8 s,
va_list *  args 
)

Definition at line 462 of file format.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u8* format_dpdk_rx_trace ( u8 s,
va_list *  va 
)

Definition at line 730 of file format.c.

+ Here is the call graph for this function:

u8* format_dpdk_tx_offload_caps ( u8 s,
va_list *  args 
)

Definition at line 474 of file format.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u8* format_dpdk_tx_trace ( u8 s,
va_list *  va 
)

Definition at line 700 of file format.c.

+ Here is the call graph for this function:

static const char* ptr2sname ( void *  p)
static

Definition at line 526 of file format.c.

+ Here is the caller graph for this function:

uword unformat_dpdk_log_level ( unformat_input_t input,
va_list *  args 
)

Definition at line 901 of file format.c.

clib_error_t* unformat_hqos ( unformat_input_t input,
dpdk_device_config_hqos_t hqos 
)

Definition at line 915 of file format.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

clib_error_t* unformat_rss_fn ( unformat_input_t input,
uword rss_fn 
)

Definition at line 878 of file format.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function: