diff options
author | Chris Luke <chrisy@flirble.org> | 2016-05-02 16:00:43 -0400 |
---|---|---|
committer | Damjan Marion <damarion@cisco.com> | 2016-05-02 22:03:07 +0000 |
commit | 633134b78afc8e343ae1eb4a62b668dd6bd31164 (patch) | |
tree | d6a7baf10cd74e1e7a748aedaf5e7ec480ca80c8 | |
parent | 047bf8494950eb9404598b2d9315718c3e3e81a2 (diff) |
VPP-31 Fix linker issue with new sr-replicate
Changes in gnu ld in Ubuntu 16.04 tickles an issue with the
declaration pattern used for vlib_node_registration when,
as is the case in sr_replicate.c, the forward declaration is
seen by the linker in a module before the real declaration.
This patch uses the "extern" keyword in the forward declaration
to avoid this issue and removes extra forward declarations.
Change-Id: I075b0cd9932404e1360c7f9aec7114003d110f60
Signed-off-by: Chris Luke <chrisy@flirble.org>
-rw-r--r-- | vnet/vnet/sr/sr.h | 2 | ||||
-rw-r--r-- | vnet/vnet/sr/sr_replicate.c | 4 |
2 files changed, 1 insertions, 5 deletions
diff --git a/vnet/vnet/sr/sr.h b/vnet/vnet/sr/sr.h index 321f49a7321..448d29318ce 100644 --- a/vnet/vnet/sr/sr.h +++ b/vnet/vnet/sr/sr.h @@ -188,7 +188,7 @@ format_function_t format_ip6_sr_header_with_length; vlib_node_registration_t ip6_sr_input_node; #if DPDK > 0 -vlib_node_registration_t sr_replicate_node; +extern vlib_node_registration_t sr_replicate_node; #endif /* DPDK */ int ip6_sr_add_del_tunnel (ip6_sr_add_del_tunnel_args_t * a); diff --git a/vnet/vnet/sr/sr_replicate.c b/vnet/vnet/sr/sr_replicate.c index 7486d7c60a1..80d04ba6d75 100644 --- a/vnet/vnet/sr/sr_replicate.c +++ b/vnet/vnet/sr/sr_replicate.c @@ -36,8 +36,6 @@ typedef struct { sr_replicate_main_t sr_replicate_main; -vlib_node_registration_t sr_replicate_node; - typedef struct { ip6_address_t src, dst; @@ -76,8 +74,6 @@ static u8 * format_sr_replicate_trace (u8 * s, va_list * args) } -vlib_node_registration_t sr_replicate_node; - #define foreach_sr_replicate_error \ _(REPLICATED, "sr packets replicated") \ _(NO_BUFFERS, "error allocating buffers for replicas") \ |