On 2015/10/26 5:02, Emmanuel Grumbach wrote:
> Adding IPv6 for the TSO helper API is trivial:
> * Don't play with the id (which doesn't exist in IPv6)
> * Correctly update the payload_len (don't include the
>   length of the IP header itself)
...
>       memcpy(hdr, skb->data, hdr_len);
> -     iph = (struct iphdr *)(hdr + mac_hdr_len);
> -     iph->id = htons(tso->ip_id);
> -     iph->tot_len = htons(size + hdr_len - mac_hdr_len);
> +     if (skb->protocol == htons(ETH_P_IP)) {

I guess this should be vlan_get_protocol(skb).

> +             struct iphdr *iph = (void *)(hdr + mac_hdr_len);
> +
> +             iph->id = htons(tso->ip_id);
> +             iph->tot_len = htons(size + hdr_len - mac_hdr_len);
> +             tso->ip_id++;
> +     } else if (skb->protocol == htons(ETH_P_IPV6)) {

Likewise.

Toshiaki Makita

--
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

Reply via email to