summaryrefslogtreecommitdiffstats
path: root/net/tipc/core.h
diff options
context:
space:
mode:
authorJon Paul Maloy <jon.maloy@ericsson.com>2015-05-14 10:46:13 -0400
committerDavid S. Miller <davem@davemloft.net>2015-05-14 12:24:45 -0400
commita6bf70f792963b32e410e5c3d2f96903265b090a (patch)
tree11ca9a3895e3976b9f3ab34b3ce79d077076ae03 /net/tipc/core.h
parent75b44b018eb086fb461aa0351d2ecb1eba684302 (diff)
downloadlinux-stable-a6bf70f792963b32e410e5c3d2f96903265b090a.tar.gz
linux-stable-a6bf70f792963b32e410e5c3d2f96903265b090a.tar.bz2
linux-stable-a6bf70f792963b32e410e5c3d2f96903265b090a.zip
tipc: simplify include dependencies
When we try to add new inline functions in the code, we sometimes run into circular include dependencies. The main problem is that the file core.h, which really should be at the root of the dependency chain, instead is a leaf. I.e., core.h includes a number of header files that themselves should be allowed to include core.h. In reality this is unnecessary, because core.h does not need to know the full signature of any of the structs it refers to, only their type declaration. In this commit, we remove all dependencies from core.h towards any other tipc header file. As a consequence of this change, we can now move the function tipc_own_addr(net) from addr.c to addr.h, and make it inline. There are no functional changes in this commit. Reviewed-by: Erik Hugne <erik.hugne@ericsson.com> Reviewed-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/tipc/core.h')
-rw-r--r--net/tipc/core.h17
1 files changed, 10 insertions, 7 deletions
diff --git a/net/tipc/core.h b/net/tipc/core.h
index 3dc68c7a966d..53e8146b14e0 100644
--- a/net/tipc/core.h
+++ b/net/tipc/core.h
@@ -60,16 +60,19 @@
#include <net/netns/generic.h>
#include <linux/rhashtable.h>
-#include "node.h"
-#include "bearer.h"
-#include "bcast.h"
-#include "netlink.h"
-#include "link.h"
-#include "node.h"
-#include "msg.h"
+struct tipc_node;
+struct tipc_bearer;
+struct tipc_bcbearer;
+struct tipc_bclink;
+struct tipc_link;
+struct tipc_name_table;
+struct tipc_server;
#define TIPC_MOD_VER "2.0.0"
+#define NODE_HTABLE_SIZE 512
+#define MAX_BEARERS 3
+
extern int tipc_net_id __read_mostly;
extern int sysctl_tipc_rmem[3] __read_mostly;
extern int sysctl_tipc_named_timeout __read_mostly;