Commit e3a2f334 authored by Antoine Kaufmann's avatar Antoine Kaufmann
Browse files

i40e: improved debug messages

parent f854fc37
...@@ -224,6 +224,7 @@ void queue_admin_tx::cmd_run(void *desc, uint32_t idx, void *data) ...@@ -224,6 +224,7 @@ void queue_admin_tx::cmd_run(void *desc, uint32_t idx, void *data)
memset(&hr, 0, sizeof(hr)); memset(&hr, 0, sizeof(hr));
hr.num_reported = report; hr.num_reported = report;
hr.num_total = cnt; hr.num_total = cnt;
std::cerr << " report=" << report << " cnt=" << cnt << " seid=" << sw->seid << std::endl;
// create temporary contiguous buffer // create temporary contiguous buffer
size_t buflen = sizeof(hr) + sizeof(els[0]) * report; size_t buflen = sizeof(hr) + sizeof(els[0]) * report;
......
...@@ -256,7 +256,7 @@ void lan_queue_rx::packet_received(const void *data, size_t pktlen) ...@@ -256,7 +256,7 @@ void lan_queue_rx::packet_received(const void *data, size_t pktlen)
return; return;
} }
std::cerr << "rxq: packet received" << std::endl; std::cerr << "rxq: packet received didx=" << dcache_first_idx << " cnt=" << dcache_first_cnt << std::endl;
union i40e_32byte_rx_desc rxd; union i40e_32byte_rx_desc rxd;
memset(&rxd, 0, sizeof(rxd)); memset(&rxd, 0, sizeof(rxd));
rxd.wb.qword1.status_error_len |= (1 << I40E_RX_DESC_STATUS_DD_SHIFT); rxd.wb.qword1.status_error_len |= (1 << I40E_RX_DESC_STATUS_DD_SHIFT);
...@@ -312,11 +312,12 @@ void lan_queue_tx::initialize() ...@@ -312,11 +312,12 @@ void lan_queue_tx::initialize()
void lan_queue_tx::desc_fetched(void *desc_buf, uint32_t didx) void lan_queue_tx::desc_fetched(void *desc_buf, uint32_t didx)
{ {
std::cerr << "txq: desc fetched" << std::endl;
struct i40e_tx_desc *desc = reinterpret_cast<struct i40e_tx_desc *>(desc_buf); struct i40e_tx_desc *desc = reinterpret_cast<struct i40e_tx_desc *>(desc_buf);
uint64_t d1 = desc->cmd_type_offset_bsz; uint64_t d1 = desc->cmd_type_offset_bsz;
std::cerr << "txq: desc fetched didx=" << didx << " d1=" << d1 << std::endl;
uint8_t dtype = (d1 & I40E_TXD_QW1_DTYPE_MASK) >> I40E_TXD_QW1_DTYPE_SHIFT; uint8_t dtype = (d1 & I40E_TXD_QW1_DTYPE_MASK) >> I40E_TXD_QW1_DTYPE_SHIFT;
if (dtype == I40E_TX_DESC_DTYPE_DATA) { if (dtype == I40E_TX_DESC_DTYPE_DATA) {
uint16_t len = (d1 & I40E_TXD_QW1_TX_BUF_SZ_MASK) >> uint16_t len = (d1 & I40E_TXD_QW1_TX_BUF_SZ_MASK) >>
...@@ -345,9 +346,9 @@ void lan_queue_tx::desc_fetched(void *desc_buf, uint32_t didx) ...@@ -345,9 +346,9 @@ void lan_queue_tx::desc_fetched(void *desc_buf, uint32_t didx)
void lan_queue_tx::data_fetched(void *desc_buf, uint32_t didx, void *data) void lan_queue_tx::data_fetched(void *desc_buf, uint32_t didx, void *data)
{ {
std::cerr << "txq: data fetched" << std::endl;
struct i40e_tx_desc *desc = reinterpret_cast<struct i40e_tx_desc *>(desc_buf); struct i40e_tx_desc *desc = reinterpret_cast<struct i40e_tx_desc *>(desc_buf);
uint64_t d1 = desc->cmd_type_offset_bsz; uint64_t d1 = desc->cmd_type_offset_bsz;
std::cerr << "txq: data fetched didx=" << didx << " d1=" << d1 << std::endl;
uint16_t pkt_len = (d1 & I40E_TXD_QW1_TX_BUF_SZ_MASK) >> uint16_t pkt_len = (d1 & I40E_TXD_QW1_TX_BUF_SZ_MASK) >>
I40E_TXD_QW1_TX_BUF_SZ_SHIFT; I40E_TXD_QW1_TX_BUF_SZ_SHIFT;
...@@ -364,6 +365,8 @@ void lan_queue_tx::data_fetched(void *desc_buf, uint32_t didx, void *data) ...@@ -364,6 +365,8 @@ void lan_queue_tx::data_fetched(void *desc_buf, uint32_t didx, void *data)
/*uint16_t l4len = (off & I40E_TXD_QW1_L4LEN_MASK) >> /*uint16_t l4len = (off & I40E_TXD_QW1_L4LEN_MASK) >>
I40E_TX_DESC_LENGTH_L4_FC_LEN_SHIFT;*/ I40E_TX_DESC_LENGTH_L4_FC_LEN_SHIFT;*/
std::cerr << " eop=" << eop << " len=" << pkt_len << " pktbuf_len=" << pktbuf_len << std::endl;
// part of a multi-descriptor packet // part of a multi-descriptor packet
if (!eop || pktbuf_len != 0) { if (!eop || pktbuf_len != 0) {
if (pktbuf_len + pkt_len > MTU) { if (pktbuf_len + pkt_len > MTU) {
......
...@@ -32,8 +32,8 @@ void queue_base::trigger_fetch() ...@@ -32,8 +32,8 @@ void queue_base::trigger_fetch()
pending_fetches++; pending_fetches++;
std::cerr << "fetching " << (reg_tail - fetch_head) % len << std::cerr << "fetching: avail=" << (reg_tail - fetch_head) % len <<
" descriptors from " << dma->dma_addr << std::endl; " fhead=" << fetch_head << " from " << dma->dma_addr << std::endl;
std::cerr << "dma = " << dma << std::endl; std::cerr << "dma = " << dma << std::endl;
runner->issue_dma(*dma); runner->issue_dma(*dma);
...@@ -112,6 +112,7 @@ uint32_t queue_base::max_fetch_capacity() ...@@ -112,6 +112,7 @@ uint32_t queue_base::max_fetch_capacity()
void queue_base::desc_done(uint32_t idx) void queue_base::desc_done(uint32_t idx)
{ {
assert(reg_head == idx);
reg_head = (idx + 1) % len; reg_head = (idx + 1) % len;
trigger_fetch(); trigger_fetch();
} }
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment