diff options
author | Dawid Gorecki <dgr@semihalf.com> | 2022-06-10 09:18:07 +0000 |
---|---|---|
committer | Marcin Wojtas <mw@FreeBSD.org> | 2022-07-26 19:30:14 +0000 |
commit | 274af2948a31cc7564447b13a26f1f41ce6f7e06 (patch) | |
tree | 6fee101ad73338615476f972e20cfbaaf4249c8c | |
parent | 963a1b06d9b758c75a62b1e3f20723548572dc50 (diff) | |
download | src-274af2948a31cc7564447b13a26f1f41ce6f7e06.tar.gz src-274af2948a31cc7564447b13a26f1f41ce6f7e06.zip |
ena: Extend debug prints for invalid req_id resets
Print information about qid if req_id is invalid. Add information about
qid and req_id if mbuf is invalid.
Obtained from: Semihalf
MFC after: 2 weeks
Sponsored by: Amazon, Inc.
(cherry picked from commit a9c39b031fe89a6414174e3db82da6548d7fff0f)
-rw-r--r-- | sys/dev/ena/ena_datapath.c | 7 | ||||
-rw-r--r-- | sys/dev/ena/ena_netmap.c | 3 |
2 files changed, 7 insertions, 3 deletions
diff --git a/sys/dev/ena/ena_datapath.c b/sys/dev/ena/ena_datapath.c index 8d4621947e03..6c18a4f5c1f9 100644 --- a/sys/dev/ena/ena_datapath.c +++ b/sys/dev/ena/ena_datapath.c @@ -212,7 +212,8 @@ ena_get_tx_req_id(struct ena_ring *tx_ring, struct ena_com_io_cq *io_cq, return (EAGAIN); if (unlikely(rc != 0)) { - ena_log(adapter->pdev, ERR, "Invalid req_id: %hu\n", *req_id); + ena_log(adapter->pdev, ERR, "Invalid req_id %hu in qid %hu\n", + *req_id, tx_ring->qid); counter_u64_add(tx_ring->tx_stats.bad_req_id, 1); goto err; } @@ -220,7 +221,9 @@ ena_get_tx_req_id(struct ena_ring *tx_ring, struct ena_com_io_cq *io_cq, if (tx_ring->tx_buffer_info[*req_id].mbuf != NULL) return (0); - ena_log(adapter->pdev, ERR, "tx_info doesn't have valid mbuf\n"); + ena_log(adapter->pdev, ERR, + "tx_info doesn't have valid mbuf. qid %hu req_id %hu\n", + tx_ring->qid, *req_id); err: ena_trigger_reset(adapter, ENA_REGS_RESET_INV_TX_REQ_ID); diff --git a/sys/dev/ena/ena_netmap.c b/sys/dev/ena/ena_netmap.c index e9511b033fd3..476926da373d 100644 --- a/sys/dev/ena/ena_netmap.c +++ b/sys/dev/ena/ena_netmap.c @@ -884,7 +884,8 @@ validate_tx_req_id(struct ena_ring *tx_ring, uint16_t req_id) if (likely(req_id < tx_ring->ring_size)) return (0); - ena_log_nm(adapter->pdev, WARN, "Invalid req_id: %hu\n", req_id); + ena_log_nm(adapter->pdev, WARN, "Invalid req_id %hu in qid %hu\n", + req_id, tx_ring->qid); counter_u64_add(tx_ring->tx_stats.bad_req_id, 1); ena_trigger_reset(adapter, ENA_REGS_RESET_INV_TX_REQ_ID); |