aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/chelsio/cxgb4
diff options
context:
space:
mode:
authorPatrick McHardy <kaber@trash.net>2013-04-18 22:04:30 -0400
committerDavid S. Miller <davem@davemloft.net>2013-04-19 14:46:06 -0400
commit86a9bad3ab6b6f858fd4443b48738cabbb6d094c (patch)
tree21d41b1c81e0f3e53ac4004627a8c9588099fea1 /drivers/net/ethernet/chelsio/cxgb4
parent1fd9b1fc310314911f66d2f14a8e4f0ef37bf47b (diff)
net: vlan: add protocol argument to packet tagging functions
Add a protocol argument to the VLAN packet tagging functions. In case of HW tagging, we need that protocol available in the ndo_start_xmit functions, so it is stored in a new field in the skb. The new field fits into a hole (on 64 bit) and doesn't increase the sks's size. Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/chelsio/cxgb4')
-rw-r--r--drivers/net/ethernet/chelsio/cxgb4/sge.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/ethernet/chelsio/cxgb4/sge.c b/drivers/net/ethernet/chelsio/cxgb4/sge.c
index 8b47b253e204..2bfbb206b35a 100644
--- a/drivers/net/ethernet/chelsio/cxgb4/sge.c
+++ b/drivers/net/ethernet/chelsio/cxgb4/sge.c
@@ -1633,7 +1633,7 @@ static void do_gro(struct sge_eth_rxq *rxq, const struct pkt_gl *gl,
1633 skb->rxhash = (__force u32)pkt->rsshdr.hash_val; 1633 skb->rxhash = (__force u32)pkt->rsshdr.hash_val;
1634 1634
1635 if (unlikely(pkt->vlan_ex)) { 1635 if (unlikely(pkt->vlan_ex)) {
1636 __vlan_hwaccel_put_tag(skb, ntohs(pkt->vlan)); 1636 __vlan_hwaccel_put_tag(skb, htons(ETH_P_8021Q), ntohs(pkt->vlan));
1637 rxq->stats.vlan_ex++; 1637 rxq->stats.vlan_ex++;
1638 } 1638 }
1639 ret = napi_gro_frags(&rxq->rspq.napi); 1639 ret = napi_gro_frags(&rxq->rspq.napi);
@@ -1705,7 +1705,7 @@ int t4_ethrx_handler(struct sge_rspq *q, const __be64 *rsp,
1705 skb_checksum_none_assert(skb); 1705 skb_checksum_none_assert(skb);
1706 1706
1707 if (unlikely(pkt->vlan_ex)) { 1707 if (unlikely(pkt->vlan_ex)) {
1708 __vlan_hwaccel_put_tag(skb, ntohs(pkt->vlan)); 1708 __vlan_hwaccel_put_tag(skb, htons(ETH_P_8021Q), ntohs(pkt->vlan));
1709 rxq->stats.vlan_ex++; 1709 rxq->stats.vlan_ex++;
1710 } 1710 }
1711 netif_receive_skb(skb); 1711 netif_receive_skb(skb);