t = vlib_add_trace (vm, node, b, sizeof (*t));
t->connection = s ? s->connection_index : ~0;
t->disposition = error0;
- t->thread_index = s->thread_index;
+ t->thread_index = s ? s->thread_index : vm->thread_index;
}
static udp_connection_t *
}
done:
+ if (PREDICT_FALSE (node->flags & VLIB_NODE_FLAG_TRACE))
+ udp_trace_buffer (vm, node, b[0], s0, error0);
b += 1;
n_left_from -= 1;
udp_inc_err_counter (err_counters, error0, 1);
-
- if (PREDICT_FALSE (node->flags & VLIB_NODE_FLAG_TRACE))
- udp_trace_buffer (vm, node, b[0], s0, error0);
}
vlib_buffer_free (vm, first_buffer, frame->n_vectors);