Kirill Korotaev <[EMAIL PROTECTED]> 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 [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html