Patch "net: bcmgenet: suppress warnings on failed Rx SKB allocations" has been added to the 4.9-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    net: bcmgenet: suppress warnings on failed Rx SKB allocations

to the 4.9-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     net-bcmgenet-suppress-warnings-on-failed-rx-skb-allo.patch
and it can be found in the queue-4.9 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 010c608d6bfd03a96c0f9668046fe0461a6f19e0
Author: Doug Berger <opendmb@xxxxxxxxx>
Date:   Thu Apr 23 16:02:11 2020 -0700

    net: bcmgenet: suppress warnings on failed Rx SKB allocations
    
    [ Upstream commit ecaeceb8a8a145d93c7e136f170238229165348f ]
    
    The driver is designed to drop Rx packets and reclaim the buffers
    when an allocation fails, and the network interface needs to safely
    handle this packet loss. Therefore, an allocation failure of Rx
    SKBs is relatively benign.
    
    However, the output of the warning message occurs with a high
    scheduling priority that can cause excessive jitter/latency for
    other high priority processing.
    
    This commit suppresses the warning messages to prevent scheduling
    problems while retaining the failure count in the statistics of
    the network interface.
    
    Signed-off-by: Doug Berger <opendmb@xxxxxxxxx>
    Acked-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
    Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/net/ethernet/broadcom/genet/bcmgenet.c b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
index a234044805977..5d4189c94718c 100644
--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
@@ -1596,7 +1596,8 @@ static struct sk_buff *bcmgenet_rx_refill(struct bcmgenet_priv *priv,
 	dma_addr_t mapping;
 
 	/* Allocate a new Rx skb */
-	skb = netdev_alloc_skb(priv->dev, priv->rx_buf_len + SKB_ALIGNMENT);
+	skb = __netdev_alloc_skb(priv->dev, priv->rx_buf_len + SKB_ALIGNMENT,
+				 GFP_ATOMIC | __GFP_NOWARN);
 	if (!skb) {
 		priv->mib.alloc_rx_buff_failed++;
 		netif_err(priv, rx_err, priv->dev,



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux