X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvnet%2Fvxlan-gpe%2Fdecap.c;h=29a043fe9d4fc6d0e857a54f617904f169c5e740;hb=067cd6229a47ea3ba8b59a2a04090e80afb5bd2c;hp=151ffa3fcc96c9bebcbed9051d1a83c392c68cd4;hpb=6f8273aec1fa3f3d597b090871cc7ac301d7e014;p=vpp.git diff --git a/src/vnet/vxlan-gpe/decap.c b/src/vnet/vxlan-gpe/decap.c index 151ffa3fcc9..29a043fe9d4 100644 --- a/src/vnet/vxlan-gpe/decap.c +++ b/src/vnet/vxlan-gpe/decap.c @@ -117,7 +117,7 @@ vxlan_gpe_input (vlib_main_t * vm, vxlan4_gpe_tunnel_key_t last_key4; vxlan6_gpe_tunnel_key_t last_key6; u32 pkts_decapsulated = 0; - u32 thread_index = vlib_get_thread_index (); + u32 thread_index = vm->thread_index; u32 stats_sw_if_index, stats_n_packets, stats_n_bytes; if (is_ip4) @@ -338,6 +338,9 @@ vxlan_gpe_input (vlib_main_t * vm, /* Required to make the l2 tag push / pop code work on l2 subifs */ vnet_update_l2_len (b0); + /* Set packet input sw_if_index to unicast VXLAN tunnel for learning */ + vnet_buffer (b0)->sw_if_index[VLIB_RX] = t0->sw_if_index; + /** * ip[46] lookup in the configured FIB */ @@ -426,6 +429,9 @@ vxlan_gpe_input (vlib_main_t * vm, /* Required to make the l2 tag push / pop code work on l2 subifs */ vnet_update_l2_len (b1); + /* Set packet input sw_if_index to unicast VXLAN tunnel for learning */ + vnet_buffer (b1)->sw_if_index[VLIB_RX] = t1->sw_if_index; + /* * ip[46] lookup in the configured FIB */ @@ -595,6 +601,9 @@ vxlan_gpe_input (vlib_main_t * vm, /* Required to make the l2 tag push / pop code work on l2 subifs */ vnet_update_l2_len (b0); + /* Set packet input sw_if_index to unicast VXLAN tunnel for learning */ + vnet_buffer (b0)->sw_if_index[VLIB_RX] = t0->sw_if_index; + /* * ip[46] lookup in the configured FIB */