diff options
author | Dave Barach <dave@barachs.net> | 2018-11-13 16:34:13 -0500 |
---|---|---|
committer | Florin Coras <florin.coras@gmail.com> | 2018-11-14 15:54:01 +0000 |
commit | 178cf493d009995b28fdf220f04c98860ff79a9b (patch) | |
tree | 097c1be82b8f6fa9bc04b9b1e193158e2e4997eb /src/plugins/nsh/nsh.c | |
parent | 6917b94f2146aa51195a6a2a1ccd8416a1d74bf3 (diff) |
Remove c-11 memcpy checks from perf-critical code
Change-Id: Id4f37f5d4a03160572954a416efa1ef9b3d79ad1
Signed-off-by: Dave Barach <dave@barachs.net>
Diffstat (limited to 'src/plugins/nsh/nsh.c')
-rw-r--r-- | src/plugins/nsh/nsh.c | 48 |
1 files changed, 24 insertions, 24 deletions
diff --git a/src/plugins/nsh/nsh.c b/src/plugins/nsh/nsh.c index d9b625cda04..b293b85db8a 100644 --- a/src/plugins/nsh/nsh.c +++ b/src/plugins/nsh/nsh.c @@ -1771,13 +1771,13 @@ nsh_input_map (vlib_main_t * vm, else if (node_type == NSH_AWARE_VNF_PROXY_TYPE) { /* Push dummy Eth header */ - clib_memcpy (dummy_eth0.dst_address, dummy_dst_address, 6); - clib_memcpy (dummy_eth0.src_address, dummy_src_address, 6); + clib_memcpy_fast (dummy_eth0.dst_address, dummy_dst_address, 6); + clib_memcpy_fast (dummy_eth0.src_address, dummy_src_address, 6); dummy_eth0.type = 0x0800; vlib_buffer_advance (b0, -(word) sizeof (ethernet_header_t)); hdr0 = vlib_buffer_get_current (b0); - clib_memcpy (hdr0, &dummy_eth0, - (word) sizeof (ethernet_header_t)); + clib_memcpy_fast (hdr0, &dummy_eth0, + (word) sizeof (ethernet_header_t)); sw_if_index0 = vnet_buffer (b0)->sw_if_index[VLIB_TX]; nsp_nsi0 = nm->tunnel_index_by_sw_if_index[sw_if_index0]; @@ -1880,7 +1880,7 @@ nsh_input_map (vlib_main_t * vm, /* Push new NSH header */ vlib_buffer_advance (b0, -(word) encap_hdr_len0); hdr0 = vlib_buffer_get_current (b0); - clib_memcpy (hdr0, encap_hdr0, (word) encap_hdr_len0); + clib_memcpy_fast (hdr0, encap_hdr0, (word) encap_hdr_len0); goto trace0; } @@ -1892,7 +1892,7 @@ nsh_input_map (vlib_main_t * vm, /* Push new NSH header */ vlib_buffer_advance (b0, -(word) encap_hdr_len0); hdr0 = vlib_buffer_get_current (b0); - clib_memcpy (hdr0, encap_hdr0, (word) encap_hdr_len0); + clib_memcpy_fast (hdr0, encap_hdr0, (word) encap_hdr_len0); /* Manipulate MD2 */ if (PREDICT_FALSE (nsh_entry0->nsh_base.md_type == 2)) @@ -1909,8 +1909,8 @@ nsh_input_map (vlib_main_t * vm, { nsh_input_trace_t *tr = vlib_add_trace (vm, node, b0, sizeof (*tr)); - clib_memcpy (&(tr->trace_data), hdr0, - ((hdr0->length & NSH_LEN_MASK) * 4)); + clib_memcpy_fast (&(tr->trace_data), hdr0, + ((hdr0->length & NSH_LEN_MASK) * 4)); } /* Process packet 1 */ @@ -1936,13 +1936,13 @@ nsh_input_map (vlib_main_t * vm, else if (node_type == NSH_AWARE_VNF_PROXY_TYPE) { /* Push dummy Eth header */ - clib_memcpy (dummy_eth1.dst_address, dummy_dst_address, 6); - clib_memcpy (dummy_eth1.src_address, dummy_src_address, 6); + clib_memcpy_fast (dummy_eth1.dst_address, dummy_dst_address, 6); + clib_memcpy_fast (dummy_eth1.src_address, dummy_src_address, 6); dummy_eth1.type = 0x0800; vlib_buffer_advance (b1, -(word) sizeof (ethernet_header_t)); hdr1 = vlib_buffer_get_current (b1); - clib_memcpy (hdr1, &dummy_eth1, - (word) sizeof (ethernet_header_t)); + clib_memcpy_fast (hdr1, &dummy_eth1, + (word) sizeof (ethernet_header_t)); sw_if_index1 = vnet_buffer (b1)->sw_if_index[VLIB_TX]; nsp_nsi1 = nm->tunnel_index_by_sw_if_index[sw_if_index1]; @@ -2045,7 +2045,7 @@ nsh_input_map (vlib_main_t * vm, /* Push new NSH header */ vlib_buffer_advance (b1, -(word) encap_hdr_len1); hdr1 = vlib_buffer_get_current (b1); - clib_memcpy (hdr1, encap_hdr1, (word) encap_hdr_len1); + clib_memcpy_fast (hdr1, encap_hdr1, (word) encap_hdr_len1); goto trace1; } @@ -2057,7 +2057,7 @@ nsh_input_map (vlib_main_t * vm, /* Push new NSH header */ vlib_buffer_advance (b1, -(word) encap_hdr_len1); hdr1 = vlib_buffer_get_current (b1); - clib_memcpy (hdr1, encap_hdr1, (word) encap_hdr_len1); + clib_memcpy_fast (hdr1, encap_hdr1, (word) encap_hdr_len1); /* Manipulate MD2 */ if (PREDICT_FALSE (nsh_entry1->nsh_base.md_type == 2)) @@ -2074,8 +2074,8 @@ nsh_input_map (vlib_main_t * vm, { nsh_input_trace_t *tr = vlib_add_trace (vm, node, b1, sizeof (*tr)); - clib_memcpy (&(tr->trace_data), hdr1, - ((hdr1->length & NSH_LEN_MASK) * 4)); + clib_memcpy_fast (&(tr->trace_data), hdr1, + ((hdr1->length & NSH_LEN_MASK) * 4)); } vlib_validate_buffer_enqueue_x2 (vm, node, next_index, to_next, @@ -2138,13 +2138,13 @@ nsh_input_map (vlib_main_t * vm, else if (node_type == NSH_AWARE_VNF_PROXY_TYPE) { /* Push dummy Eth header */ - clib_memcpy (dummy_eth0.dst_address, dummy_dst_address, 6); - clib_memcpy (dummy_eth0.src_address, dummy_src_address, 6); + clib_memcpy_fast (dummy_eth0.dst_address, dummy_dst_address, 6); + clib_memcpy_fast (dummy_eth0.src_address, dummy_src_address, 6); dummy_eth0.type = 0x0800; vlib_buffer_advance (b0, -(word) sizeof (ethernet_header_t)); hdr0 = vlib_buffer_get_current (b0); - clib_memcpy (hdr0, &dummy_eth0, - (word) sizeof (ethernet_header_t)); + clib_memcpy_fast (hdr0, &dummy_eth0, + (word) sizeof (ethernet_header_t)); sw_if_index0 = vnet_buffer (b0)->sw_if_index[VLIB_TX]; nsp_nsi0 = nm->tunnel_index_by_sw_if_index[sw_if_index0]; @@ -2250,7 +2250,7 @@ nsh_input_map (vlib_main_t * vm, /* Push new NSH header */ vlib_buffer_advance (b0, -(word) encap_hdr_len0); hdr0 = vlib_buffer_get_current (b0); - clib_memcpy (hdr0, encap_hdr0, (word) encap_hdr_len0); + clib_memcpy_fast (hdr0, encap_hdr0, (word) encap_hdr_len0); goto trace00; } @@ -2262,7 +2262,7 @@ nsh_input_map (vlib_main_t * vm, /* Push new NSH header */ vlib_buffer_advance (b0, -(word) encap_hdr_len0); hdr0 = vlib_buffer_get_current (b0); - clib_memcpy (hdr0, encap_hdr0, (word) encap_hdr_len0); + clib_memcpy_fast (hdr0, encap_hdr0, (word) encap_hdr_len0); /* Manipulate MD2 */ if (PREDICT_FALSE (nsh_entry0->nsh_base.md_type == 2)) { @@ -2277,8 +2277,8 @@ nsh_input_map (vlib_main_t * vm, { nsh_input_trace_t *tr = vlib_add_trace (vm, node, b0, sizeof (*tr)); - clib_memcpy (&(tr->trace_data[0]), hdr0, - ((hdr0->length & NSH_LEN_MASK) * 4)); + clib_memcpy_fast (&(tr->trace_data[0]), hdr0, + ((hdr0->length & NSH_LEN_MASK) * 4)); } vlib_validate_buffer_enqueue_x1 (vm, node, next_index, to_next, |