[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