On Tue, Nov 28, 2023 at 3:06 PM Ilya Maximets <[email protected]> wrote:

> On 11/2/23 13:00, Ales Musil wrote:
> > The zone 0 is default system zone, do not use this
> > zone for the test because it might contain some
> > entries already which could cause flakiness during
> > the check.
> >
> > In order to still have the zone 0 parsing coverage
> > add simple unit tests for dpctl.
> >
> > Signed-off-by: Ales Musil <[email protected]>
> > ---
> > v6: Rebase on top of current master.
> > ---
> >  tests/dpctl.at          | 10 +++++--
> >  tests/system-traffic.at | 59 ++++++++++++++++++++---------------------
> >  2 files changed, 37 insertions(+), 32 deletions(-)
> >
> > diff --git a/tests/dpctl.at b/tests/dpctl.at
> > index d2f1046f8..bc84b196b 100644
> > --- a/tests/dpctl.at
> > +++ b/tests/dpctl.at
> > @@ -136,7 +136,7 @@ AT_CHECK([ovs-appctl dpctl/del-dp dummy@br0])
> >  OVS_VSWITCHD_STOP
> >  AT_CLEANUP
> >
> > -AT_SETUP([dpctl - ct-get-limits ct-del-limits])
> > +AT_SETUP([dpctl - ct-set-limits ct-get-limits ct-del-limits])
> >  OVS_VSWITCHD_START
> >  AT_CHECK([ovs-appctl dpctl/ct-get-limits], [0], [default limit=0
> >  ])
> > @@ -149,5 +149,11 @@ AT_CHECK([ovs-appctl dpctl/ct-get-limits zone=x],
> [2], [],
> >  ovs-appctl: ovs-vswitchd: server returned an error
> >  ])
> >  AT_CHECK([ovs-appctl dpctl/ct-del-limits zone=])
> > +AT_CHECK([ovs-appctl dpctl/ct-set-limits zone=0,limit=0])
> > +AT_CHECK([ovs-appctl dpctl/ct-get-limits zone=0], [0], [default limit=0
> > +zone=0,limit=0,count=0
> > +])
> > +AT_CHECK([ovs-appctl dpctl/ct-del-limits zone=0])
> > +
> >  OVS_VSWITCHD_STOP
> > -AT_CLEANUP
> > \ No newline at end of file
> > +AT_CLEANUP
>
> Not sure what nappened here.  Is the newline getting added/removed?
>

It's added because it wasn't there before, it should be fixed in v7.


