diff options
author | David S. Miller <davem@davemloft.net> | 2014-07-30 16:25:49 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-07-30 16:25:49 -0400 |
commit | f139c74a8df071217dcd63f3ef06ae7be7071c4d (patch) | |
tree | 5711f695577a18a06dbcd0101956e97b388ffa1a /drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c | |
parent | bd695a5f0ccf7b38982c426d86055ff3591c9b5b (diff) | |
parent | 26bcd8b72563b4c54892c4c2a409f6656fb8ae8b (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c')
-rw-r--r-- | drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c index dca1236dd1cd..4e6c82e20224 100644 --- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c +++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c | |||
@@ -227,6 +227,12 @@ static u16 bnx2x_free_tx_pkt(struct bnx2x *bp, struct bnx2x_fp_txdata *txdata, | |||
227 | --nbd; | 227 | --nbd; |
228 | bd_idx = TX_BD(NEXT_TX_IDX(bd_idx)); | 228 | bd_idx = TX_BD(NEXT_TX_IDX(bd_idx)); |
229 | 229 | ||
230 | if (tx_buf->flags & BNX2X_HAS_SECOND_PBD) { | ||
231 | /* Skip second parse bd... */ | ||
232 | --nbd; | ||
233 | bd_idx = TX_BD(NEXT_TX_IDX(bd_idx)); | ||
234 | } | ||
235 | |||
230 | /* TSO headers+data bds share a common mapping. See bnx2x_tx_split() */ | 236 | /* TSO headers+data bds share a common mapping. See bnx2x_tx_split() */ |
231 | if (tx_buf->flags & BNX2X_TSO_SPLIT_BD) { | 237 | if (tx_buf->flags & BNX2X_TSO_SPLIT_BD) { |
232 | tx_data_bd = &txdata->tx_desc_ring[bd_idx].reg_bd; | 238 | tx_data_bd = &txdata->tx_desc_ring[bd_idx].reg_bd; |
@@ -3902,6 +3908,9 @@ netdev_tx_t bnx2x_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
3902 | /* set encapsulation flag in start BD */ | 3908 | /* set encapsulation flag in start BD */ |
3903 | SET_FLAG(tx_start_bd->general_data, | 3909 | SET_FLAG(tx_start_bd->general_data, |
3904 | ETH_TX_START_BD_TUNNEL_EXIST, 1); | 3910 | ETH_TX_START_BD_TUNNEL_EXIST, 1); |
3911 | |||
3912 | tx_buf->flags |= BNX2X_HAS_SECOND_PBD; | ||
3913 | |||
3905 | nbd++; | 3914 | nbd++; |
3906 | } else if (xmit_type & XMIT_CSUM) { | 3915 | } else if (xmit_type & XMIT_CSUM) { |
3907 | /* Set PBD in checksum offload case w/o encapsulation */ | 3916 | /* Set PBD in checksum offload case w/o encapsulation */ |