[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <m1lk8127yg.fsf@ebiederm.dsl.xmission.com>
Date: Mon, 10 Dec 2007 21:04:07 -0700
From: ebiederm@...ssion.com (Eric W. Biederman)
To: Kirill Korotaev <dev@...ru>
Cc: Daniel Lezcano <dlezcano@...ibm.com>, containers@...ts.osdl.org,
"Denis V. Lunev" <den@...nvz.org>, herbert@...dor.apana.org.au,
davem@...emloft.net, netdev@...r.kernel.org
Subject: Re: [PATCH 2.6.25] netns: struct net content re-work
Kirill Korotaev <dev@...ru> writes:
> Daniel Lezcano wrote:
>> Denis V. Lunev wrote:
>>
>>>Recently David Miller and Herbert Xu pointed out that struct net becomes
>>>overbloated and un-maintainable. There are two solutions:
>>>- provide a pointer to a network subsystem definition from struct net.
>>> This costs an additional dereferrence
>>>- place sub-system definition into the structure itself. This will speedup
>>> run-time access at the cost of recompilation time
>>>
>>>The second approach looks better for us.
>>
>>
>> Yes, we do not need/want a pointer in this structure and add more
>> dereference in the network code.
If it does go that way we just carefully pass around a properly
typed structure in that subsystem to reduce the cost. Still
it would be nice not to need to add the extra pointer.
>>>index b62e31f..f60e1ce 100644
>>>--- a/include/net/net_namespace.h
>>>+++ b/include/net/net_namespace.h
>>>@@ -8,6 +8,8 @@
>>> #include <linux/workqueue.h>
>>> #include <linux/list.h>
>>>
>>>+#include <net/netns/unix.h>
>>>+
>>> struct proc_dir_entry;
>>> struct net_device;
>>> struct sock;
>>>@@ -46,8 +48,7 @@ struct net {
>>> struct hlist_head packet_sklist;
>>>
>>> /* unix sockets */
>>>- int sysctl_unix_max_dgram_qlen;
>>>- struct ctl_table_header *unix_ctl;
>>>+ struct netns_unix unx;
>>
>>
>> Can you change this from unx to unix ?
>
> no, it won't compile. Guess why :)
Hmm. It looks like it is a #define somewhere gcc?
Eric
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists