summaryrefslogtreecommitdiffstats
path: root/src/vnet/ip
diff options
context:
space:
mode:
authorDamjan Marion <damarion@cisco.com>2018-04-26 22:45:40 +0200
committerDave Barach <openvpp@barachs.net>2018-04-27 11:20:58 +0000
commitaa682a39b76ee043f65313f23e134bf18fe7a47e (patch)
tree5cd74943911f0a7a9a886e0c309cb18ca1841eb3 /src/vnet/ip
parent582caa3bb67a1380c12790ba6f98450b92835761 (diff)
A bit of buffer metadata reshuffling to accommodate flow_id
Change-Id: I2794384557c6272fe217269b14a9db09eda19220 Signed-off-by: Damjan Marion <damarion@cisco.com>
Diffstat (limited to 'src/vnet/ip')
-rw-r--r--src/vnet/ip/ip4_input.h6
-rw-r--r--src/vnet/ip/ip4_reassembly.c4
-rw-r--r--src/vnet/ip/ip6_reassembly.c5
3 files changed, 7 insertions, 8 deletions
diff --git a/src/vnet/ip/ip4_input.h b/src/vnet/ip/ip4_input.h
index 2692848f8ad..600d6937dd8 100644
--- a/src/vnet/ip/ip4_input.h
+++ b/src/vnet/ip/ip4_input.h
@@ -133,6 +133,7 @@ ip4_input_check_x2 (vlib_main_t * vm,
else
*next0 = error0 != IP4_ERROR_OPTIONS ?
IP4_INPUT_NEXT_DROP : IP4_INPUT_NEXT_PUNT;
+ p0->error = error_node->errors[error0];
}
if (PREDICT_FALSE (error1 != IP4_ERROR_NONE))
{
@@ -146,10 +147,9 @@ ip4_input_check_x2 (vlib_main_t * vm,
else
*next1 = error1 != IP4_ERROR_OPTIONS ?
IP4_INPUT_NEXT_DROP : IP4_INPUT_NEXT_PUNT;
+ p1->error = error_node->errors[error1];
}
- p0->error = error_node->errors[error0];
- p1->error = error_node->errors[error1];
}
always_inline void
@@ -208,9 +208,9 @@ ip4_input_check_x1 (vlib_main_t * vm,
else
*next0 = error0 != IP4_ERROR_OPTIONS ?
IP4_INPUT_NEXT_DROP : IP4_INPUT_NEXT_PUNT;
+ p0->error = error_node->errors[error0];
}
- p0->error = error_node->errors[error0];
}
/*
diff --git a/src/vnet/ip/ip4_reassembly.c b/src/vnet/ip/ip4_reassembly.c
index 33cdbd5e04d..d924f37a47b 100644
--- a/src/vnet/ip/ip4_reassembly.c
+++ b/src/vnet/ip/ip4_reassembly.c
@@ -402,7 +402,7 @@ always_inline void
ip4_reass_finalize (vlib_main_t * vm, vlib_node_runtime_t * node,
ip4_reass_main_t * rm, ip4_reass_per_thread_t * rt,
ip4_reass_t * reass, u32 * bi0, u32 * next0,
- vlib_error_t * error0, u32 ** vec_drop_compress,
+ u32 * error0, u32 ** vec_drop_compress,
u32 ** vec_drop_overlap, bool is_feature)
{
ASSERT (~0 != reass->first_bi);
@@ -651,7 +651,7 @@ always_inline void
ip4_reass_update (vlib_main_t * vm, vlib_node_runtime_t * node,
ip4_reass_main_t * rm, ip4_reass_per_thread_t * rt,
ip4_reass_t * reass, u32 * bi0, u32 * next0,
- vlib_error_t * error0, u32 ** vec_drop_overlap,
+ u32 * error0, u32 ** vec_drop_overlap,
u32 ** vec_drop_compress, bool is_feature)
{
int consumed = 0;
diff --git a/src/vnet/ip/ip6_reassembly.c b/src/vnet/ip/ip6_reassembly.c
index 8b199f39ced..ce30d952acc 100644
--- a/src/vnet/ip/ip6_reassembly.c
+++ b/src/vnet/ip/ip6_reassembly.c
@@ -437,8 +437,7 @@ always_inline void
ip6_reass_finalize (vlib_main_t * vm, vlib_node_runtime_t * node,
ip6_reass_main_t * rm, ip6_reass_per_thread_t * rt,
ip6_reass_t * reass, u32 * bi0, u32 * next0,
- vlib_error_t * error0, u32 ** vec_drop_compress,
- bool is_feature)
+ u32 * error0, u32 ** vec_drop_compress, bool is_feature)
{
ASSERT (~0 != reass->first_bi);
*bi0 = reass->first_bi;
@@ -660,7 +659,7 @@ always_inline void
ip6_reass_update (vlib_main_t * vm, vlib_node_runtime_t * node,
ip6_reass_main_t * rm, ip6_reass_per_thread_t * rt,
ip6_reass_t * reass, u32 * bi0, u32 * next0,
- vlib_error_t * error0, ip6_frag_hdr_t * frag_hdr,
+ u32 * error0, ip6_frag_hdr_t * frag_hdr,
u32 ** vec_drop_overlap, u32 ** vec_drop_compress,
bool is_feature)
{