From: ebiederm@xmission.com (Eric W. Biederman)
To: Patrick McHardy <kaber@trash.net>
Cc: David Miller <davem@davemloft.net>,
netdev@vger.kernel.org, Daniel Lezcano <daniel.lezcano@free.fr>,
David Lamparter <equinox@diac24.net>
Subject: Re: [PATCH RFC] netns: keep vlan slaves on master netns move
Date: Mon, 27 Sep 2010 09:23:32 -0700 [thread overview]
Message-ID: <m1fwwvqhob.fsf@fess.ebiederm.org> (raw)
In-Reply-To: <4C9363CB.7050302@trash.net> (Patrick McHardy's message of "Fri, 17 Sep 2010 14:49:15 +0200")
Patrick McHardy <kaber@trash.net> writes:
> Am 15.09.2010 04:10, schrieb Eric W. Biederman:
>>
>> Reviewed-by: "Eric W. Biederman" <ebiederm@xmission.com>
>>
>> My inclination is that the best way to handle this is to would be to
>> push the device deletion for vlan and macvlan devices into the device
>> core, where we could get the advantage of batched deletions.
>
> We've added batched deletion to both about a year ago, what exactly
> is the problem?
My problem is that while the both have dellink implemented we
don't really batch their deletes as best we can.
For macvlan when the underlying device is unregistered we delete
each macvlan device one by one.
For vlans we do batch the deletes, but not in the same batch as
the underlying device.
>> Right
>> now vlan and macvlan devices are the only devices I know of that cause
>> other devices to be removed during unregister, so removing that
>> specialness seems reasonable.
>
> Actually all devices can cause this when used as a lower device by
> vlan or macvlan. Both vlan and macvlan are useless without a lower
> device, so I don't see why we shouldn't remove them when the lower
> device is unregistered.
I definitely think we should remove the devices when the lower device
is destroyed/removed. However unregistered is a slightly different
concept, and arguably macvlan and vlan devices are much more intimately
connected to their underlying device than that.
What I meant is we should implement the deletion differently. By doing
something like having a list of all derived devices for a device, that
we could walk and call dellink on from rollback_registered_many. In
theory that could destroy a whole pile of macvlan and vlan devices with
various different stackings one on the other all in the same batch.
Eric
next prev parent reply other threads:[~2010-09-27 16:23 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-08-24 11:50 [PATCH RFC] netns: keep vlan slaves on master netns move David Lamparter
2010-08-24 17:00 ` Daniel Lezcano
2010-08-24 19:14 ` Eric W. Biederman
2010-08-25 11:52 ` [PATCH RFC] netns: introduce NETREG_NETNS_MOVING reg_state David Lamparter
2010-08-25 13:03 ` Daniel Lezcano
2010-08-25 13:52 ` David Lamparter
2010-08-25 17:39 ` Eric W. Biederman
2010-08-26 8:21 ` David Lamparter
2010-09-13 11:43 ` [PATCH RFC] netns: keep vlan slaves on master netns move David Lamparter
2010-09-15 2:10 ` Eric W. Biederman
2010-09-17 12:49 ` Patrick McHardy
2010-09-27 16:23 ` Eric W. Biederman [this message]
2010-09-17 13:22 ` [PATCH] " David Lamparter
2010-09-17 17:56 ` David Miller
2010-09-15 6:47 ` [PATCH RFC] " Daniel Lezcano
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=m1fwwvqhob.fsf@fess.ebiederm.org \
--to=ebiederm@xmission.com \
--cc=daniel.lezcano@free.fr \
--cc=davem@davemloft.net \
--cc=equinox@diac24.net \
--cc=kaber@trash.net \
--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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.