unsigned int retry_enabled;
/* "read-write" results */
- unsigned int rx_packets; /**< received packets */
- unsigned int tx_packets; /**< received packets transmitted */
- unsigned int fwd_dropped; /**< received packets not forwarded */
- unsigned int rx_bad_ip_csum ; /**< received packets has bad ip checksum */
- unsigned int rx_bad_l4_csum ; /**< received packets has bad l4 checksum */
- unsigned int rx_bad_outer_l4_csum;
+ uint64_t rx_packets; /**< received packets */
+ uint64_t tx_packets; /**< received packets transmitted */
+ uint64_t fwd_dropped; /**< received packets not forwarded */
+ uint64_t rx_bad_ip_csum ; /**< received packets has bad ip checksum */
+ uint64_t rx_bad_l4_csum ; /**< received packets has bad l4 checksum */
+ uint64_t rx_bad_outer_l4_csum;
/**< received packets has bad outer l4 checksum */
unsigned int gro_times; /**< GRO operation times */
#ifdef RTE_TEST_PMD_RECORD_CORE_CYCLES
struct rte_eth_conf dev_conf; /**< Port configuration. */
struct ether_addr eth_addr; /**< Port ethernet address */
struct rte_eth_stats stats; /**< Last port statistics */
- uint64_t tx_dropped; /**< If no descriptor in TX ring */
- struct fwd_stream *rx_stream; /**< Port RX stream, if unique */
- struct fwd_stream *tx_stream; /**< Port TX stream, if unique */
unsigned int socket_id; /**< For NUMA support */
uint16_t parse_tunnel:1; /**< Parse internal headers */
uint16_t tso_segsz; /**< Segmentation offload MSS for non-tunneled packets. */
uint16_t tunnel_tso_segsz; /**< Segmentation offload MSS for tunneled pkts. */
uint16_t tx_vlan_id;/**< The tag ID */
uint16_t tx_vlan_id_outer;/**< The outer tag ID */
- void *fwd_ctx; /**< Forwarding mode context */
- uint64_t rx_bad_ip_csum; /**< rx pkts with bad ip checksum */
- uint64_t rx_bad_l4_csum; /**< rx pkts with bad l4 checksum */
- uint64_t rx_bad_outer_l4_csum;
- /**< rx pkts with bad outer l4 checksum */
uint8_t tx_queue_stats_mapping_enabled;
uint8_t rx_queue_stats_mapping_enabled;
volatile uint16_t port_status; /**< port started or not */
extern struct fwd_engine * fwd_engines[]; /**< NULL terminated array. */
+extern uint16_t mempool_flags;
+
/**
* Forwarding Configuration
*
extern enum tx_pkt_split tx_pkt_split;
+extern uint8_t txonly_multi_flow;
+
extern uint16_t nb_pkt_per_burst;
extern uint16_t mb_mempool_cache;
extern int8_t rx_pthresh;
struct vxlan_encap_conf {
uint32_t select_ipv4:1;
uint32_t select_vlan:1;
+ uint32_t select_tos_ttl:1;
uint8_t vni[3];
rte_be16_t udp_src;
rte_be16_t udp_dst;
uint8_t ipv6_src[16];
uint8_t ipv6_dst[16];
rte_be16_t vlan_tci;
+ uint8_t ip_tos;
+ uint8_t ip_ttl;
uint8_t eth_src[ETHER_ADDR_LEN];
uint8_t eth_dst[ETHER_ADDR_LEN];
};
char *list_pkt_forwarding_retry_modes(void);
void set_pkt_forwarding_mode(const char *fwd_mode);
void start_packet_forwarding(int with_tx_first);
+void fwd_stats_display(void);
+void fwd_stats_reset(void);
void stop_packet_forwarding(void);
void dev_set_link_up(portid_t pid);
void dev_set_link_down(portid_t pid);