aboutsummaryrefslogtreecommitdiffstats
path: root/src/vnet/srp
diff options
context:
space:
mode:
authorDave Wallace <dwallacelf@gmail.com>2017-10-24 01:32:41 -0400
committerDave Wallace <dwallacelf@gmail.com>2017-10-24 01:32:41 -0400
commit71612d61930e57e7c8ebf9e5647b15a4b23720b2 (patch)
tree3c135af6d40442f5ae9f8397c62080e2b7e3f342 /src/vnet/srp
parent92b0275a364022af6ab828dfac83e38c0117cfe6 (diff)
Add extern to *_main global variable declarations in header files.
- Global variables declared in header files without the use of the 'extern' keword will result in multiple instances of the variable to be created by the compiler -- one for each different source file in which the the header file is included. This results in wasted memory allocated in the BSS segments as well as potentially introducing bugs in the application. Change-Id: I6ef1790b60a0bd9dd3994f8510723decf258b0cc Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Diffstat (limited to 'src/vnet/srp')
-rw-r--r--src/vnet/srp/node.c2
-rw-r--r--src/vnet/srp/srp.h2
2 files changed, 3 insertions, 1 deletions
diff --git a/src/vnet/srp/node.c b/src/vnet/srp/node.c
index 897be254624..9123c4c7735 100644
--- a/src/vnet/srp/node.c
+++ b/src/vnet/srp/node.c
@@ -41,6 +41,8 @@
#include <vnet/ip/ip_packet.h> /* for ip_csum_fold */
#include <vnet/srp/srp.h>
+srp_main_t srp_main;
+
typedef struct {
u8 packet_data[32];
} srp_input_trace_t;
diff --git a/src/vnet/srp/srp.h b/src/vnet/srp/srp.h
index 5288ebe4759..8f59e064c8b 100644
--- a/src/vnet/srp/srp.h
+++ b/src/vnet/srp/srp.h
@@ -169,7 +169,7 @@ srp_ips_link_change (u32 sw_if_index, u32 link_is_up)
void srp_interface_get_interface_config (u32 hw_if_index, srp_interface_config_t * c);
void srp_interface_set_interface_config (u32 hw_if_index, srp_interface_config_t * c);
-srp_main_t srp_main;
+extern srp_main_t srp_main;
always_inline srp_interface_t *
srp_get_interface_from_vnet_hw_interface (u32 hw_if_index)