Subject: Re: [PATCH 3/3] virtio_net: Fix skb->csum_start computation

From: Rusty Russell <[email-masked]>
Date: Thu, 29 May 2008 17:31:16 +1000

On Tuesday 27 May 2008 21:20:47 Mark McLoughlin wrote:
> hdr->csum_start is the offset from the start of the ethernet
> header to the transport layer checksum field. skb->csum_start
> is the offset from skb->head.
>
> skb_partial_csum_set() assumes that skb->data points to the
> ethernet header - i.e. it computes skb->csum_start by adding
> the headroom to hdr->csum_start.
>
> Since eth_type_trans() skb_pull()s the ethernet header,
> skb_partial_csum_set() should be called before
> eth_type_trans().

As should the rx_bytes += skb->len.  Thanks for this!

Applied (and 1/3, the typo patch).

I'll backport this to -stable, as well.

Thanks,
Rusty.