From: Anders Berg <anders.b...@intel.com>

Change the log messages used in the RX path to be rate limited to avoid
excessive log outputs in overload situations.

Signed-off-by: Anders Berg <anders.b...@intel.com>
---
 drivers/net/ethernet/lsi/lsi_acp_net.c | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/drivers/net/ethernet/lsi/lsi_acp_net.c 
b/drivers/net/ethernet/lsi/lsi_acp_net.c
index 69dcbc9..b20e5fa 100644
--- a/drivers/net/ethernet/lsi/lsi_acp_net.c
+++ b/drivers/net/ethernet/lsi/lsi_acp_net.c
@@ -685,8 +685,9 @@ static void lsinet_rx_packet(struct net_device *dev)
        sk_buff = dev_alloc_skb(LSINET_MAX_MTU);
 
        if ((struct sk_buff *)0 == sk_buff) {
-               pr_err("%s: dev_alloc_skb() failed! Dropping packet.\n",
-                      LSI_DRV_NAME);
+               pr_info_ratelimited("%s: No buffer, packet dropped.\n",
+                                   LSI_DRV_NAME);
+               pdata->stats.rx_dropped++;
                return;
        }
 
@@ -701,8 +702,7 @@ static void lsinet_rx_packet(struct net_device *dev)
        while (0 < queue_initialized(queue, pdata->rx_tail_copy,
                                     pdata->rx_num_desc)) {
 
-               if (skb_tailroom(sk_buff) >= descriptor.pdu_length)
-               {
+               if (skb_tailroom(sk_buff) >= descriptor.pdu_length) {
                        unsigned char *buffer;
                        buffer = skb_put(sk_buff, descriptor.pdu_length);
                        memcpy((void *)buffer,
@@ -710,11 +710,11 @@ static void lsinet_rx_packet(struct net_device *dev)
                                 pdata->dma_alloc_offset_rx),
                               descriptor.pdu_length);
                } else {
-                       pr_err("%s: PDU overrun (len %u/%u, err %d)\n",
-                              LSI_DRV_NAME,
-                              descriptor.pdu_length,
-                              bytes_copied,
-                              descriptor.error);
+                       pr_err_ratelimited("%s: PDU overrun (%u/%u, %d)\n",
+                                          LSI_DRV_NAME,
+                                          descriptor.pdu_length,
+                                          bytes_copied,
+                                          descriptor.error);
                }
                bytes_copied += descriptor.pdu_length;
                descriptor.data_transfer_length = pdata->rx_buf_per_desc;
-- 
1.8.1.4

-- 
_______________________________________________
linux-yocto mailing list
linux-yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/linux-yocto

Reply via email to