[ovs-dev] [PATCH v2 5/5] odp-util: Always report ODP_FIT_TOO_LITTLE for IGMP.

Ben Pfaff blp at ovn.org
Mon Feb 5 17:31:21 UTC 2018


That sounds like a good idea.  Do you want to try to write up a patch
for that approach?

The current series still seems like a good idea to me, do you have an
opinion?

On Mon, Feb 05, 2018 at 07:57:20PM +0800, Huanle Han wrote:
> The patches make "ODP_FIT_TOO_LITTLE" logic more clear for me.
> But it seems not fix the problem I mentioned at beginnig:
> revalidate_ukey__() always return UKEY_DELETE for igmp, because
> flow_wildcards_has_extra() return true.
> 
> Should we UKEY_KEEP igmp or other "ODP_FIT_TOO_LITTLE" flows whose
> action is already "slow_path(action, match)" ?
> 
> On Thu, Jan 25, 2018 at 3:40 AM, Ben Pfaff <blp at ovn.org> wrote:
> > OVS datapaths don't understand or parse IGMP fields, but OVS userspace
> > does, so this commit updates odp_flow_key_to_flow() to report that properly
> > to the caller.
> >
> > Reported-by: Huanle Han <hanxueluo at gmail.com>
> > Reported-at: https://mail.openvswitch.org/pipermail/ovs-dev/2018-January/343665.html
> > Signed-off-by: Ben Pfaff <blp at ovn.org>
> > ---
> >  lib/odp-util.c | 5 +++++
> >  1 file changed, 5 insertions(+)
> >
> > diff --git a/lib/odp-util.c b/lib/odp-util.c
> > index 6a29a76de5cd..67fd538e8aea 100644
> > --- a/lib/odp-util.c
> > +++ b/lib/odp-util.c
> > @@ -6210,6 +6210,11 @@ parse_l2_5_onward(const struct nlattr *attrs[OVS_KEY_ATTR_MAX + 1],
> >                  }
> >              }
> >          }
> > +    } else if (src_flow->nw_proto == IPPROTO_IGMP
> > +               && src_flow->dl_type == htons(ETH_TYPE_IP)) {
> > +        /* OVS userspace parses the IGMP type, code, and group, but its
> > +         * datapaths do not, so there is always missing information. */
> > +        return ODP_FIT_TOO_LITTLE;
> >      }
> >      if (is_mask && expected_bit != OVS_KEY_ATTR_UNSPEC) {
> >          if ((flow->tp_src || flow->tp_dst) && flow->nw_proto != 0xff) {
> > --
> > 2.10.2
> >


More information about the dev mailing list