summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEelco Chaudron <echaudro@redhat.com>2023-01-05 13:56:59 +0100
committerIlya Maximets <i.maximets@ovn.org>2023-02-15 19:44:00 +0100
commitd2583ccb741c69fde37c03b5b4c884794eaac51f (patch)
tree08f7e85bf07d2b04020abab1b3c56923df49a47e
parent705190d88e32b5531178808c0ca26326bcc36a73 (diff)
downloadopenvswitch-d2583ccb741c69fde37c03b5b4c884794eaac51f.tar.gz
ofproto-dpif-upcall: Use last known stats ukey stats on revalidate missed dp flows.
Instead of using all zero stats when executing a revalidate for missed dp flows, use the last known stats to avoid odd statistics being used. As these zero stats are stored in the ukey, the next time revalidate_ukey() is called the delta between the new stats and the zero stats is used, which would cause an additional increase in total packets/bytes. Signed-off-by: Eelco Chaudron <echaudro@redhat.com> Acked-by: Michael Santana <msantana@redhat.com> Signed-off-by: Ilya Maximets <i.maximets@ovn.org>
-rw-r--r--ofproto/ofproto-dpif-upcall.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/ofproto/ofproto-dpif-upcall.c b/ofproto/ofproto-dpif-upcall.c
index adb53f803..59126b901 100644
--- a/ofproto/ofproto-dpif-upcall.c
+++ b/ofproto/ofproto-dpif-upcall.c
@@ -2862,7 +2862,7 @@ revalidator_sweep__(struct revalidator *revalidator, bool purge)
} else {
struct dpif_flow_stats stats;
COVERAGE_INC(revalidate_missed_dp_flow);
- memset(&stats, 0, sizeof stats);
+ memcpy(&stats, &ukey->stats, sizeof stats);
result = revalidate_ukey(udpif, ukey, &stats, &odp_actions,
reval_seq, &recircs, false);
}