[ovs-discuss] [ACLv2 08/19] ofproto: Add may install parameter to OpenFlow flows.
Ben Pfaff
blp at nicira.com
Tue Aug 25 22:34:16 UTC 2009
Jesse Gross <jesse at nicira.com> writes:
> This controls whether exact match flows can be installed to the
> kernel for a given OpenFlow flow. This can be used to prevent
> flows from being installed that require userspace processing.
I'm not sure that this really works:
* For wildcarded flows, rule_create() will set may_install to false
(because rules are allocated with xcalloc()). Your changes make
ofproto_add_flow() then set may_install as its caller intends,
but rule_create() has other callers that don't set may_install,
and so those callers' rules are screwed. So at least we need
rule_create() to set may_install, probably just to "true" by
default.
Nothing ever updates may_install for wildcarded flows, so at
least that part is OK after flow creation.
* For exact-match flows, rule_make_actions() will reset may_install
whenever it regenerates the dataflow actions for the flow, so
whatever ofproto_add_flow() puts into may_install will get
overridden immediately by its call to rule_insert() because that
function internally calls rule_make_actions().
It would be better if we could use the existing framework of computing
may_install during xlate_actions(). Can that be made to work?
More information about the discuss
mailing list