revalidator: Improve optimization to skip revalidation.
authorJoe Stringer <joestringer@nicira.com>
Wed, 2 Jul 2014 07:41:33 +0000 (07:41 +0000)
committerJoe Stringer <joestringer@nicira.com>
Wed, 2 Jul 2014 06:17:41 +0000 (18:17 +1200)
commit860428109084ee4f282eeaa155078c876a45e097
treed999e9b393d6893a8a74b35e5f5d41911fbd0f88
parent5a8750ef98d4793a680102af13e863d3b58fd45b
revalidator: Improve optimization to skip revalidation.

The should_revalidate() optimisation introduced with commit 698ffe3623
(revalidator: Only revalidate high-throughput flows.) was a little
aggressive, occasionally deleting flows even when OVS is quite capable
of performing full revalidation.

This commit modifies the logic to:
* Firstly, check if we are likely to handle full revalidation, and
  attempt that instead.
* Secondly, fall back to the existing flow throughput estimations to
  determine whether to revalidate the flow or just delete it.

VMware-BZ: #1271926

Signed-off-by: Joe Stringer <joestringer@nicira.com>
Acked-by: Alex Wang <alexw@nicira.com>
ofproto/ofproto-dpif-upcall.c