diff --git a/platform/src/packet_io.cpp b/platform/src/packet_io.cpp index 88f19b1..2dc2f3f 100644 --- a/platform/src/packet_io.cpp +++ b/platform/src/packet_io.cpp @@ -1211,6 +1211,8 @@ static void handle_inject_vxlan_packet(marsio_buff_t *rx_buff, struct thread_ctx { struct session_table *session_table = thread_ctx->session_table; struct thread_metrics *thread_metrics = &thread_ctx->thread_metrics; + struct packet_io *packet_io = thread_ctx->ref_io; + int thread_index = thread_ctx->thread_index; struct metadata meta; struct vxlan_hdr *vxlan_hdr = NULL; @@ -1223,8 +1225,9 @@ static void handle_inject_vxlan_packet(marsio_buff_t *rx_buff, struct thread_ctx if (vxlan_frame_decode(&vxlan_hdr, raw_data, raw_len) == -1) { THROUGHPUT_METRICS_INC(&(thread_metrics->endpoint_vxlan_drop), 1, raw_len); - meta.raw_len = raw_len; - action_err_block(rx_buff, &meta, NULL, thread_ctx); + // health check packet not increase err_block metrics + PACKET_TRACE_ON_FREE(packet_io->instance, rx_buff); + marsio_buff_free(packet_io->instance, &rx_buff, 1, 0, thread_index); return; }