Thanks for the review. I will send out a V2. addressing your comments.

On Thu, Aug 1, 2013 at 9:19 AM, Jesse Gross <je...@nicira.com> wrote:

> On Wed, Jul 31, 2013 at 8:39 PM, Andy Zhou <az...@nicira.com> wrote:
> > diff --git a/datapath/flow.c b/datapath/flow.c
> > index 84df4d3..a2111e7 100644
> > --- a/datapath/flow.c
> > +++ b/datapath/flow.c
> > @@ -138,8 +138,7 @@ static bool ovs_match_validate(const struct
> sw_flow_match *match,
> >         /* Tunnel mask is always allowed. */
> >         mask_allowed |= (1ULL << OVS_KEY_ATTR_TUNNEL);
> >
> > -       if (match->key->phy.in_port == DP_MAX_PORTS &&
> > -           match->mask && (match->mask->key.phy.in_port == 0xffff))
> > +       if (match->mask && (match->mask->key.phy.in_port == 0xffff))
> >                 mask_allowed |= (1ULL << OVS_KEY_ATTR_IN_PORT);
>
> I'm not sure that there's really much need to check for the match
> being exact at this point. We could just combine it with the above
> line and then have a nice list of exception cases.
>
> > @@ -1323,6 +1322,10 @@ static int metadata_from_nlattrs(struct
> sw_flow_match *match,  u64 *attrs,
> >                 SW_FLOW_KEY_PUT(match, phy.in_port, DP_MAX_PORTS,
> is_mask);
> >         }
> >
> > +       /* Always exact match in_port. */
> > +       if (is_mask)
> > +               SW_FLOW_KEY_PUT(match, phy.in_port, 0xffff, is_mask);
>
> I think it should also be OK to also allow fully wildcarded matches.
> If we just move this up into the main IN_PORT block then it should be
> handled automatically.
>
> To Ethan's point, it would also be nice to expand the commit message
> some with a more descriptive rationale.
>
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to