Commit 5ce9ad81 authored by David Wilder's avatar David Wilder Committed by Jakub Kicinski

ibmveth: Switch order of ibmveth_helper calls.

ibmveth_rx_csum_helper() must be called after ibmveth_rx_mss_helper()
as ibmveth_rx_csum_helper() may alter ip and tcp checksum values.

Fixes: 66aa0678 ("ibmveth: Support to enable LSO/CSO for Trunk VEA.")
Signed-off-by: default avatarDavid Wilder <dwilder@us.ibm.com>
Reviewed-by: default avatarThomas Falcon <tlfalcon@linux.ibm.com>
Reviewed-by: default avatarCristobal Forno <cris.forno@ibm.com>
Reviewed-by: default avatarPradeep Satyanarayana <pradeeps@linux.vnet.ibm.com>
Acked-by: default avatarWillem de Bruijn <willemb@google.com>
Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent 2ef813b8
...@@ -1385,16 +1385,16 @@ static int ibmveth_poll(struct napi_struct *napi, int budget) ...@@ -1385,16 +1385,16 @@ static int ibmveth_poll(struct napi_struct *napi, int budget)
skb_put(skb, length); skb_put(skb, length);
skb->protocol = eth_type_trans(skb, netdev); skb->protocol = eth_type_trans(skb, netdev);
if (csum_good) {
skb->ip_summed = CHECKSUM_UNNECESSARY;
ibmveth_rx_csum_helper(skb, adapter);
}
if (length > netdev->mtu + ETH_HLEN) { if (length > netdev->mtu + ETH_HLEN) {
ibmveth_rx_mss_helper(skb, mss, lrg_pkt); ibmveth_rx_mss_helper(skb, mss, lrg_pkt);
adapter->rx_large_packets++; adapter->rx_large_packets++;
} }
if (csum_good) {
skb->ip_summed = CHECKSUM_UNNECESSARY;
ibmveth_rx_csum_helper(skb, adapter);
}
napi_gro_receive(napi, skb); /* send it up */ napi_gro_receive(napi, skb); /* send it up */
netdev->stats.rx_packets++; netdev->stats.rx_packets++;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment