mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-30 03:27:44 -04:00
[SK_BUFF]: Introduce tcp_hdr(), remove skb->h.th
Signed-off-by: Arnaldo Carvalho de Melo <[email protected]> Signed-off-by: David S. Miller <[email protected]>
This commit is contained in:
parent
ab6a5bb6b2
commit
aa8223c7bb
23 changed files with 134 additions and 122 deletions
|
|
@ -1298,9 +1298,10 @@ static int atl1_tso(struct atl1_adapter *adapter, struct sk_buff *skb,
|
|||
|
||||
iph->tot_len = 0;
|
||||
iph->check = 0;
|
||||
skb->h.th->check = ~csum_tcpudp_magic(iph->saddr,
|
||||
iph->daddr, 0,
|
||||
IPPROTO_TCP, 0);
|
||||
tcp_hdr(skb)->check = ~csum_tcpudp_magic(iph->saddr,
|
||||
iph->daddr, 0,
|
||||
IPPROTO_TCP,
|
||||
0);
|
||||
ipofst = skb_network_offset(skb);
|
||||
if (ipofst != ENET_HEADER_SIZE) /* 802.3 frame */
|
||||
tso->tsopl |= 1 << TSO_PARAM_ETHTYPE_SHIFT;
|
||||
|
|
|
|||
|
|
@ -4524,7 +4524,7 @@ bnx2_start_xmit(struct sk_buff *skb, struct net_device *dev)
|
|||
vlan_tag_flags |= TX_BD_FLAGS_SW_LSO;
|
||||
|
||||
tcp_opt_len = 0;
|
||||
if (skb->h.th->doff > 5)
|
||||
if (tcp_hdr(skb)->doff > 5)
|
||||
tcp_opt_len = tcp_optlen(skb);
|
||||
|
||||
ip_tcp_len = ip_hdrlen(skb) + sizeof(struct tcphdr);
|
||||
|
|
@ -4532,9 +4532,9 @@ bnx2_start_xmit(struct sk_buff *skb, struct net_device *dev)
|
|||
iph = ip_hdr(skb);
|
||||
iph->check = 0;
|
||||
iph->tot_len = htons(mss + ip_tcp_len + tcp_opt_len);
|
||||
skb->h.th->check = ~csum_tcpudp_magic(iph->saddr, iph->daddr,
|
||||
0, IPPROTO_TCP, 0);
|
||||
|
||||
tcp_hdr(skb)->check = ~csum_tcpudp_magic(iph->saddr,
|
||||
iph->daddr, 0,
|
||||
IPPROTO_TCP, 0);
|
||||
if (tcp_opt_len || (iph->ihl > 5)) {
|
||||
vlan_tag_flags |= ((iph->ihl - 5) +
|
||||
(tcp_opt_len >> 2)) << 8;
|
||||
|
|
|
|||
|
|
@ -1872,7 +1872,7 @@ int t1_start_xmit(struct sk_buff *skb, struct net_device *dev)
|
|||
hdr->opcode = CPL_TX_PKT_LSO;
|
||||
hdr->ip_csum_dis = hdr->l4_csum_dis = 0;
|
||||
hdr->ip_hdr_words = ip_hdr(skb)->ihl;
|
||||
hdr->tcp_hdr_words = skb->h.th->doff;
|
||||
hdr->tcp_hdr_words = tcp_hdr(skb)->doff;
|
||||
hdr->eth_type_mss = htons(MK_ETH_TYPE_MSS(eth_type,
|
||||
skb_shinfo(skb)->gso_size));
|
||||
hdr->len = htonl(skb->len - sizeof(*hdr));
|
||||
|
|
|
|||
|
|
@ -901,7 +901,7 @@ static void write_tx_pkt_wr(struct adapter *adap, struct sk_buff *skb,
|
|||
CPL_ETH_II : CPL_ETH_II_VLAN;
|
||||
tso_info |= V_LSO_ETH_TYPE(eth_type) |
|
||||
V_LSO_IPHDR_WORDS(ip_hdr(skb)->ihl) |
|
||||
V_LSO_TCPHDR_WORDS(skb->h.th->doff);
|
||||
V_LSO_TCPHDR_WORDS(tcp_hdr(skb)->doff);
|
||||
hdr->lso_info = htonl(tso_info);
|
||||
flits = 3;
|
||||
} else {
|
||||
|
|
|
|||
|
|
@ -2893,14 +2893,15 @@ e1000_tso(struct e1000_adapter *adapter, struct e1000_tx_ring *tx_ring,
|
|||
struct iphdr *iph = ip_hdr(skb);
|
||||
iph->tot_len = 0;
|
||||
iph->check = 0;
|
||||
skb->h.th->check = ~csum_tcpudp_magic(iph->saddr,
|
||||
iph->daddr, 0,
|
||||
IPPROTO_TCP, 0);
|
||||
tcp_hdr(skb)->check = ~csum_tcpudp_magic(iph->saddr,
|
||||
iph->daddr, 0,
|
||||
IPPROTO_TCP,
|
||||
0);
|
||||
cmd_length = E1000_TXD_CMD_IP;
|
||||
ipcse = skb_transport_offset(skb) - 1;
|
||||
} else if (skb->protocol == htons(ETH_P_IPV6)) {
|
||||
ipv6_hdr(skb)->payload_len = 0;
|
||||
skb->h.th->check =
|
||||
tcp_hdr(skb)->check =
|
||||
~csum_ipv6_magic(&ipv6_hdr(skb)->saddr,
|
||||
&ipv6_hdr(skb)->daddr,
|
||||
0, IPPROTO_TCP, 0);
|
||||
|
|
@ -2909,7 +2910,7 @@ e1000_tso(struct e1000_adapter *adapter, struct e1000_tx_ring *tx_ring,
|
|||
ipcss = skb_network_offset(skb);
|
||||
ipcso = (void *)&(ip_hdr(skb)->check) - (void *)skb->data;
|
||||
tucss = skb_transport_offset(skb);
|
||||
tucso = (void *)&(skb->h.th->check) - (void *)skb->data;
|
||||
tucso = (void *)&(tcp_hdr(skb)->check) - (void *)skb->data;
|
||||
tucse = 0;
|
||||
|
||||
cmd_length |= (E1000_TXD_CMD_DEXT | E1000_TXD_CMD_TSE |
|
||||
|
|
|
|||
|
|
@ -1426,7 +1426,7 @@ static int ioc3_start_xmit(struct sk_buff *skb, struct net_device *dev)
|
|||
}
|
||||
if (proto == IPPROTO_TCP) {
|
||||
csoff += offsetof(struct tcphdr, check);
|
||||
skb->h.th->check = csum;
|
||||
tcp_hdr(skb)->check = csum;
|
||||
}
|
||||
|
||||
w0 = ETXD_DOCHECKSUM | (csoff << ETXD_CHKOFF_SHIFT);
|
||||
|
|
|
|||
|
|
@ -1195,13 +1195,14 @@ ixgb_tso(struct ixgb_adapter *adapter, struct sk_buff *skb)
|
|||
iph = ip_hdr(skb);
|
||||
iph->tot_len = 0;
|
||||
iph->check = 0;
|
||||
skb->h.th->check = ~csum_tcpudp_magic(iph->saddr, iph->daddr,
|
||||
0, IPPROTO_TCP, 0);
|
||||
tcp_hdr(skb)->check = ~csum_tcpudp_magic(iph->saddr,
|
||||
iph->daddr, 0,
|
||||
IPPROTO_TCP, 0);
|
||||
ipcss = skb_network_offset(skb);
|
||||
ipcso = (void *)&(iph->check) - (void *)skb->data;
|
||||
ipcse = skb_transport_offset(skb) - 1;
|
||||
tucss = skb_transport_offset(skb);
|
||||
tucso = (void *)&(skb->h.th->check) - (void *)skb->data;
|
||||
tucso = (void *)&(tcp_hdr(skb)->check) - (void *)skb->data;
|
||||
tucse = 0;
|
||||
|
||||
i = adapter->tx_ring.next_to_use;
|
||||
|
|
|
|||
|
|
@ -1169,7 +1169,7 @@ static void eth_tx_submit_descs_for_skb(struct mv643xx_private *mp,
|
|||
desc->l4i_chk = udp_hdr(skb)->check;
|
||||
break;
|
||||
case IPPROTO_TCP:
|
||||
desc->l4i_chk = skb->h.th->check;
|
||||
desc->l4i_chk = tcp_hdr(skb)->check;
|
||||
break;
|
||||
default:
|
||||
BUG();
|
||||
|
|
|
|||
|
|
@ -3922,7 +3922,7 @@ static int tg3_start_xmit(struct sk_buff *skb, struct net_device *dev)
|
|||
base_flags |= (TXD_FLAG_CPU_PRE_DMA |
|
||||
TXD_FLAG_CPU_POST_DMA);
|
||||
|
||||
skb->h.th->check = 0;
|
||||
tcp_hdr(skb)->check = 0;
|
||||
|
||||
}
|
||||
else if (skb->ip_summed == CHECKSUM_PARTIAL)
|
||||
|
|
@ -4080,14 +4080,13 @@ static int tg3_start_xmit_dma_bug(struct sk_buff *skb, struct net_device *dev)
|
|||
iph->check = 0;
|
||||
iph->tot_len = htons(mss + hdr_len);
|
||||
if (tp->tg3_flags2 & TG3_FLG2_HW_TSO) {
|
||||
skb->h.th->check = 0;
|
||||
tcp_hdr(skb)->check = 0;
|
||||
base_flags &= ~TXD_FLAG_TCPUDP_CSUM;
|
||||
}
|
||||
else {
|
||||
skb->h.th->check = ~csum_tcpudp_magic(iph->saddr,
|
||||
iph->daddr, 0,
|
||||
IPPROTO_TCP, 0);
|
||||
}
|
||||
} else
|
||||
tcp_hdr(skb)->check = ~csum_tcpudp_magic(iph->saddr,
|
||||
iph->daddr, 0,
|
||||
IPPROTO_TCP,
|
||||
0);
|
||||
|
||||
if ((tp->tg3_flags2 & TG3_FLG2_HW_TSO) ||
|
||||
(GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5705)) {
|
||||
|
|
|
|||
Loading…
Reference in a new issue