[ofa-general] Re: [PATCHv2] IB/ipoib: S/G and HW checksum support
Michael S. Tsirkin
mst at dev.mellanox.co.il
Wed Sep 5 09:15:23 PDT 2007
> Quoting James Lentini <jlentini at netapp.com>:
> Subject: Re: [PATCHv2] IB/ipoib: S/G and HW checksum support
>
>
>
> On Tue, 4 Sep 2007, Michael S. Tsirkin wrote:
>
> > > Quoting James Lentini <jlentini at netapp.com>:
> > > Subject: Re: [PATCHv2] IB/ipoib: S/G and HW checksum support
> > >
> > >
> > >
> > > On Tue, 4 Sep 2007, Michael S. Tsirkin wrote:
> > >
> > > > > Quoting James Lentini <jlentini at netapp.com>:
> > > > > Subject: Re: [PATCHv2] IB/ipoib: S/G and HW checksum support
> > > > >
> > > > >
> > > > >
> > > > > On Tue, 4 Sep 2007, Jason Gunthorpe wrote:
> > > > >
> > > > > > On Tue, Sep 04, 2007 at 12:11:33PM +0300, Michael S. Tsirkin wrote:
> > > > > >
> > > > > > > I know some people find this approach controversial,
> > > > > > > but from my perspective, this is not worse than e.g.
> > > > > > > SDP which does not have SW checksums pretty much by design.
> > > > > >
> > > > > > This would be alot better in my mind of the option was negotiated as
> > > > > > part of the CM setup process. Otherwise this becomes a network wide
> > > > > > all or nothing kind of feature..
> > > > > >
> > > > > > What if the RXing Linux IB side is acting as a forwarder to ethernet?
> > > > > > It will forward corrupt packets if this option is set, right?
> > > > >
> > > > > So this break all gateway devices?
> > > >
> > > > It won't. The gateway will calculate the checksums.
> > > >
> > > > > How would packets be routed with this change?
> > > >
> > > > As usual.
> > >
> > > A Linux system setup as a router with an IPoIB interface and an
> > > Ethernet interface will work if this feature is turned on?
> >
> > I am yet to test this setup, but yes, it should.
>
> I has this scenario in mind:
>
> A ------- B ------- C
> IPoIB Eth
>
> A and C are Linux hosts, B is a Linux host setup as a router.
>
> If the link between A and B has this checksum change turned on, then
> then TCP connections between A anc C will fail with TCP checksum
> errors.
A to C communication will work if B goes over A->C packets and fills in
the transport checksums before sending the packet to C.
> Technically an IPoIB network with these changes can route IP packets
> to other networks,
I know. Hopefully this will keep working with hw_csum bit set.
> but with the missing transport layer checksums
> the contents are unintelligible.
This is not what I'm aiming for :).
In this setup, the transport checksums could be calculated by B.
I haven't tested this conf yet, hopefully, this can be made to work
without changes to linux networking stack, by assigning CHECKSUM_PARTIAL
to the skb.
--
MST
More information about the general
mailing list