net: ena: Improve error logging in driver
authorShay Agroskin <shayagr@amazon.com>
Tue, 8 Jun 2021 16:01:11 +0000 (19:01 +0300)
committerDavid S. Miller <davem@davemloft.net>
Tue, 8 Jun 2021 21:41:09 +0000 (14:41 -0700)
Add prints to improve logging of driver's errors.

Signed-off-by: Arthur Kiyanovski <akiyano@amazon.com>
Signed-off-by: Shay Agroskin <shayagr@amazon.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/amazon/ena/ena_eth_com.c

index 2aecd4c3de5985c94595ca0301f57272d4b42cb7..3d6f0a466a9ed48c32915899359ac103b254c1ab 100644 (file)
@@ -154,8 +154,11 @@ static int ena_com_close_bounce_buffer(struct ena_com_io_sq *io_sq)
        if (likely(pkt_ctrl->idx)) {
                rc = ena_com_write_bounce_buffer_to_dev(io_sq,
                                                        pkt_ctrl->curr_bounce_buf);
-               if (unlikely(rc))
+               if (unlikely(rc)) {
+                       netdev_err(ena_com_io_sq_to_ena_dev(io_sq)->net_device,
+                                  "Failed to write bounce buffer to device\n");
                        return rc;
+               }
 
                pkt_ctrl->curr_bounce_buf =
                        ena_com_get_next_bounce_buffer(&io_sq->bounce_buf_ctrl);
@@ -185,8 +188,11 @@ static int ena_com_sq_update_llq_tail(struct ena_com_io_sq *io_sq)
        if (!pkt_ctrl->descs_left_in_line) {
                rc = ena_com_write_bounce_buffer_to_dev(io_sq,
                                                        pkt_ctrl->curr_bounce_buf);
-               if (unlikely(rc))
+               if (unlikely(rc)) {
+                       netdev_err(ena_com_io_sq_to_ena_dev(io_sq)->net_device,
+                                  "Failed to write bounce buffer to device\n");
                        return rc;
+               }
 
                pkt_ctrl->curr_bounce_buf =
                        ena_com_get_next_bounce_buffer(&io_sq->bounce_buf_ctrl);
@@ -406,8 +412,11 @@ int ena_com_prepare_tx(struct ena_com_io_sq *io_sq,
        }
 
        if (unlikely(io_sq->mem_queue_type == ENA_ADMIN_PLACEMENT_POLICY_DEV &&
-                    !buffer_to_push))
+                    !buffer_to_push)) {
+               netdev_err(ena_com_io_sq_to_ena_dev(io_sq)->net_device,
+                          "Push header wasn't provided in LLQ mode\n");
                return -EINVAL;
+       }
 
        rc = ena_com_write_header_to_bounce(io_sq, buffer_to_push, header_len);
        if (unlikely(rc))
@@ -423,6 +432,9 @@ int ena_com_prepare_tx(struct ena_com_io_sq *io_sq,
        /* If the caller doesn't want to send packets */
        if (unlikely(!num_bufs && !header_len)) {
                rc = ena_com_close_bounce_buffer(io_sq);
+               if (rc)
+                       netdev_err(ena_com_io_sq_to_ena_dev(io_sq)->net_device,
+                                  "Failed to write buffers to LLQ\n");
                *nb_hw_desc = io_sq->tail - start_tail;
                return rc;
        }
@@ -482,8 +494,11 @@ int ena_com_prepare_tx(struct ena_com_io_sq *io_sq,
                /* The first desc share the same desc as the header */
                if (likely(i != 0)) {
                        rc = ena_com_sq_update_tail(io_sq);
-                       if (unlikely(rc))
+                       if (unlikely(rc)) {
+                               netdev_err(ena_com_io_sq_to_ena_dev(io_sq)->net_device,
+                                          "Failed to update sq tail\n");
                                return rc;
+                       }
 
                        desc = get_sq_desc(io_sq);
                        if (unlikely(!desc))
@@ -512,8 +527,11 @@ int ena_com_prepare_tx(struct ena_com_io_sq *io_sq,
        desc->len_ctrl |= ENA_ETH_IO_TX_DESC_LAST_MASK;
 
        rc = ena_com_sq_update_tail(io_sq);
-       if (unlikely(rc))
+       if (unlikely(rc)) {
+               netdev_err(ena_com_io_sq_to_ena_dev(io_sq)->net_device,
+                          "Failed to update sq tail of the last descriptor\n");
                return rc;
+       }
 
        rc = ena_com_close_bounce_buffer(io_sq);