FWIW, it looked fine to me. --Justin
On Apr 2, 2013, at 2:22 PM, Ethan Jackson <et...@nicira.com> wrote: > FYI, I accidentally merged this without review. Justin's looking at > it now. If it gets anything other than a "looks good", I'll revert > it. My bad, sorry. > > Ethan > > On Tue, Apr 2, 2013 at 12:36 PM, Ethan Jackson <et...@nicira.com> wrote: >> In the standard case, rate limiting facet_learn() to once ever >> 500ms, makes sense. The worst that can happen is a learning entry >> is expired half a second to early. However, when using >> fin_timeouts, we really need react quickly to delete the newly >> stale flow. >> >> Bug #15915. >> Signed-off-by: Ethan Jackson <et...@nicira.com> >> --- >> ofproto/ofproto-dpif.c | 5 +++-- >> 1 file changed, 3 insertions(+), 2 deletions(-) >> >> diff --git a/ofproto/ofproto-dpif.c b/ofproto/ofproto-dpif.c >> index 32ed091..47830c1 100644 >> --- a/ofproto/ofproto-dpif.c >> +++ b/ofproto/ofproto-dpif.c >> @@ -4585,13 +4585,14 @@ facet_learn(struct facet *facet) >> struct ofproto_dpif *ofproto = >> ofproto_dpif_cast(facet->rule->up.ofproto); >> struct subfacet *subfacet= CONTAINER_OF(list_front(&facet->subfacets), >> struct subfacet, list_node); >> + long long int now = time_msec(); >> struct action_xlate_ctx ctx; >> >> - if (time_msec() < facet->learn_rl) { >> + if (!facet->has_fin_timeout && now < facet->learn_rl) { >> return; >> } >> >> - facet->learn_rl = time_msec() + 500; >> + facet->learn_rl = now + 500; >> >> if (!facet->has_learn >> && !facet->has_normal >> -- >> 1.7.9.5 >> > _______________________________________________ > dev mailing list > dev@openvswitch.org > http://openvswitch.org/mailman/listinfo/dev _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev