• Tom Herbert's avatar
    net: Add driver helper functions to determine checksum offloadability · 6ae23ad3
    Tom Herbert authored
    Add skb_csum_offload_chk driver helper function to determine if a
    device with limited checksum offload capabilities is able to offload the
    checksum for a given packet.
    
    This patch includes:
      - The skb_csum_offload_chk function. Returns true if checksum is
        offloadable, else false. Optionally, in the case that the checksum
        is not offloable, the function can call skb_checksum_help to resolve
        the checksum. skb_csum_offload_chk also returns whether the checksum
        refers to an encapsulated checksum.
      - Definition of skb_csum_offl_spec structure that caller uses to
        indicate rules about what it can offload (e.g. IPv4/v6, TCP/UDP only,
        whether encapsulated checksums can be offloaded, whether checksum with
        IPv6 extension headers can be offloaded).
      - Ancilary functions called skb_csum_offload_chk_help,
        skb_csum_off_chk_help_cmn, skb_csum_off_chk_help_cmn_v4_only.
    Signed-off-by: default avatarTom Herbert <tom@herbertland.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    6ae23ad3
dev.c 200 KB