ipsec ip tcp l2: multiarch nodes cannot be declared as static
Credits to ray.kinsella@intel.com who spotted the issue and identified root cause. Type: fix Change-Id: I4afe74c47769484309f6aebca2de56ad32c8041f Signed-off-by: Damjan Marion <damarion@cisco.com>
This commit is contained in:

committed by
Florin Coras

parent
dd0cc9ec3d
commit
d770cfc962
@@ -187,6 +187,7 @@ static void __vlib_rm_node_registration_##x (void) \
|
||||
__VA_ARGS__ vlib_node_registration_t x
|
||||
#else
|
||||
#define VLIB_REGISTER_NODE(x,...) \
|
||||
STATIC_ASSERT (sizeof(# __VA_ARGS__) != 7,"node " #x " must not be declared as static"); \
|
||||
static __clib_unused vlib_node_registration_t __clib_unused_##x
|
||||
#endif
|
||||
|
||||
|
@@ -1317,7 +1317,7 @@ interface_tx_node_fn (vlib_main_t * vm, vlib_node_runtime_t * node,
|
||||
}
|
||||
|
||||
/* *INDENT-OFF* */
|
||||
VLIB_REGISTER_NODE (interface_tx, static) = {
|
||||
VLIB_REGISTER_NODE (interface_tx) = {
|
||||
.function = interface_tx_node_fn,
|
||||
.name = "interface-tx",
|
||||
.vector_size = sizeof (u32),
|
||||
|
@@ -1526,7 +1526,7 @@ ip4_reass_walk_expired (vlib_main_t * vm,
|
||||
}
|
||||
|
||||
/* *INDENT-OFF* */
|
||||
VLIB_REGISTER_NODE (ip4_reass_expire_node, static) = {
|
||||
VLIB_REGISTER_NODE (ip4_reass_expire_node) = {
|
||||
.function = ip4_reass_walk_expired,
|
||||
.type = VLIB_NODE_TYPE_PROCESS,
|
||||
.name = "ip4-reassembly-expire-walk",
|
||||
|
@@ -1530,7 +1530,7 @@ ip6_reass_walk_expired (vlib_main_t * vm,
|
||||
}
|
||||
|
||||
/* *INDENT-OFF* */
|
||||
VLIB_REGISTER_NODE (ip6_reass_expire_node, static) = {
|
||||
VLIB_REGISTER_NODE (ip6_reass_expire_node) = {
|
||||
.function = ip6_reass_walk_expired,
|
||||
.format_trace = format_ip6_reass_trace,
|
||||
.type = VLIB_NODE_TYPE_PROCESS,
|
||||
|
@@ -162,7 +162,7 @@ ipsec6_input_protect_policy_match (ipsec_spd_t * spd,
|
||||
return 0;
|
||||
}
|
||||
|
||||
static vlib_node_registration_t ipsec4_input_node;
|
||||
extern vlib_node_registration_t ipsec4_input_node;
|
||||
|
||||
VLIB_NODE_FN (ipsec4_input_node) (vlib_main_t * vm,
|
||||
vlib_node_runtime_t * node,
|
||||
@@ -351,7 +351,7 @@ VLIB_NODE_FN (ipsec4_input_node) (vlib_main_t * vm,
|
||||
|
||||
|
||||
/* *INDENT-OFF* */
|
||||
VLIB_REGISTER_NODE (ipsec4_input_node,static) = {
|
||||
VLIB_REGISTER_NODE (ipsec4_input_node) = {
|
||||
.name = "ipsec4-input-feature",
|
||||
.vector_size = sizeof (u32),
|
||||
.format_trace = format_ipsec_input_trace,
|
||||
@@ -367,7 +367,7 @@ VLIB_REGISTER_NODE (ipsec4_input_node,static) = {
|
||||
};
|
||||
/* *INDENT-ON* */
|
||||
|
||||
static vlib_node_registration_t ipsec6_input_node;
|
||||
extern vlib_node_registration_t ipsec6_input_node;
|
||||
|
||||
|
||||
VLIB_NODE_FN (ipsec6_input_node) (vlib_main_t * vm,
|
||||
@@ -523,7 +523,7 @@ VLIB_NODE_FN (ipsec6_input_node) (vlib_main_t * vm,
|
||||
|
||||
|
||||
/* *INDENT-OFF* */
|
||||
VLIB_REGISTER_NODE (ipsec6_input_node,static) = {
|
||||
VLIB_REGISTER_NODE (ipsec6_input_node) = {
|
||||
.name = "ipsec6-input-feature",
|
||||
.vector_size = sizeof (u32),
|
||||
.format_trace = format_ipsec_input_trace,
|
||||
|
@@ -92,7 +92,7 @@ l2fwd_main_t l2fwd_main;
|
||||
extern l2fwd_main_t l2fwd_main;
|
||||
#endif
|
||||
|
||||
static vlib_node_registration_t l2fwd_node;
|
||||
extern vlib_node_registration_t l2fwd_node;
|
||||
|
||||
#define foreach_l2fwd_error \
|
||||
_(L2FWD, "L2 forward packets") \
|
||||
@@ -412,7 +412,7 @@ VLIB_NODE_FN (l2fwd_node) (vlib_main_t * vm,
|
||||
}
|
||||
|
||||
/* *INDENT-OFF* */
|
||||
VLIB_REGISTER_NODE (l2fwd_node,static) = {
|
||||
VLIB_REGISTER_NODE (l2fwd_node) = {
|
||||
.name = "l2-fwd",
|
||||
.vector_size = sizeof (u32),
|
||||
.format_trace = format_l2fwd_trace,
|
||||
|
@@ -74,7 +74,7 @@ format_l2learn_trace (u8 * s, va_list * args)
|
||||
return s;
|
||||
}
|
||||
|
||||
static vlib_node_registration_t l2learn_node;
|
||||
extern vlib_node_registration_t l2learn_node;
|
||||
|
||||
#define foreach_l2learn_error \
|
||||
_(L2LEARN, "L2 learn packets") \
|
||||
@@ -427,7 +427,7 @@ VLIB_NODE_FN (l2learn_node) (vlib_main_t * vm,
|
||||
}
|
||||
|
||||
/* *INDENT-OFF* */
|
||||
VLIB_REGISTER_NODE (l2learn_node,static) = {
|
||||
VLIB_REGISTER_NODE (l2learn_node) = {
|
||||
.name = "l2-learn",
|
||||
.vector_size = sizeof (u32),
|
||||
.format_trace = format_l2learn_trace,
|
||||
|
@@ -51,7 +51,7 @@ format_l2_patch_trace (u8 * s, va_list * args)
|
||||
|
||||
static l2_patch_main_t l2_patch_main;
|
||||
|
||||
static vlib_node_registration_t l2_patch_node;
|
||||
extern vlib_node_registration_t l2_patch_node;
|
||||
|
||||
#define foreach_l2_patch_error \
|
||||
_(PATCHED, "L2 patch packets") \
|
||||
@@ -204,7 +204,7 @@ VLIB_NODE_FN (l2_patch_node) (vlib_main_t * vm,
|
||||
}
|
||||
|
||||
/* *INDENT-OFF* */
|
||||
VLIB_REGISTER_NODE (l2_patch_node, static) = {
|
||||
VLIB_REGISTER_NODE (l2_patch_node) = {
|
||||
.name = "l2-patch",
|
||||
.vector_size = sizeof (u32),
|
||||
.format_trace = format_l2_patch_trace,
|
||||
|
@@ -52,7 +52,7 @@ format_syn_filter4_trace (u8 * s, va_list * args)
|
||||
return s;
|
||||
}
|
||||
|
||||
static vlib_node_registration_t syn_filter4_node;
|
||||
extern vlib_node_registration_t syn_filter4_node;
|
||||
|
||||
#define foreach_syn_filter_error \
|
||||
_(THROTTLED, "TCP SYN packet throttle drops") \
|
||||
@@ -400,7 +400,7 @@ VLIB_NODE_FN (syn_filter4_node) (vlib_main_t * vm,
|
||||
}
|
||||
|
||||
/* *INDENT-OFF* */
|
||||
VLIB_REGISTER_NODE (syn_filter4_node, static) =
|
||||
VLIB_REGISTER_NODE (syn_filter4_node) =
|
||||
{
|
||||
.name = "syn-filter-4",
|
||||
.vector_size = sizeof (u32),
|
||||
|
Reference in New Issue
Block a user