From: Toshiaki Makita <makita.toshiaki@lab.ntt.co.jp>
To: "Grumbach, Emmanuel" <emmanuel.grumbach@intel.com>,
"netdev@vger.kernel.org" <netdev@vger.kernel.org>
Cc: "linux-wireless@vger.kernel.org" <linux-wireless@vger.kernel.org>,
"egrumbach@gmail.com" <egrumbach@gmail.com>
Subject: Re: [PATCH v2] net: tso: add support for IPv6
Date: Mon, 26 Oct 2015 17:13:24 +0900 [thread overview]
Message-ID: <562DE0A4.80100@lab.ntt.co.jp> (raw)
In-Reply-To: <0BA3FCBA62E2DC44AF3030971E174FB32E8B07E2@hasmsx107.ger.corp.intel.com>
On 2015/10/26 16:47, Grumbach, Emmanuel wrote:
> On 10/26/2015 06:03 AM, Toshiaki Makita wrote:
>> 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).
>
> I truly don't know. I guess we could have VLANs, but I'd need to check
> how the packet would look like after it exits mac80211.
I don't know much about mac80211.
What I see is that mvneta has TSO in vlan_features and it uses
tso_build_hdr(). When vlan device is used, we cannot access network
protocol by skb->protocol without HW vlan acceleration.
So it looks like this change corrupts TSO functionality on mvneta.
> If we need that, I'll likely do this check once in tso_start() and add a
> variable to struct tso_t.
I'm not sure if an additional variable is needed.
At least, skb_network_offset()/ip_hdr() should correctly handle (skip)
vlan headers.
Toshiaki Makita
next prev parent reply other threads:[~2015-10-26 8:13 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-25 19:58 [PATCH] net: tso: add support for IPv6 Emmanuel Grumbach
2015-10-25 20:02 ` [PATCH v2] " Emmanuel Grumbach
2015-10-26 4:03 ` Toshiaki Makita
2015-10-26 7:47 ` Grumbach, Emmanuel
2015-10-26 8:13 ` Toshiaki Makita [this message]
2015-10-26 8:17 ` Toshiaki Makita
2015-10-26 8:17 ` Grumbach, Emmanuel
2015-10-25 22:34 ` [PATCH] " Sergei Shtylyov
2015-10-26 8:31 ` [PATCH v3] " Emmanuel Grumbach
2015-10-26 14:56 ` Eric Dumazet
2015-10-27 5:24 ` David Miller
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=562DE0A4.80100@lab.ntt.co.jp \
--to=makita.toshiaki@lab.ntt.co.jp \
--cc=egrumbach@gmail.com \
--cc=emmanuel.grumbach@intel.com \
--cc=linux-wireless@vger.kernel.org \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).