On Fri, 09 May 2014 23:49:45 +0200 Olivier MATZ <olivier.matz at 6wind.com> wrote:
> Hi Stephen, > > On 05/09/2014 07:04 PM, Stephen Hemminger wrote: > > I would also like to propose changing the checksum offload flags. > > Many devices can indicate good checksum in some cases but can't test > > for many other types of packets. By changing the flags to be: > > PKT_RX_L4_CKSUM_GOOD and PKT_RX_IP_CKSUM_GOOD > > > > It is then possible to support devices where some cases (IPv4 + TCP) > > are supported but others are not. > > I agree. That's also what I'm talking about in the commit log of > the patch 08/11. > > If there is not much rework for all the patches, I think it's feasible > to include this kind of modification in the v2 of this series. > > Regards, > Olivier > There are three checksum states: 1. Known good 2. Known bad 3. Can't tell Current choice of flags makes handling #3 impossible. If you change it to CKSUM_GOOD then 1 => GOOD, 2 => not GOOD, 3 => not GOOD. And for case #3 the software can validate it. For most cases IP checksum offload is meaning less anyway because the IP header fits in a single cache line, and the cost to checksum is minimal.