Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 09 Nov 2012 18:33:59 +0100
From:      Andre Oppermann <andre@freebsd.org>
To:        Adrian Chadd <adrian@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:  <509D3E87.9020701@freebsd.org>
In-Reply-To: <CAJ-Vmo=MeSEx3cSERnzaqCOhLdNxqCQV0yhpQMRcWFLP475zHA@mail.gmail.com>
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> <CAJ-Vmo=MeSEx3cSERnzaqCOhLdNxqCQV0yhpQMRcWFLP475zHA@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 09.11.2012 17:51, Adrian Chadd wrote:
> 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.

There isn't anything to fix other than removing a poorly supported
and implemented feature.  Nothings breaks if it goes away.

> 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 found the problem and wanted to remove this particular mis-feature
from the stack.  To do that he removed it from two drivers, one of them
very old with no known users.

-- 
Andre

> 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?509D3E87.9020701>