On Mon, Mar 24, 2014 at 06:58:43PM -0700, Andy Zhou wrote:
> Add basic recirculation infrastructure and user space
> data path support for it. The following bond mega flow patch will
> make use of this infrastructure.
> 
> Signed-off-by: Andy Zhou <az...@nicira.com>

I'm not sure the placement of the new enumeration values in enum
ovs_key_attr is correct.  In particular, I don't entirely understand why
OVS_KEY_ATTR_IPV4_TUNNEL is in #ifdef __KERNEL__, but if that value is
part of the ABI then the new values should go after it.

I am not sure that putting pad bytes in the middle of ovs_action_recirc
is a great idea.  I might just make hash_alg a uint32.

In dpif-netdev.c, does anything protect against infinite recursion?

The following change appears to be a mistake:
> diff --git a/ofproto/ofproto.c b/ofproto/ofproto.c
> index 7b81516..277c1d7 100644
> --- a/ofproto/ofproto.c
> +++ b/ofproto/ofproto.c
> @@ -4482,21 +4482,6 @@ handle_flow_mod__(struct ofproto *ofproto, struct 
> ofconn *ofconn,
>  {
>      enum ofperr error;
>  
> -    /* Only internal flow mods can set recircualtion fields. */
> -    if (!(fm->flags & OFPUTIL_FF_INTERNAL)) {
> -        char *err_field = NULL;
> -
> -        err_field = fm->match.flow.recirc_id ? "recirc_id" : err_field;
> -        err_field = fm->match.flow.dp_hash   ? "dp_hash"   : err_field;
> -
> -        if (err_field) {
> -            VLOG_WARN_RL(&rl, "%s: (flow_mod) only internal flows can set 
> %s",
> -                         ofproto->name, err_field);
> -            error = OFPERR_OFPFMFC_EPERM;
> -            return error;
> -        }
> -    }
> -
>      ovs_mutex_lock(&ofproto_mutex);
>      if (ofproto->n_pending < 50) {
>          switch (fm->command) {
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to