Message ID | 1323769253-8760-1-git-send-email-dmitry@broadcom.com |
---|---|
State | Accepted, archived |
Delegated to: | David Miller |
Headers | show |
Le mardi 13 décembre 2011 à 11:40 +0200, Dmitry Kravkov a écrit : > Since commit e52fcb2462ac484e6dd6e68869536609f0216938 newly allocated > skb for small packets are not updated properly and dropped by stack. > > Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com> > Signed-off-by: Eilon Greenstein <eilong@broadcom.com> > > --- > drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c | 22 +++++++++++----------- > 1 files changed, 11 insertions(+), 11 deletions(-) > > diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c > index 477bc97..64f5cf5 100644 > --- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c > +++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c > @@ -731,22 +731,22 @@ reuse_rx: > bnx2x_reuse_rx_data(fp, bd_cons, bd_prod); > goto next_rx; > } > + } > > - skb_put(skb, len); > - skb->protocol = eth_type_trans(skb, bp->dev); > + skb_put(skb, len); > + skb->protocol = eth_type_trans(skb, bp->dev); > > - /* Set Toeplitz hash for a none-LRO skb */ > - skb->rxhash = bnx2x_get_rxhash(bp, cqe_fp); > + /* Set Toeplitz hash for a none-LRO skb */ > + skb->rxhash = bnx2x_get_rxhash(bp, cqe_fp); > > - skb_checksum_none_assert(skb); > + skb_checksum_none_assert(skb); > > - if (bp->dev->features & NETIF_F_RXCSUM) { > + if (bp->dev->features & NETIF_F_RXCSUM) { > > - if (likely(BNX2X_RX_CSUM_OK(cqe))) > - skb->ip_summed = CHECKSUM_UNNECESSARY; > - else > - fp->eth_q_stats.hw_csum_err++; > - } > + if (likely(BNX2X_RX_CSUM_OK(cqe))) > + skb->ip_summed = CHECKSUM_UNNECESSARY; > + else > + fp->eth_q_stats.hw_csum_err++; > } > > skb_record_rx_queue(skb, fp->rx_queue); Ah, sorry for this, thanks for fixing it ! Acked-by: Eric Dumazet <eric.dumazet@gmail.com> -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
From: Eric Dumazet <eric.dumazet@gmail.com> Date: Tue, 13 Dec 2011 10:56:17 +0100 > Le mardi 13 décembre 2011 à 11:40 +0200, Dmitry Kravkov a écrit : >> Since commit e52fcb2462ac484e6dd6e68869536609f0216938 newly allocated >> skb for small packets are not updated properly and dropped by stack. >> >> Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com> >> Signed-off-by: Eilon Greenstein <eilong@broadcom.com> ... > Ah, sorry for this, thanks for fixing it ! > > Acked-by: Eric Dumazet <eric.dumazet@gmail.com> Applied. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c index 477bc97..64f5cf5 100644 --- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c +++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c @@ -731,22 +731,22 @@ reuse_rx: bnx2x_reuse_rx_data(fp, bd_cons, bd_prod); goto next_rx; } + } - skb_put(skb, len); - skb->protocol = eth_type_trans(skb, bp->dev); + skb_put(skb, len); + skb->protocol = eth_type_trans(skb, bp->dev); - /* Set Toeplitz hash for a none-LRO skb */ - skb->rxhash = bnx2x_get_rxhash(bp, cqe_fp); + /* Set Toeplitz hash for a none-LRO skb */ + skb->rxhash = bnx2x_get_rxhash(bp, cqe_fp); - skb_checksum_none_assert(skb); + skb_checksum_none_assert(skb); - if (bp->dev->features & NETIF_F_RXCSUM) { + if (bp->dev->features & NETIF_F_RXCSUM) { - if (likely(BNX2X_RX_CSUM_OK(cqe))) - skb->ip_summed = CHECKSUM_UNNECESSARY; - else - fp->eth_q_stats.hw_csum_err++; - } + if (likely(BNX2X_RX_CSUM_OK(cqe))) + skb->ip_summed = CHECKSUM_UNNECESSARY; + else + fp->eth_q_stats.hw_csum_err++; } skb_record_rx_queue(skb, fp->rx_queue);