/* bi0 might have been updated by reass_finalize, reload */
b0 = vlib_get_buffer (vm, bi0);
- b0->error = node->errors[error0];
+ if (IP4_ERROR_NONE != error0)
+ {
+ b0->error = node->errors[error0];
+ }
if (next0 == IP4_FULL_REASS_NEXT_HANDOFF)
{
} ip4_rehash_cb_ctx;
#ifndef CLIB_MARCH_VARIANT
-static void
+static int
ip4_rehash_cb (clib_bihash_kv_16_8_t * kv, void *_ctx)
{
ip4_rehash_cb_ctx *ctx = _ctx;
{
ctx->failure = 1;
}
+ return (BIHASH_WALK_CONTINUE);
}
static void
clib_spinlock_unlock (&rt->lock);
}
vlib_cli_output (vm, "---------------------");
- vlib_cli_output (vm, "Current IP4 reassemblies count: %lu\n",
+ vlib_cli_output (vm, "Current full IP4 reassemblies count: %lu\n",
(long unsigned) sum_reass_n);
vlib_cli_output (vm,
- "Maximum configured concurrent IP4 reassemblies per worker-thread: %lu\n",
+ "Maximum configured concurrent full IP4 reassemblies per worker-thread: %lu\n",
(long unsigned) rm->max_reass_n);
+ vlib_cli_output (vm,
+ "Maximum configured full IP4 reassembly timeout: %lums\n",
+ (long unsigned) rm->timeout_ms);
+ vlib_cli_output (vm,
+ "Maximum configured full IP4 reassembly expire walk interval: %lums\n",
+ (long unsigned) rm->expire_walk_interval_ms);
return 0;
}