From 50a852c19dbf40a4564d33c2878285552b593427 Mon Sep 17 00:00:00 2001 From: Jeff Shaw Date: Mon, 9 Oct 2017 10:02:44 -0700 Subject: [router] Set VLIB_RX metadata to valid sw_if_index In normal cases, some multicast frames from the control plane are dropped by VPP before being sent. We were not setting the VLIB_RX interface to a valid sw_if_index, causing a segmentation fault when updating counters in the process_drop node. Change-Id: I950158b6c36c9056ee024d2524099db03bffbf35 Signed-off-by: Jeff Shaw --- router/router/tap_inject_node.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/router/router/tap_inject_node.c b/router/router/tap_inject_node.c index 5429846..a7e46ce 100644 --- a/router/router/tap_inject_node.c +++ b/router/router/tap_inject_node.c @@ -237,7 +237,7 @@ tap_rx (vlib_main_t * vm, vlib_node_runtime_t * node, vlib_frame_t * f, int fd) b = vlib_get_buffer (vm, bi[0]); - vnet_buffer (b)->sw_if_index[VLIB_RX] = ~0; + vnet_buffer (b)->sw_if_index[VLIB_RX] = sw_if_index; vnet_buffer (b)->sw_if_index[VLIB_TX] = sw_if_index; n_bytes_left = n_bytes - VLIB_BUFFER_DATA_SIZE; -- cgit 1.2.3-korg