From mboxrd@z Thu Jan 1 00:00:00 1970 From: Eric Dumazet Subject: Re: [PATCH net-next 1/3] net: core: let skb_partial_csum_set() set transport header Date: Wed, 27 Mar 2013 07:42:56 -0700 Message-ID: <1364395376.15753.5.camel@edumazet-glaptop> References: <1364375482-7439-1-git-send-email-jasowang@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit Cc: davem@davemloft.net, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, mst@redhat.com, Eric Dumazet To: Jason Wang Return-path: In-Reply-To: <1364375482-7439-1-git-send-email-jasowang@redhat.com> Sender: linux-kernel-owner@vger.kernel.org List-Id: netdev.vger.kernel.org On Wed, 2013-03-27 at 17:11 +0800, Jason Wang wrote: > For untrusted packets with partial checksum, we need to set the transport header > for precise packet length estimation. We can just let skb_pratial_csum_set() to > do this to avoid extra call to skb_flow_dissect() and simplify the caller. > > Cc: Eric Dumazet > Signed-off-by: Jason Wang > --- > net/core/skbuff.c | 1 + > 1 files changed, 1 insertions(+), 0 deletions(-) > > diff --git a/net/core/skbuff.c b/net/core/skbuff.c > index 31c6737..ba64614 100644 > --- a/net/core/skbuff.c > +++ b/net/core/skbuff.c > @@ -3370,6 +3370,7 @@ bool skb_partial_csum_set(struct sk_buff *skb, u16 start, u16 off) > skb->ip_summed = CHECKSUM_PARTIAL; > skb->csum_start = skb_headroom(skb) + start; > skb->csum_offset = off; > + skb_set_transport_header(skb, start); > return true; > } > EXPORT_SYMBOL_GPL(skb_partial_csum_set); Acked-by: Eric Dumazet