On Tue, Dec 8, 2015 at 8:03 AM, Edward Cree <ec...@solarflare.com> wrote: > On 07/12/15 17:29, Tom Herbert wrote: >> On Mon, Dec 7, 2015 at 7:39 AM, Edward Cree <ec...@solarflare.com> wrote: >>> 2) Transmit checksums. >> It's analogous to CHECKSUM_COMPLETE, NETIF_F_HW_CSUM works for all >> cases of checksum offload and any combination of protocol layering. > ... until a protocol combination comes along that doesn't allow all but the > innermost checksum to be 0. NETIF_F_HW_CSUM is limited to one checksum per > packet.
So is NETIF_F_IP[V6]_CSUM, again the interface into the driver to offload a checksum is csum_start, csum_offset. Only one checksum can be offloaded at a time. We have no way to tell the driver that there are two checksums in a packet to be offloaded. Good news is that we probably don't need that. Extensible encapsulation protocols can implement Remote Checksum Offload, and this is never an issue on the receive side since CHECKSUM_COMPLETE can be used to validate and arbitrary number of checksums. Tom -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html