[lkml]   [2008]   [Dec]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [PATCH] lro: IP fragment checking
    Ben Hutchings wrote:
    > On Mon, 2008-12-01 at 19:02 -0500, Andrew Gallatin wrote:
    >> Ben Hutchings wrote:
    >>> On Mon, 2008-12-01 at 16:53 -0500, Andrew Gallatin wrote:
    >>>> David Miller wrote:
    >>>>> From: Andrew Gallatin <>
    >>>>> Date: Mon, 01 Dec 2008 12:50:15 -0500
    >>>>>> As to whether or not to do it in the drivers/hardware or in the
    >>>>>> LRO code, I favor doing it in the LRO code just so that it is not
    >>>>>> missed in some driver.
    >>>>> Then there is no point in the hardware doing the check, if
    >>>>> we're going to check it anyways.
    >>>>> That's part of my point about why this check doesn't belong
    >>>>> here.
    >>>> What hardware does an explicit check for fragmentation?
    >>> Any that implements TCP/UDP checksumming properly.
    >> How many do?
    > Good question. ;-)
    >>>> In most cases, aren't we just relying on the hardware checksum
    >>>> to be wrong on fragmented packets? That works 99.999% of the time,
    >>>> but the TCP checksum is pretty weak, and it is possible to
    >>>> have a fragmented packet where the first fragment has the same
    >>>> checksum as the entire packet.
    >>> [...]
    >>> If your hardware/firmware wrongly claims to be able to verify the
    >>> TCP/UDP checksum for an IP fragment, it seems to me you should deal with
    >>> that in your driver or fix the firmware.
    >> We do partial checksums.
    > So you should check for IP fragmentation in your get_frag_header() along
    > with all the other checks you've got to do.

    Indeed, and that is the patch I intend to submit if the fragment
    check in inet_lro is rejected. I still think the check belongs
    in the inet lro code though, and I'm worried it is being rejected
    for the wrong reasons..


     \ /
      Last update: 2008-12-02 15:45    [W:0.024 / U:2.172 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site