[dpdk-dev] net/ena: traffic lock
Rajesh Kumar
rajeshthepro at gmail.com
Tue Dec 22 10:37:18 CET 2020
Dpdk: 19.11
Driver: ena
During longevity(after 24+ hrs) testing at 10Gbps, one of tx-queue is
getting into unrecoverable state ( its not able to find enough
tx-descriptor nor its freeing up).
So for every tx-burst, eth_ena_xmit_pkts() neither finds free tx-descriptor
nor able to free txd (ena_com_tx_comp_req_id_get() is always returning
ENA_COM_TRY_AGAIN).
We see eth_ena_xmit_pkts() has been refactored in latest LTS version, is
there any related issue got fixed ? Can you help
(gdb) p *(struct ena_ring *) rte_eth_devices[2].data->tx_queues[5]
$14 = {
next_to_use = 4979,
next_to_clean = 3958,
type = ENA_RING_TYPE_TX,
tx_mem_queue_type = ENA_ADMIN_PLACEMENT_POLICY_DEV,
{
empty_tx_reqs = 0x11e406b00,
empty_rx_reqs = 0x11e406b00
},
{
tx_buffer_info = 0x11d2dfc80,
rx_buffer_info = 0x11d2dfc80
},
rx_refill_buffer = 0x0,
ring_size = 1024,
ena_com_io_cq = 0x11e40e640,
ena_com_io_sq = 0x11e4168c0,
ena_bufs = {{
len = 0,
req_id = 0
} <repeats 17 times>},
mb_pool = 0x0,
port_id = 2,
id = 5,
tx_max_header_size = 96 '`',
configured = 1,
push_buf_intermediate_buf = 0x11e406a00 "",
adapter = 0x11e40e040,
offloads = 2,
sgl_size = 17,
{
rx_stats = {
cnt = 4979,
bytes = 417580,
refill_partial = 35426,
bad_csum = 0,
mbuf_alloc_fail = 0,
bad_desc_num = 38603,
---Type <return> to continue, or q <return> to quit---
bad_req_id = 3178
},
tx_stats = {
cnt = 4979,
bytes = 417580,
prepare_ctx_err = 35426, ß Errors
linearize = 0,
linearize_failed = 0,
tx_poll = 38603,
doorbells = 3178,
bad_req_id = 0,
available_desc = 2 <<-- No free descriptor
}
},
numa_socket_id = 0
}
Thanks,
*-Rajesh*
More information about the dev
mailing list