diff options
author | Neale Ranns <nranns@cisco.com> | 2016-11-15 09:46:51 +0000 |
---|---|---|
committer | Damjan Marion <dmarion.lists@gmail.com> | 2016-11-22 21:26:55 +0000 |
commit | 177bbdcd8fa4e7621c5bdd3afd8c6e74b603e096 (patch) | |
tree | cf234b5bf8d79dac6a43570a903a11de44e26497 /vnet/vnet/gre/node.c | |
parent | 7afe9e38269a30682a5e392b0e876e18d1465c31 (diff) |
GRE tests and fixes
Change-Id: I234240e9bdd4b69ad64a17b1449ae1e81c0edaca
Signed-off-by: Neale Ranns <nranns@cisco.com>
Diffstat (limited to 'vnet/vnet/gre/node.c')
-rw-r--r-- | vnet/vnet/gre/node.c | 21 |
1 files changed, 2 insertions, 19 deletions
diff --git a/vnet/vnet/gre/node.c b/vnet/vnet/gre/node.c index 556f1a81..86f7a6ee 100644 --- a/vnet/vnet/gre/node.c +++ b/vnet/vnet/gre/node.c @@ -68,12 +68,10 @@ gre_input (vlib_main_t * vm, vlib_frame_t * from_frame) { gre_main_t * gm = &gre_main; - ip4_main_t * ip4m = &ip4_main; gre_input_runtime_t * rt = (void *) node->runtime_data; __attribute__((unused)) u32 n_left_from, next_index, * from, * to_next; u64 cached_tunnel_key = (u64) ~0; u32 cached_tunnel_sw_if_index = 0, tunnel_sw_if_index = 0; - u32 cached_tunnel_fib_index = 0, tunnel_fib_index; u32 cpu_index = os_get_cpu_number(); u32 len; @@ -193,16 +191,12 @@ gre_input (vlib_main_t * vm, hi = vnet_get_hw_interface (gm->vnet_main, t->hw_if_index); tunnel_sw_if_index = hi->sw_if_index; - tunnel_fib_index = vec_elt (ip4m->fib_index_by_sw_if_index, - tunnel_sw_if_index); cached_tunnel_sw_if_index = tunnel_sw_if_index; - cached_tunnel_fib_index = tunnel_fib_index; } else { tunnel_sw_if_index = cached_tunnel_sw_if_index; - tunnel_fib_index = cached_tunnel_fib_index; } } else @@ -218,7 +212,6 @@ gre_input (vlib_main_t * vm, 1 /* packets */, len /* bytes */); - vnet_buffer(b0)->sw_if_index[VLIB_TX] = tunnel_fib_index; vnet_buffer(b0)->sw_if_index[VLIB_RX] = tunnel_sw_if_index; drop0: @@ -247,16 +240,12 @@ drop0: hi = vnet_get_hw_interface (gm->vnet_main, t->hw_if_index); tunnel_sw_if_index = hi->sw_if_index; - tunnel_fib_index = vec_elt (ip4m->fib_index_by_sw_if_index, - tunnel_sw_if_index); cached_tunnel_sw_if_index = tunnel_sw_if_index; - cached_tunnel_fib_index = tunnel_fib_index; } else { tunnel_sw_if_index = cached_tunnel_sw_if_index; - tunnel_fib_index = cached_tunnel_fib_index; } } else @@ -272,7 +261,6 @@ drop0: 1 /* packets */, len /* bytes */); - vnet_buffer(b1)->sw_if_index[VLIB_TX] = tunnel_fib_index; vnet_buffer(b1)->sw_if_index[VLIB_RX] = tunnel_sw_if_index; drop1: @@ -280,7 +268,7 @@ drop1: { gre_rx_trace_t *tr = vlib_add_trace (vm, node, b0, sizeof (*tr)); - tr->tunnel_id = ~0; + tr->tunnel_id = tunnel_sw_if_index; tr->length = ip0->length; tr->src.as_u32 = ip0->src_address.as_u32; tr->dst.as_u32 = ip0->dst_address.as_u32; @@ -290,7 +278,7 @@ drop1: { gre_rx_trace_t *tr = vlib_add_trace (vm, node, b1, sizeof (*tr)); - tr->tunnel_id = ~0; + tr->tunnel_id = tunnel_sw_if_index; tr->length = ip1->length; tr->src.as_u32 = ip1->src_address.as_u32; tr->dst.as_u32 = ip1->dst_address.as_u32; @@ -374,16 +362,12 @@ drop1: hi = vnet_get_hw_interface (gm->vnet_main, t->hw_if_index); tunnel_sw_if_index = hi->sw_if_index; - tunnel_fib_index = vec_elt (ip4m->fib_index_by_sw_if_index, - tunnel_sw_if_index); cached_tunnel_sw_if_index = tunnel_sw_if_index; - cached_tunnel_fib_index = tunnel_fib_index; } else { tunnel_sw_if_index = cached_tunnel_sw_if_index; - tunnel_fib_index = cached_tunnel_fib_index; } } else @@ -399,7 +383,6 @@ drop1: 1 /* packets */, len /* bytes */); - vnet_buffer(b0)->sw_if_index[VLIB_TX] = tunnel_fib_index; vnet_buffer(b0)->sw_if_index[VLIB_RX] = tunnel_sw_if_index; drop: |