[ovs-dev] [optimize 01/13] ofproto-dpif: Properly re-translate uninstallable facets in rule_execute().
Ben Pfaff
blp at nicira.com
Tue Sep 27 23:26:56 UTC 2011
If the facet is not installable then every packet requires separate
translation, but the existing code didn't do that.
---
ofproto/ofproto-dpif.c | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/ofproto/ofproto-dpif.c b/ofproto/ofproto-dpif.c
index ecad489..f9c133e 100644
--- a/ofproto/ofproto-dpif.c
+++ b/ofproto/ofproto-dpif.c
@@ -2847,6 +2847,9 @@ rule_execute(struct rule *rule_, struct flow *flow, struct ofpbuf *packet)
/* First look for a related facet. If we find one, account it to that. */
facet = facet_lookup_valid(ofproto, flow);
if (facet && facet->rule == rule) {
+ if (!facet->may_install) {
+ facet_make_actions(ofproto, facet, packet);
+ }
facet_execute(ofproto, facet, packet);
return 0;
}
--
1.7.4.4
More information about the dev
mailing list