dpdk: tx/rx burst function description refactor
DPDK provides two new APIs to retrieve information about the Tx/Rx packet burst mode: rte_eth_tx_burst_mode_get rte_eth_rx_burst_mode_get This patch leverages these two APIs to describe the tx/rx mode. Currently, Intel X710/E810 and Mellanox Mlx5 support the new APIs. For NICs that don't support the new APIs, still use the original way to print their tx/rx function name Type: refactor Signed-off-by: Chenmin Sun <chenmin.sun@intel.com> Change-Id: Ibe47f5debe3b3f17f462fbf9834394e22845cc08
This commit is contained in:

committed by
Damjan Marion

parent
30fa5d1e17
commit
f3468975d8
@ -568,6 +568,7 @@ format_dpdk_device (u8 * s, va_list * args)
|
|||||||
u32 indent = format_get_indent (s);
|
u32 indent = format_get_indent (s);
|
||||||
f64 now = vlib_time_now (dm->vlib_main);
|
f64 now = vlib_time_now (dm->vlib_main);
|
||||||
struct rte_eth_dev_info di;
|
struct rte_eth_dev_info di;
|
||||||
|
struct rte_eth_burst_mode mode;
|
||||||
|
|
||||||
dpdk_update_counters (xd, now);
|
dpdk_update_counters (xd, now);
|
||||||
dpdk_update_link_state (xd, now);
|
dpdk_update_link_state (xd, now);
|
||||||
@ -666,12 +667,36 @@ format_dpdk_device (u8 * s, va_list * args)
|
|||||||
format_dpdk_rss_hf_name, di.flow_type_rss_offloads,
|
format_dpdk_rss_hf_name, di.flow_type_rss_offloads,
|
||||||
format_white_space, indent + 2,
|
format_white_space, indent + 2,
|
||||||
format_dpdk_rss_hf_name, rss_conf.rss_hf);
|
format_dpdk_rss_hf_name, rss_conf.rss_hf);
|
||||||
s = format (s, "%Utx burst function: %s\n",
|
|
||||||
format_white_space, indent + 2,
|
if (rte_eth_tx_burst_mode_get (xd->port_id, 0, &mode) == 0)
|
||||||
ptr2sname (rte_eth_devices[xd->port_id].tx_pkt_burst));
|
{
|
||||||
s = format (s, "%Urx burst function: %s\n",
|
s = format (s, "%Utx burst mode: %s%s\n",
|
||||||
format_white_space, indent + 2,
|
format_white_space, indent + 2,
|
||||||
ptr2sname (rte_eth_devices[xd->port_id].rx_pkt_burst));
|
mode.info,
|
||||||
|
mode.flags & RTE_ETH_BURST_FLAG_PER_QUEUE ?
|
||||||
|
" (per queue)" : "");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
s = format (s, "%Utx burst function: %s\n",
|
||||||
|
format_white_space, indent + 2,
|
||||||
|
ptr2sname (rte_eth_devices[xd->port_id].tx_pkt_burst));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (rte_eth_rx_burst_mode_get (xd->port_id, 0, &mode) == 0)
|
||||||
|
{
|
||||||
|
s = format (s, "%Urx burst mode: %s%s\n",
|
||||||
|
format_white_space, indent + 2,
|
||||||
|
mode.info,
|
||||||
|
mode.flags & RTE_ETH_BURST_FLAG_PER_QUEUE ?
|
||||||
|
" (per queue)" : "");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
s = format (s, "%Urx burst function: %s\n",
|
||||||
|
format_white_space, indent + 2,
|
||||||
|
ptr2sname (rte_eth_devices[xd->port_id].rx_pkt_burst));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* $$$ MIB counters */
|
/* $$$ MIB counters */
|
||||||
|
Reference in New Issue
Block a user