int cnt_xstats, idx_xstat;
struct rte_eth_xstat_name *xstats_names;
+ if (port_id_is_invalid(port_id, ENABLED_WARN)) {
+ print_valid_ports();
+ return;
+ }
printf("###### NIC extended statistics for port %-2d\n", port_id);
if (!rte_eth_dev_is_valid_port(port_id)) {
printf("Error: Invalid port number %i\n", port_id);
{
int ret;
+ if (port_id_is_invalid(port_id, ENABLED_WARN)) {
+ print_valid_ports();
+ return;
+ }
ret = rte_eth_xstats_reset(port_id);
if (ret != 0) {
printf("%s: Error: failed to reset xstats (port %u): %s",
nic_stats_mapping_border, nic_stats_mapping_border);
}
-static void
-burst_mode_options_display(uint64_t options)
-{
- int offset;
-
- while (options != 0) {
- offset = rte_bsf64(options);
-
- printf(" %s",
- rte_eth_burst_mode_option_name(1ULL << offset));
-
- options &= ~(1ULL << offset);
- }
-}
-
void
rx_queue_infos_display(portid_t port_id, uint16_t queue_id)
{
(qinfo.scattered_rx != 0) ? "on" : "off");
printf("\nNumber of RXDs: %hu", qinfo.nb_desc);
- if (rte_eth_rx_burst_mode_get(port_id, queue_id, &mode) == 0) {
- printf("\nBurst mode:");
- burst_mode_options_display(mode.options);
- }
+ if (rte_eth_rx_burst_mode_get(port_id, queue_id, &mode) == 0)
+ printf("\nBurst mode: %s%s",
+ mode.info,
+ mode.flags & RTE_ETH_BURST_FLAG_PER_QUEUE ?
+ " (per queue)" : "");
printf("\n");
}
(qinfo.conf.tx_deferred_start != 0) ? "on" : "off");
printf("\nNumber of TXDs: %hu", qinfo.nb_desc);
- if (rte_eth_tx_burst_mode_get(port_id, queue_id, &mode) == 0) {
- printf("\nBurst mode:");
- burst_mode_options_display(mode.options);
- }
+ if (rte_eth_tx_burst_mode_get(port_id, queue_id, &mode) == 0)
+ printf("\nBurst mode: %s%s",
+ mode.info,
+ mode.flags & RTE_ETH_BURST_FLAG_PER_QUEUE ?
+ " (per queue)" : "");
printf("\n");
}
printf("Minimum size of RX buffer: %u\n", dev_info.min_rx_bufsize);
printf("Maximum configurable length of RX packet: %u\n",
dev_info.max_rx_pktlen);
+ printf("Maximum configurable size of LRO aggregated packet: %u\n",
+ dev_info.max_lro_pkt_size);
if (dev_info.max_vfs)
printf("Maximum number of VFs: %u\n", dev_info.max_vfs);
if (dev_info.max_vmdq_pools)