[ovs-dev] [PATCH] odp-util: Parse ipv4_tunnel key.

Ben Pfaff blp at nicira.com
Thu Nov 1 23:52:38 UTC 2012


On Thu, Nov 01, 2012 at 04:51:17PM -0700, Jesse Gross wrote:
> On Thu, Nov 1, 2012 at 4:39 PM, Ben Pfaff <blp at nicira.com> wrote:
> > On Thu, Nov 01, 2012 at 04:13:15PM -0700, Jesse Gross wrote:
> >> On Thu, Nov 1, 2012 at 3:50 PM, Ben Pfaff <blp at nicira.com> wrote:
> >> > On Thu, Nov 01, 2012 at 03:48:33PM -0700, Jesse Gross wrote:
> >> >> On Thu, Nov 1, 2012 at 1:26 PM, Pravin Shelar <pshelar at nicira.com> wrote:
> >> >> >
> >> >> > On Thu, Nov 1, 2012 at 1:09 PM, Ben Pfaff <blp at nicira.com> wrote:
> >> >> >>
> >> >> >> On Thu, Nov 01, 2012 at 12:47:47PM -0700, Pravin B Shelar wrote:
> >> >> >> > Following patch fixes `ovs-appctl ofproto/trace` command with
> >> >> >> > ipv4_tunnel key in flow.
> >> >> >> >
> >> >> >> > Bug #13785
> >> >> >> > Signed-off-by: Pravin B Shelar <pshelar at nicira.com>
> >> >> >>
> >> >> >> Thank you!
> >> >> >>
> >> >> >> Will you please add a test to tests/odp.at?
> >> >> >>
> >> >> >> Please use "%"SCNi32 for flags instead of "%i", because tun_flags is a
> >> >> >> __u32 not an int.
> >> >> >
> >> >> >
> >> >> > Jesse mentioned that he has a patch for same and will send it.
> >> >>
> >> >> I realized that the tests that I have are dependent on the rest of the
> >> >> infrastructure to actually read the tunnel flow information into
> >> >> userspace - otherwise you won't get the same thing out as is put in.
> >> >> I don't want put that code in yet and I'm not sure that it's worth
> >> >> adding a special test for something that's going to change almost
> >> >> immediately.
> >> >>
> >> >> I'll still post my patch since it has a few small improvements but
> >> >> it's basically the same as Pravin's at this point.
> >> >
> >> > All I want is a one-liner, like this:
> >> >
> >> > diff --git a/tests/odp.at b/tests/odp.at
> >> > index 9617af2..577d487 100644
> >> > --- a/tests/odp.at
> >> > +++ b/tests/odp.at
> >> > @@ -91,6 +91,7 @@ push_vlan(tpid=0x9100,vid=13,pcp=5)
> >> >  push_vlan(tpid=0x9100,vid=13,pcp=5,cfi=0)
> >> >  pop_vlan
> >> >  sample(sample=9.7%,actions(1,2,3,push_vlan(vid=1,pcp=2)))
> >> > +ipv4_tunnel(...something...)
> >> >  ])
> >> >  AT_CHECK_UNQUOTED([test-odp parse-actions < actions.txt], [0],
> >> >    [`cat actions.txt`
> >> >
> >> > with the ...something... filled in reasonably.
> >>
> >> OK, I guess it's fine to treat it as an action.
> >
> > Oh, I wasn't paying attention.  Like this, then, if that doesn't work:
> >
> > diff --git a/tests/odp.at b/tests/odp.at
> > index 9617af2..059b3db 100644
> > --- a/tests/odp.at
> > +++ b/tests/odp.at
> > @@ -60,7 +60,9 @@ sed -n 's/,frag=no),/,frag=first),/p' odp-base.txt
> >
> >   echo
> >   echo '# Valid forms with IP later fragment.'
> > -sed -n 's/,frag=no),.*/,frag=later)/p' odp-base.txt) > odp.txt
> > +sed -n 's/,frag=no),.*/,frag=later)/p' odp-base.txt
> > +
> > + echo 'ipv4_tunnel(...something...)') > odp.txt
> >  AT_CAPTURE_FILE([odp.txt])
> >  AT_CHECK_UNQUOTED([test-odp parse-keys < odp.txt], [0], [`cat odp.txt`
> >  ])
> 
> That's what I was planning on doing originally but it doesn't like it
> because there's not enough flow handling in yet.  Actions exercise the
> same code and don't have this problem so I left it that way.

It's fine, thanks.



More information about the dev mailing list