Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 9 Nov 2012 08:51:46 -0800
From:      Adrian Chadd <adrian@freebsd.org>
To:        Andre Oppermann <andre@freebsd.org>
Cc:        pyunyh@gmail.com, FreeBSD Net <freebsd-net@freebsd.org>, Pyun YongHyeon <yongari@freebsd.org>
Subject:   Re: svn commit: r242739 - stable/9/sys/dev/ti
Message-ID:  <CAJ-Vmo=MeSEx3cSERnzaqCOhLdNxqCQV0yhpQMRcWFLP475zHA@mail.gmail.com>
In-Reply-To: <509CBA0C.3070008@freebsd.org>
References:  <201211080206.qA826RiN054539@svn.freebsd.org> <CAJ-VmomEOPGbLwmOmL0EdenZA7QKbV5P-hAYsTRcwLao2LbAqg@mail.gmail.com> <20121108023858.GA3127@michelle.cdnetworks.com> <CAJ-Vmoma1DJRT8_ezdEpVYrZXak%2B2B4mBHAPxhoUKr0nUrO6YQ@mail.gmail.com> <509BC2E2.4030907@freebsd.org> <CAJ-Vmo=QuP1s=ppnp2u%2BVpuJRbncaHLwi_0ku5=dr9%2BReYp79w@mail.gmail.com> <509C4684.2030102@freebsd.org> <CAJ-VmonUhcNgZojevpjNCZP41VKRZwFY7NM773NiZ9oM3PFOkg@mail.gmail.com> <509CBA0C.3070008@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On 9 November 2012 00:08, Andre Oppermann <andre@freebsd.org> wrote:

> Firewalling doesn't change the packet and no checksum is needed.
> NAT does change the packet and the pesky pseudo-header in the TCP/
> UDP checksum.  However here only the pseudo-header checksum is
> recalculated and reintegrated into the one-complement payload checksum.
> The payload itself is not being looked at, except for protocols that
> do contain IP addresses in their internal commands or such.  There
> the payload is modified.  The same reintegration trick can be used.
> In the majority of cases these packets are very small though and
> the entire checksum is simply recalculated.  As the packets are very
> small no fragmentation is occuring.
> The IPv4 header checksum is never ever a problem and always works.
>
> Can we please put this to rest now.

Andre,

I'm assuming that Pyun fixed a real bug that he really did see. My day
job is dealing with these kinds of corner cases with embedded hardware
that does offload-y type stuff.
So yes, I'd really like to know what's going on under the hood and fix it.

You may be able to make it all go away with a bunch of logical
reasoning but if it weren't a problem, Pyun would've never stumbled
across it and had to disable checksumming.

I'll chase this up privately with him and see what was really going on.

Thanks,



Adrian



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJ-Vmo=MeSEx3cSERnzaqCOhLdNxqCQV0yhpQMRcWFLP475zHA>