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 linux-wireless" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html