Messages in this thread | | | Subject | Re: [PATCH 3/3] ipgre: capture inner headers during encapsulation | From | "Dmitry Kravkov" <> | Date | Sun, 11 Nov 2012 17:18:30 +0200 |
| |
On Thu, 2012-11-08 at 18:18 -0800, Joseph Gasparakis wrote: > > if (skb->ip_summed == CHECKSUM_PARTIAL && > skb_checksum_help(skb)) > @@ -902,6 +903,17 @@ static netdev_tx_t ipgre_tunnel_xmit(struct sk_buff *skb, struct net_device *dev > tunnel->err_count = 0; > } > > + offset = skb->data - skb->head; > + > + skb_reset_inner_mac_header(skb); > + > + if (skb->network_header) > + skb_set_inner_network_header(skb, skb->network_header - offset); > + > + if (skb->transport_header) > + skb_set_inner_transport_header(skb, skb->transport_header - > + offset); > + > max_headroom = LL_RESERVED_SPACE(tdev) + gre_hlen + rt->dst.header_len; > > if (skb_headroom(skb) < max_headroom || skb_shared(skb)||
How it will be useful if skb_checksum_help(skb) will calculate csum? And leaves nothing to offload
| |