[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAADnVQLxX4LGFfqd6x+krfEMB57y_o80xW_3brkPvEJueDNWVg@mail.gmail.com>
Date: Tue, 30 Sep 2014 09:58:32 -0700
From: Alexei Starovoitov <alexei.starovoitov@...il.com>
To: Tom Herbert <therbert@...gle.com>
Cc: Yuval Mintz <Yuval.Mintz@...gic.com>,
netdev <netdev@...r.kernel.org>
Subject: Re: How exactly does CHECKSUM_COMPLETE works?
On Tue, Sep 30, 2014 at 7:59 AM, Tom Herbert <therbert@...gle.com> wrote:
>
>> So, to summarize my questions -
>> 1. What should a driver set as the SKBs csum value when passing CHECKSUM_COMPLETE?
>
> This ones complete checksum of the Ethernet payload (start of IP
> header to the end of the packet).
I think it's confusing to describe CHECKSUM_COMPLETE this way.
It is such only because driver pulls eth header before passing skb to stack.
CHECKSUM_COMPLETE should cover the whole packet. If there are multiple
vlan headers in front of IP they should be part of csum, since not all
drivers may
have hw offloading for vlan. The most simplistic HW would compute csum over
the whole packet including eth header and driver will do
eth_type_trans+skb_postpull_rcsum
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists