[Devel] [PATCH 10/12] L2 network namespace: playing with pass-through device

Vlad Yasevich vladislav.yasevich at hp.com
Tue Dec 12 06:52:11 PST 2006


Dmitry Mishin wrote:
> On Tuesday 12 December 2006 17:19, Daniel Lezcano wrote:
>> Dmitry Mishin wrote:
>>
>>>>>> Why do yo need to have a child list and sibling list ?
>>>>> Because of the level2<->level3 hierarchy, for example.
>>>> This hierarchy doesn't exist with ns->parent ? Do you have an example
>>>> when the hierarchy should be used ? I mean when we need to browse from
>>>> l2 -> l3 ?
>>> For example, to check that new ifaddr is already used by child l3 namespace.
>> The devinet isolation does already do that, you can not add a new ifaddr 
>> if it already exists. Do you have another example ?
> Could devinet isolation provide ifaddrs list with namespaces?

I hope the answer is yes...  It seems to me that we do way to many lookups like this:

+	rcu_read_lock();
+	in_dev = __in_dev_get_rcu(dev);
+	if (!in_dev)
+		goto no_in_dev;
+
+	for_ifa(in_dev) {

in the proposed L3 code.

> What will be with child namespaces if you decide to destroy parent namespace?
> If we decide to destroy them, than how we could get their list?

I think they should be destroyed as well.  This is where the child_list will/should be used.

However, I don't see a need for sibling_list until interface migration is done.

-vlad



More information about the Containers mailing list