From: Toshiaki Makita <toshiaki.makita1@gmail.com>
To: Eric Dumazet <eric.dumazet@gmail.com>,
Toshiaki Makita <makita.toshiaki@lab.ntt.co.jp>
Cc: "David S . Miller" <davem@davemloft.net>,
Patrick McHardy <kaber@trash.net>,
netdev@vger.kernel.org
Subject: Re: [PATCH v2 net-next] vlan: Add GRO support for non hardware accelerated vlan
Date: Tue, 02 Jun 2015 01:03:16 +0900 [thread overview]
Message-ID: <556C8244.1090400@gmail.com> (raw)
In-Reply-To: <1433167957.1895.4.camel@edumazet-glaptop2.roam.corp.google.com>
On 15/06/01 (月) 23:12, Eric Dumazet wrote:
> On Mon, 2015-06-01 at 21:55 +0900, Toshiaki Makita wrote:
>
>> @@ -668,6 +753,9 @@ static int __init vlan_proto_init(void)
>> if (err < 0)
>> goto err5;
>>
>> + for (i = 0; i < ARRAY_SIZE(vlan_packet_offloads); i++)
>> + dev_add_offload(&vlan_packet_offloads[i]);
>> +
>> vlan_ioctl_set(vlan_ioctl_handler);
>> return 0;
>
> My concern about this is :
>
> This might slow down GRO stack for other traffic, if dev_add_offload()
> for vlan offloads is called after
> dev_add_offload(&ip_packet_offload) /
> dev_add_offload(&ipv6_packet_offload)
I didn't have that concern because there are already other similar
offloads (eth, mpls_uc, mpls_mc). But indeed, they and this could slow
down GRO stack.
>
>
> This is because list_add_rcu is used and this inserts in front of the
> offload_base list.
>
> void dev_add_offload(struct packet_offload *po)
> {
> struct list_head *head = &offload_base;
>
> spin_lock(&offload_lock);
> list_add_rcu(&po->list, head);
> spin_unlock(&offload_lock);
> }
>
> Can we ensure offload_base contains a sensible order of expected types ?
Add priority to packet_offload like nf_hook_ops?
Or have dev_add_offload() prioritize IP > IPV6 > others?
Toshiaki Makita
next prev parent reply other threads:[~2015-06-01 16:03 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-06-01 12:55 [PATCH v2 net-next] vlan: Add GRO support for non hardware accelerated vlan Toshiaki Makita
2015-06-01 14:12 ` Eric Dumazet
2015-06-01 16:03 ` Toshiaki Makita [this message]
2015-06-01 16:28 ` Eric Dumazet
2015-06-01 21:56 ` David Miller
2015-06-03 1:09 ` Simon Horman
2015-06-01 23:51 ` David Miller
2015-06-02 1:24 ` Toshiaki Makita
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=556C8244.1090400@gmail.com \
--to=toshiaki.makita1@gmail.com \
--cc=davem@davemloft.net \
--cc=eric.dumazet@gmail.com \
--cc=kaber@trash.net \
--cc=makita.toshiaki@lab.ntt.co.jp \
--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).