> >> This patch assumes that the bnx2x hardware will ignore existing > >> IPv4/v6 header fields for length and checksum as well as the length > >> and checksum fields for outer UDP and GRE headers. > >> > >> I have no means of testing this as I do not have any bnx2x hardware > >> but thought I would submit it as an RFC to see if anyone out there > >> wants to test this and see if this does in fact enable this > >> functionality allowing us to to segment tunneled frames that have an outer > checksum. > >> > >> Signed-off-by: Alexander Duyck <adu...@mirantis.com> > > > > So it took me some [well, a lot] time to reach this, but I've finally gave > > it a try. > > I saw a performance boost with the partial support - Throughput for > > vxlan tunnels with and without udpcsum were almost identical after > > this, whereas without this patch the udpcsum prevented GSO and a > > TCP/IPv4 connection on top of it got roughly half the throughput. > > > > However, I did encounter one oddity I couldn't explain - After I've > > disabled tx-udp_tnl-segmentation via ethtool on the base interface, > > got left with: > > tx-gso-partial: on > > tx-udp_tnl-segmentation: off > > tx-udp_tnl-csum-segmentation: on > > > > When I ran traffic over both vxlan tunnels the one with the udpcsum > > was still Passing gso aggregations to base device to transmit [and the > > throughput was same as before], where's the tunnel without the udpcsum > > showed only MTU-sized packets reaching the base interface for > > transmission [which is what I've expected] > > > > Any idea why that happened? > > So the way they are implemented tx-udp_tnl-segmentation and tx-udp_tnl- > csum-segmentation are treated as two separate features. > The kernel currently gives them the same treatment as NETIF_F_TSO and > NETIF_F_TSO6. You can disable one and the other still functions. > > Now if you disable tx-gso-partial you should expect to see tx-udp_tnl-csum- > segmentation be disabled because it is dependent on the partial GSO offload. > > - Alex
O.k., thanks. Then I'll run some more testing scenarios, and assuming everything works fine I'll re-send this. Alex - should I place you at the 'from' field?