Messages in this thread | | | Date | Sun, 11 Nov 2012 17:47:55 -0800 (PST) | From | Joseph Gasparakis <> | Subject | Re: [PATCH 3/3] ipgre: capture inner headers during encapsulation |
| |
On Sun, 11 Nov 2012, Dmitry Kravkov wrote:
> 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 > Thanks for catching this Dmitry. Will fix it in v2
| |