>
> > diff --git a/tests/system-traffic.at b/tests/system-traffic.at
> > index a1d26a06c..375a8aa2f 100644
> > --- a/tests/system-traffic.at
> > +++ b/tests/system-traffic.at
> > @@ -5124,20 +5124,20 @@ ADD_VETH(p1, at_ns1, br0, "10.1.1.2/24")
> >  AT_DATA([flows.txt], [dnl
> >  priority=1,action=drop
> >  priority=10,arp,action=normal
> > -priority=100,in_port=1,udp,action=ct(commit),2
> > +priority=100,in_port=1,udp,action=ct(zone=1,commit),2
> >  priority=100,in_port=2,udp,action=ct(zone=3,commit),1
> >  ])
> >
> >  AT_CHECK([ovs-ofctl --bundle add-flows br0 flows.txt])
> >
> > -AT_CHECK([ovs-appctl dpctl/ct-set-limits default=10 zone=0,limit=5
> zone=1,limit=15 zone=2,limit=3 zone=3,limit=3])
> > -AT_CHECK([ovs-appctl dpctl/ct-del-limits zone=1,2,4])
> > -AT_CHECK([ovs-appctl dpctl/ct-get-limits zone=0,1,2,3], [],[dnl
> > +AT_CHECK([ovs-appctl dpctl/ct-set-limits default=10 zone=1,limit=5
> zone=2,limit=3 zone=3,limit=3 zone=4,limit=15])
> > +AT_CHECK([ovs-appctl dpctl/ct-del-limits zone=2,4,5])
> > +AT_CHECK([ovs-appctl dpctl/ct-get-limits zone=1,2,3,4], [],[dnl
> >  default limit=10
> > -zone=0,limit=5,count=0
> > -zone=1,limit=10,count=0
> > +zone=1,limit=5,count=0
> >  zone=2,limit=10,count=0
> >  zone=3,limit=3,count=0
> > +zone=4,limit=10,count=0
> >  ])
> >
> >  dnl Test UDP from port 1
> > @@ -5151,10 +5151,9 @@ AT_CHECK([ovs-ofctl -O OpenFlow13 packet-out br0
> "in_port=1 packet=50540000000a5
> >  AT_CHECK([ovs-ofctl -O OpenFlow13 packet-out br0 "in_port=1
> packet=50540000000a50540000000908004500001c000000000011a4cd0a0101010a0101020001000900080000
> actions=resubmit(,0)"])
> >  AT_CHECK([ovs-ofctl -O OpenFlow13 packet-out br0 "in_port=1
> packet=50540000000a50540000000908004500001c000000000011a4cd0a0101010a0101020001000a00080000
> actions=resubmit(,0)"])
> >
> > -AT_CHECK([ovs-appctl dpctl/ct-get-limits zone=0,1,2,3,4,5], [0], [dnl
> > +AT_CHECK([ovs-appctl dpctl/ct-get-limits zone=1,2,3,4,5], [0], [dnl
> >  default limit=10
> > -zone=0,limit=5,count=5
> > -zone=1,limit=10,count=0
> > +zone=1,limit=5,count=5
> >  zone=2,limit=10,count=0
> >  zone=3,limit=3,count=0
> >  zone=4,limit=10,count=0
> > @@ -5164,16 +5163,16 @@ zone=5,limit=10,count=0
> >  dnl Test ct-get-limits for all zones
> >  AT_CHECK([ovs-appctl dpctl/ct-get-limits], [0], [dnl
> >  default limit=10
> > -zone=0,limit=5,count=5
> > +zone=1,limit=5,count=5
> >  zone=3,limit=3,count=0
> >  ])
> >
> >  AT_CHECK([ovs-appctl dpctl/dump-conntrack | grep
> "orig=.src=10\.1\.1\.1," | sort ], [0], [dnl
> >
> -udp,orig=(src=10.1.1.1,dst=10.1.1.2,sport=1,dport=2),reply=(src=10.1.1.2,dst=10.1.1.1,sport=2,dport=1)
> >
> -udp,orig=(src=10.1.1.1,dst=10.1.1.2,sport=1,dport=3),reply=(src=10.1.1.2,dst=10.1.1.1,sport=3,dport=1)
> >
> -udp,orig=(src=10.1.1.1,dst=10.1.1.2,sport=1,dport=4),reply=(src=10.1.1.2,dst=10.1.1.1,sport=4,dport=1)
> >
> -udp,orig=(src=10.1.1.1,dst=10.1.1.2,sport=1,dport=5),reply=(src=10.1.1.2,dst=10.1.1.1,sport=5,dport=1)
> >
> -udp,orig=(src=10.1.1.1,dst=10.1.1.2,sport=1,dport=6),reply=(src=10.1.1.2,dst=10.1.1.1,sport=6,dport=1)
> >
> +udp,orig=(src=10.1.1.1,dst=10.1.1.2,sport=1,dport=2),reply=(src=10.1.1.2,dst=10.1.1.1,sport=2,dport=1),zone=1
> >
> +udp,orig=(src=10.1.1.1,dst=10.1.1.2,sport=1,dport=3),reply=(src=10.1.1.2,dst=10.1.1.1,sport=3,dport=1),zone=1
> >
> +udp,orig=(src=10.1.1.1,dst=10.1.1.2,sport=1,dport=4),reply=(src=10.1.1.2,dst=10.1.1.1,sport=4,dport=1),zone=1
> >
> +udp,orig=(src=10.1.1.1,dst=10.1.1.2,sport=1,dport=5),reply=(src=10.1.1.2,dst=10.1.1.1,sport=5,dport=1),zone=1
> >
> +udp,orig=(src=10.1.1.1,dst=10.1.1.2,sport=1,dport=6),reply=(src=10.1.1.2,dst=10.1.1.1,sport=6,dport=1),zone=1
> >  ])
> >
> >  dnl Test UDP from port 2
> > @@ -5183,9 +5182,9 @@ AT_CHECK([ovs-ofctl -O OpenFlow13 packet-out br0
> "in_port=2 packet=50540000000a5
> >  AT_CHECK([ovs-ofctl -O OpenFlow13 packet-out br0 "in_port=2
> packet=50540000000a50540000000908004500001c000000000011a4c90a0101030a0101040001000500080000
> actions=resubmit(,0)"])
> >  AT_CHECK([ovs-ofctl -O OpenFlow13 packet-out br0 "in_port=2
> packet=50540000000a50540000000908004500001c000000000011a4c90a0101030a0101040001000600080000
> actions=resubmit(,0)"])
> >
> > -AT_CHECK([ovs-appctl dpctl/ct-get-limits zone=0,3], [0], [dnl
> > +AT_CHECK([ovs-appctl dpctl/ct-get-limits zone=1,3], [0], [dnl
> >  default limit=10
> > -zone=0,limit=5,count=5
> > +zone=1,limit=5,count=5
> >  zone=3,limit=3,count=3
> >  ])
> >
> > @@ -5224,22 +5223,22 @@ zone=4,limit=0,count=0
> >  dnl Test limit set via database.
> >  VSCTL_ADD_DATAPATH_TABLE()
> >
> > -AT_CHECK([ovs-appctl dpctl/flush-conntrack zone=0])
> > +AT_CHECK([ovs-appctl dpctl/flush-conntrack zone=1])
> >  AT_CHECK([ovs-appctl dpctl/flush-conntrack zone=3])
> >
> >  AT_CHECK([ovs-appctl dpctl/ct-set-limits default=10])
> >  AT_CHECK([ovs-appctl dpctl/ct-del-limits zone=3])
> >  AT_CHECK([ovs-appctl dpctl/ct-get-limits], [0], [dnl
> >  default limit=10
> > -zone=0,limit=5,count=0
> > +zone=1,limit=5,count=0
> >  ])
> >
> > -AT_CHECK([ovs-vsctl set-zone-limit $DP_TYPE zone=0 limit=3])
> > +AT_CHECK([ovs-vsctl set-zone-limit $DP_TYPE zone=1 limit=3])
> >  AT_CHECK([ovs-vsctl set-zone-limit $DP_TYPE zone=3 limit=3])
> >
> >  OVS_WAIT_UNTIL_EQUAL([ovs-appctl dpctl/ct-get-limits], [dnl
> >  default limit=10
> > -zone=0,limit=3,count=0
> > +zone=1,limit=3,count=0
> >  zone=3,limit=3,count=0])
> >
> >  for i in 2 3 4 5 6; do
> > @@ -5256,47 +5255,47 @@
> udp,orig=(src=10.1.1.3,dst=10.1.1.4,sport=1,dport=4),reply=(src=10.1.1.4,dst=10.
> >
> >  AT_CHECK([ovs-appctl dpctl/ct-get-limits], [0], [dnl
> >  default limit=10
> > -zone=0,limit=3,count=0
> > +zone=1,limit=3,count=0
> >  zone=3,limit=3,count=3
> >  ])
> >
> >  AT_CHECK([ovs-vsctl del-zone-limit $DP_TYPE zone=3])
> >  OVS_WAIT_UNTIL_EQUAL([ovs-appctl dpctl/ct-get-limits], [dnl
> >  default limit=10
> > -zone=0,limit=3,count=0])
> > +zone=1,limit=3,count=0])
> >
> >  AT_CHECK([ovs-vsctl set-zone-limit $DP_TYPE default limit=5])
> >  OVS_WAIT_UNTIL_EQUAL([ovs-appctl dpctl/ct-get-limits], [dnl
> >  default limit=5
> > -zone=0,limit=3,count=0])
> > +zone=1,limit=3,count=0])
> >
> >  AT_CHECK([ovs-vsctl del-zone-limit $DP_TYPE default])
> >  OVS_WAIT_UNTIL_EQUAL([ovs-appctl dpctl/ct-get-limits], [dnl
> >  default limit=0
> > -zone=0,limit=3,count=0])
> > +zone=1,limit=3,count=0])
> >
> >  dnl Try to overwrite the zone limit via dpctl command.
> > -AT_CHECK([ovs-appctl dpctl/ct-set-limits default=15 zone=3,limit=5
> zone=0,limit=5], [2], [ignore], [dnl
> > +AT_CHECK([ovs-appctl dpctl/ct-set-limits default=15 zone=3,limit=5
> zone=1,limit=5], [2], [ignore], [dnl
> >  ovs-vswitchd: the zone limits are set via database, use 'ovs-vsctl
> set-zone-limit <...>' instead. (Operation not permitted)
> >  ovs-appctl: ovs-vswitchd: server returned an error
> >  ])
> >
> >  AT_CHECK([ovs-appctl dpctl/ct-get-limits], [0], [dnl
> >  default limit=0
> > -zone=0,limit=3,count=0
> > +zone=1,limit=3,count=0
> >  ])
> >
> > -AT_CHECK([ovs-appctl dpctl/ct-del-limits zone=0], [2], [ignore], [dnl
> > +AT_CHECK([ovs-appctl dpctl/ct-del-limits zone=1], [2], [ignore], [dnl
> >  ovs-vswitchd: the zone limits are set via database, use 'ovs-vsctl
> del-zone-limit <...>' instead. (Operation not permitted)
> >  ovs-appctl: ovs-vswitchd: server returned an error
> >  ])
> >
> >  AT_CHECK([ovs-appctl dpctl/ct-get-limits], [0], [dnl
> >  default limit=0
> > -zone=0,limit=3,count=0
> > +zone=1,limit=3,count=0
> >  ])
> >
> > -AT_CHECK([ovs-vsctl del-zone-limit $DP_TYPE zone=0])
> > +AT_CHECK([ovs-vsctl del-zone-limit $DP_TYPE zone=1])
> >  AT_CHECK([ovs-vsctl set-zone-limit $DP_TYPE default limit=10])
> >  AT_CHECK([ovs-appctl dpctl/ct-get-limits], [0], [dnl
> >  default limit=10
>
>
Thanks,
Ales

-- 

Ales Musil

Senior Software Engineer - OVN Core

Red Hat EMEA <https://www.redhat.com>

[email protected]
<https://red.ht/sig>
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to