diff mbox series

[net-next,7/8] net: bcmgenet: Be drop monitor friendly while re-allocating headroom

Message ID 1576616549-39097-8-git-send-email-opendmb@gmail.com
State Changes Requested
Delegated to: David Miller
Headers show
Series net: bcmgenet: Turn on offloads by default | expand

Commit Message

Doug Berger Dec. 17, 2019, 9:02 p.m. UTC
During bcmgenet_put_tx_csum() make sure we differentiate a SKB
headroom re-allocation failure from the normal swap and replace
path.

Signed-off-by: Doug Berger <opendmb@gmail.com>
---
 drivers/net/ethernet/broadcom/genet/bcmgenet.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Florian Fainelli Dec. 17, 2019, 11 p.m. UTC | #1
On 12/17/19 1:02 PM, Doug Berger wrote:
> During bcmgenet_put_tx_csum() make sure we differentiate a SKB
> headroom re-allocation failure from the normal swap and replace
> path.
> 
> Signed-off-by: Doug Berger <opendmb@gmail.com>

Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
diff mbox series

Patch

diff --git a/drivers/net/ethernet/broadcom/genet/bcmgenet.c b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
index b751fa76d0b0..0280e76bb60f 100644
--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
@@ -1499,11 +1499,12 @@  static struct sk_buff *bcmgenet_put_tx_csum(struct net_device *dev,
 		 * enough headroom for us to insert 64B status block.
 		 */
 		new_skb = skb_realloc_headroom(skb, sizeof(*status));
-		dev_kfree_skb(skb);
 		if (!new_skb) {
+			dev_kfree_skb_any(skb);
 			dev->stats.tx_dropped++;
 			return NULL;
 		}
+		dev_consume_skb_any(skb);
 		skb = new_skb;
 	}