udpif_start_threads(struct udpif *udpif, size_t n_handlers,
size_t n_revalidators)
{
- if (udpif && (!udpif->handlers && !udpif->revalidators)) {
+ if (udpif && n_handlers && n_revalidators) {
size_t i;
udpif->n_handlers = n_handlers;
push.n_bytes = stats->n_bytes > ukey->stats.n_bytes
? stats->n_bytes - ukey->stats.n_bytes
: 0;
- ukey->stats = *stats;
if (!ukey->flow_exists) {
/* Don't bother revalidating if the flow was already deleted. */
goto exit;
}
+ /* We will push the stats, so update the ukey stats cache. */
+ ukey->stats = *stats;
if (!push.n_packets && !udpif->need_revalidate) {
ok = true;
goto exit;