Looks good to me, thanks. Acked-by: Daniele Di Proietto <[email protected]>
2016-06-09 17:46 GMT-07:00 Jesse Gross <[email protected]>: > When debug logging is enabled, dpif-netdev can print each flow as it is > installed, which it currently does using OpenFlow match formatting. > Compared > to ODP formatting, there generally isn't too much difference since the > fields are largely the same but it is inconsistent with other logging in > dpif-netdev as well as the analogous functions that deal with the kernel. > > However, in some cases there is a difference between the two formats, such > as in the cases of input port or tunnel metadata. For input port, datapath > format helped detect that the generated masks were incorrect. As for > tunnels, > at the moment, it's possible to convert between the two formats on demand > as > we have a global metadata table. In the future, though this won't be > possible > as the metadata table becomes per-bridge which the datapath won't have > access > to. > > Signed-off-by: Jesse Gross <[email protected]> > --- > lib/dpif-netdev.c | 22 +++++++-- > tests/dpif-netdev.at | 14 +++--- > tests/ofproto-dpif.at | 130 > +++++++++++++++++++++++++------------------------- > tests/pmd.at | 2 +- > 4 files changed, 90 insertions(+), 78 deletions(-) > > diff --git a/lib/dpif-netdev.c b/lib/dpif-netdev.c > index f42d2da..8d39d9e 100644 > --- a/lib/dpif-netdev.c > +++ b/lib/dpif-netdev.c > @@ -2120,22 +2120,34 @@ dp_netdev_flow_add(struct dp_netdev_pmd_thread > *pmd, > dp_netdev_flow_hash(&flow->ufid)); > > if (OVS_UNLIKELY(VLOG_IS_DBG_ENABLED())) { > - struct match match; > struct ds ds = DS_EMPTY_INITIALIZER; > + struct ofpbuf key_buf, mask_buf; > + struct odp_flow_key_parms odp_parms = { > + .flow = &match->flow, > + .mask = &match->wc.masks, > + .support = dp_netdev_support, > + }; > + > + ofpbuf_init(&key_buf, 0); > + ofpbuf_init(&mask_buf, 0); > > - match.tun_md.valid = false; > - match.flow = flow->flow; > - miniflow_expand(&flow->cr.mask->mf, &match.wc.masks); > + odp_flow_key_from_flow(&odp_parms, &key_buf); > + odp_parms.key_buf = &key_buf; > + odp_flow_key_from_mask(&odp_parms, &mask_buf); > > ds_put_cstr(&ds, "flow_add: "); > odp_format_ufid(ufid, &ds); > ds_put_cstr(&ds, " "); > - match_format(&match, &ds, OFP_DEFAULT_PRIORITY); > + odp_flow_format(key_buf.data, key_buf.size, > + mask_buf.data, mask_buf.size, > + NULL, &ds, false); > ds_put_cstr(&ds, ", actions:"); > format_odp_actions(&ds, actions, actions_len); > > VLOG_DBG_RL(&upcall_rl, "%s", ds_cstr(&ds)); > > + ofpbuf_uninit(&key_buf); > + ofpbuf_uninit(&mask_buf); > ds_destroy(&ds); > } > > diff --git a/tests/dpif-netdev.at b/tests/dpif-netdev.at > index ab83634..6af0f64 100644 > --- a/tests/dpif-netdev.at > +++ b/tests/dpif-netdev.at > @@ -67,10 +67,10 @@ m4_define([DPIF_NETDEV_DUMMY_IFACE], > sleep 1 # wait for forwarders process packets > > AT_CHECK([filter_flow_install < ovs-vswitchd.log | strip_xout], [0], > [dnl > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000/0x1fff,dl_src=50:54:00:00:00:0b,dl_dst=50:54:00:00:00:0c,nw_frag=no, > actions: <del> > -recirc_id=0,ip,in_port=2,vlan_tci=0x0000/0x1fff,dl_src=50:54:00:00:00:09,dl_dst=50:54:00:00:00:0a,nw_frag=no, > actions: <del> > -recirc_id=0,ip,in_port=7,vlan_tci=0x0000/0x1fff,dl_src=50:54:00:00:00:09,dl_dst=50:54:00:00:00:0a,nw_frag=no, > actions: <del> > -recirc_id=0,ip,in_port=8,vlan_tci=0x0000/0x1fff,dl_src=50:54:00:00:00:0b,dl_dst=50:54:00:00:00:0c,nw_frag=no, > actions: <del> > +recirc_id(0),in_port(1),eth(src=50:54:00:00:00:0b,dst=50:54:00:00:00:0c),eth_type(0x0800),ipv4(frag=no), > actions: <del> > +recirc_id(0),in_port(2),eth(src=50:54:00:00:00:09,dst=50:54:00:00:00:0a),eth_type(0x0800),ipv4(frag=no), > actions: <del> > +recirc_id(0),in_port(7),eth(src=50:54:00:00:00:09,dst=50:54:00:00:00:0a),eth_type(0x0800),ipv4(frag=no), > actions: <del> > +recirc_id(0),in_port(8),eth(src=50:54:00:00:00:0b,dst=50:54:00:00:00:0c),eth_type(0x0800),ipv4(frag=no), > actions: <del> > ]) > > OVS_VSWITCHD_STOP > @@ -95,7 +95,7 @@ m4_define([DPIF_NETDEV_MISS_FLOW_INSTALL], > > > skb_priority(0),skb_mark(0),recirc_id(0),dp_hash(0),in_port(1),eth(src=50:54:00:00:00:09,dst=50:54:00:00:00:0a),eth_type(0x0800),ipv4(src=10.0.0.2,dst=10.0.0.1,proto=1,tos=0,ttl=64,frag=no),icmp(type=8,code=0) > ]) > AT_CHECK([filter_flow_install < ovs-vswitchd.log | strip_xout], [0], > [dnl > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000/0x1fff,dl_src=50:54:00:00:00:09,dl_dst=50:54:00:00:00:0a,nw_frag=no, > actions: <del> > +recirc_id(0),in_port(1),eth(src=50:54:00:00:00:09,dst=50:54:00:00:00:0a),eth_type(0x0800),ipv4(frag=no), > actions: <del> > ]) > > # Now, the same again without megaflows. > @@ -108,8 +108,8 @@ > recirc_id=0,ip,in_port=1,vlan_tci=0x0000/0x1fff,dl_src=50:54:00:00:00:09,dl_dst= > > > skb_priority(0),skb_mark(0),recirc_id(0),dp_hash(0),in_port(1),eth(src=50:54:00:00:00:09,dst=50:54:00:00:00:0a),eth_type(0x0800),ipv4(src=10.0.0.2,dst=10.0.0.1,proto=1,tos=0,ttl=64,frag=no),icmp(type=8,code=0) > ]) > AT_CHECK([filter_flow_install < ovs-vswitchd.log | strip_xout], [0], > [dnl > -pkt_mark=0,recirc_id=0,dp_hash=0,skb_priority=0,ct_state=0,ct_zone=0,ct_mark=0,ct_label=0,icmp,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:09,dl_dst=50:54:00:00:00:0a,nw_src=10.0.0.2,nw_dst=10.0.0.1,nw_tos=0,nw_ecn=0,nw_ttl=64,icmp_type=8,icmp_code=0, > actions: <del> > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000/0x1fff,dl_src=50:54:00:00:00:09,dl_dst=50:54:00:00:00:0a,nw_frag=no, > actions: <del> > +recirc_id(0),in_port(1),eth(src=50:54:00:00:00:09,dst=50:54:00:00:00:0a),eth_type(0x0800),ipv4(frag=no), > actions: <del> > +skb_priority(0),skb_mark(0),recirc_id(0),dp_hash(0),in_port(1),eth(src=50:54:00:00:00:09,dst=50:54:00:00:00:0a),eth_type(0x0800),ipv4(src=10.0.0.2,dst=10.0.0.1,proto=1,tos=0,ttl=64,frag=no),icmp(type=8,code=0), > actions: <del> > ]) > > OVS_VSWITCHD_STOP > diff --git a/tests/ofproto-dpif.at b/tests/ofproto-dpif.at > index 638d269..0057441 100644 > --- a/tests/ofproto-dpif.at > +++ b/tests/ofproto-dpif.at > @@ -42,13 +42,13 @@ AT_CHECK([ovs-appctl netdev-dummy/receive p7 > 'in_port(7),eth(src=50:54:00:00:00: > AT_CHECK([ovs-appctl netdev-dummy/receive p7 > 'in_port(7),eth(src=50:54:00:00:00:09,dst=50:54:00:00:00:0e),eth_type(0x0800),ipv4(src=10.0.0.6,dst=10.0.0.1,proto=1,tos=0,ttl=64,frag=no),icmp(type=8,code=0)']) > ovs-appctl time/warp 200 100 > sleep 1 > -AT_CHECK([grep 'in_port=[[348]]' ovs-vswitchd.log | filter_flow_install | > strip_xout], [0], [dnl > -recirc_id=0,ip,in_port=3,vlan_tci=0x0000/0x1fff,dl_src=50:54:00:00:00:09,dl_dst=50:54:00:00:00:0a,nw_frag=no, > actions: <del> > -recirc_id=0,ip,in_port=3,vlan_tci=0x0000/0x1fff,dl_src=50:54:00:00:00:0b,dl_dst=50:54:00:00:00:0c,nw_frag=no, > actions: <del> > -recirc_id=0,ip,in_port=4,vlan_tci=0x0000/0x1fff,dl_src=50:54:00:00:00:09,dl_dst=50:54:00:00:00:0d,nw_frag=no, > actions: <del> > -recirc_id=0,ip,in_port=4,vlan_tci=0x0000/0x1fff,dl_src=50:54:00:00:00:09,dl_dst=50:54:00:00:00:0e,nw_frag=no, > actions: <del> > -recirc_id=0,rarp,in_port=4,vlan_tci=0x0000/0x1fff,dl_src=50:54:00:00:00:09,dl_dst=ff:ff:ff:ff:ff:ff, > actions: <del> > -recirc_id=0,rarp,in_port=4,vlan_tci=0x0000/0x1fff,dl_src=50:54:00:00:00:0b,dl_dst=ff:ff:ff:ff:ff:ff, > actions: <del> > +AT_CHECK([grep 'in_port([[348]])' ovs-vswitchd.log | filter_flow_install > | strip_xout], [0], [dnl > +recirc_id(0),in_port(3),eth(src=50:54:00:00:00:09,dst=50:54:00:00:00:0a),eth_type(0x0800),ipv4(frag=no), > actions: <del> > +recirc_id(0),in_port(3),eth(src=50:54:00:00:00:0b,dst=50:54:00:00:00:0c),eth_type(0x0800),ipv4(frag=no), > actions: <del> > +recirc_id(0),in_port(4),eth(src=50:54:00:00:00:09,dst=50:54:00:00:00:0d),eth_type(0x0800),ipv4(frag=no), > actions: <del> > +recirc_id(0),in_port(4),eth(src=50:54:00:00:00:09,dst=50:54:00:00:00:0e),eth_type(0x0800),ipv4(frag=no), > actions: <del> > +recirc_id(0),in_port(4),eth(src=50:54:00:00:00:09,dst=ff:ff:ff:ff:ff:ff),eth_type(0x8035), > actions: <del> > +recirc_id(0),in_port(4),eth(src=50:54:00:00:00:0b,dst=ff:ff:ff:ff:ff:ff),eth_type(0x8035), > actions: <del> > ]) > OVS_VSWITCHD_STOP > AT_CLEANUP > @@ -6114,8 +6114,8 @@ for dl_src in 00 01; do > done > sleep 1 # wait for the datapath flow installed > AT_CHECK_UNQUOTED([strip_ufid < ovs-vswitchd.log | filter_flow_install | > strip_used], [0], [dnl > -recirc_id=0,mpls,in_port=1,vlan_tci=0x0000,dl_src=60:66:66:66:66:00,mpls_label=20,mpls_tc=0,mpls_ttl=32,mpls_bos=0,mpls_lse1=82208, > actions:userspace(pid=0,slow_path(controller)) > -recirc_id=0,mpls,in_port=1,vlan_tci=0x0000,dl_src=60:66:66:66:66:01,mpls_bos=0,mpls_lse1=82208, > actions:userspace(pid=0,slow_path(controller)) > +recirc_id(0),in_port(1),eth(src=60:66:66:66:66:00),eth_type(0x8847),mpls(label=20,tc=0,ttl=32,bos=0,label=20,tc=0,ttl=32,bos=1), > actions:userspace(pid=0,slow_path(controller)) > +recirc_id(0),in_port(1),eth(src=60:66:66:66:66:01),eth_type(0x8847),mpls(label=20/0x0,tc=0/0,ttl=32/0x0,bos=0/1,label=20/0xfffff,tc=0/7,ttl=32/0xff,bos=1/1), > actions:userspace(pid=0,slow_path(controller)) > ]) > > OVS_VSWITCHD_STOP > @@ -6153,8 +6153,8 @@ for dl_src in 00 01; do > done > sleep 1 # wait for the datapath flow installed > AT_CHECK_UNQUOTED([strip_ufid < ovs-vswitchd.log | filter_flow_install | > strip_used], [0], [dnl > -recirc_id=0,mpls,in_port=1,vlan_tci=0x0000,dl_src=60:66:66:66:66:00,mpls_label=20,mpls_tc=0,mpls_ttl=32,mpls_bos=0,mpls_lse1=82208, > actions:userspace(pid=0,slow_path(controller)) > -recirc_id=0,mpls,in_port=1,vlan_tci=0x0000,dl_src=60:66:66:66:66:01,mpls_bos=0,mpls_lse1=82208, > actions:userspace(pid=0,slow_path(controller)) > +recirc_id(0),in_port(1),eth(src=60:66:66:66:66:00),eth_type(0x8847),mpls(label=20,tc=0,ttl=32,bos=0,label=20,tc=0,ttl=32,bos=1), > actions:userspace(pid=0,slow_path(controller)) > +recirc_id(0),in_port(1),eth(src=60:66:66:66:66:01),eth_type(0x8847),mpls(label=20/0x0,tc=0/0,ttl=32/0x0,bos=0/1,label=20/0xfffff,tc=0/7,ttl=32/0xff,bos=1/1), > actions:userspace(pid=0,slow_path(controller)) > ]) > > OVS_VSWITCHD_STOP > @@ -6209,8 +6209,8 @@ dummy@ovs-dummy: hit:13 missed:2 > ]) > > AT_CHECK([strip_ufid < ovs-vswitchd.log | filter_flow_install | > strip_used], [0], [dnl > -recirc_id=0,ip,in_port=100,vlan_tci=0x0000,nw_frag=no, actions:101,3,2 > -recirc_id=0,ip,in_port=101,vlan_tci=0x0000,nw_frag=no, actions:100,2,3 > +recirc_id(0),in_port(100),eth_type(0x0800),ipv4(frag=no), actions:101,3,2 > +recirc_id(0),in_port(101),eth_type(0x0800),ipv4(frag=no), actions:100,2,3 > ]) > > AT_CHECK([grep -e 'in_port(100).*packets:9' ovs-vswitchd.log | strip_ufid > | filter_flow_dump], [0], [dnl > @@ -6274,7 +6274,7 @@ dummy@ovs-dummy: hit:0 missed:1 > ]) > > AT_CHECK([strip_ufid < ovs-vswitchd.log | filter_flow_install | > strip_used], [0], [dnl > -recirc_id=0,ip,in_port=100,vlan_tci=0x0000,nw_src=192.168.0.1,nw_frag=no, > actions:101,set(ipv4(src=255.255.255.254)),2 > +recirc_id(0),in_port(100),eth_type(0x0800),ipv4(src=192.168.0.1,frag=no), > actions:101,set(ipv4(src=255.255.255.254)),2 > ]) > > AT_CHECK([grep -e '|nx_match|WARN|' ovs-vswitchd.log | sed > "s/^.*|WARN|//"], [0], [dnl > @@ -6317,7 +6317,7 @@ sleep 1 > AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00:0b,dst=50:54:00:00:00:0c),eth_type(0x0800),ipv4(src=10.0.0.4,dst=10.0.0.3,proto=1,tos=0,ttl=64,frag=no),icmp(type=8,code=0)']) > sleep 1 > AT_CHECK([filter_flow_install < ovs-vswitchd.log | strip_xout], [0], [dnl > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000,nw_frag=no, actions: <del> > +recirc_id(0),in_port(1),eth_type(0x0800),ipv4(frag=no), actions: <del> > ]) > OVS_VSWITCHD_STOP > AT_CLEANUP > @@ -6334,8 +6334,8 @@ AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00: > AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00:0b,dst=50:54:00:00:00:0c),eth_type(0x0800),ipv4(src=10.0.0.4,dst=10.0.0.3,proto=1,tos=0,ttl=64,frag=no),icmp(type=8,code=0)']) > sleep 1 > AT_CHECK([filter_flow_install < ovs-vswitchd.log | strip_xout], [0], [dnl > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:09,nw_frag=no, > actions: <del> > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:0b,nw_frag=no, > actions: <del> > +recirc_id(0),in_port(1),eth(src=50:54:00:00:00:09),eth_type(0x0800),ipv4(frag=no), > actions: <del> > +recirc_id(0),in_port(1),eth(src=50:54:00:00:00:0b),eth_type(0x0800),ipv4(frag=no), > actions: <del> > ]) > OVS_VSWITCHD_STOP > AT_CLEANUP > @@ -6353,8 +6353,8 @@ AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00: > AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00:0b,dst=50:54:00:00:00:0c),eth_type(0x0800),ipv4(src=10.0.0.4,dst=10.0.0.3,proto=1,tos=0,ttl=64,frag=no),icmp(type=8,code=0)']) > sleep 1 > AT_CHECK([filter_flow_install < ovs-vswitchd.log | strip_xout], [0], [dnl > -recirc_id=0,icmp,in_port=1,vlan_tci=0x0000,nw_src=10.0.0.4,nw_frag=no, > actions: <del> > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000,nw_src=10.0.0.2/30,nw_frag=no, > actions: <del> > +recirc_id(0),in_port(1),eth_type(0x0800),ipv4(src= > 10.0.0.2/255.255.255.252,frag=no), actions: <del> > +recirc_id(0),in_port(1),eth_type(0x0800),ipv4(src=10.0.0.4,proto=1,frag=no), > actions: <del> > ]) > OVS_VSWITCHD_STOP > AT_CLEANUP > @@ -6372,8 +6372,8 @@ AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00: > AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00:09,dst=50:54:00:00:00:0a),eth_type(0x86dd),ipv6(src=2001:db8:3c4d:5:4:3:2:1,dst=2001:db8:3c4d:1:2:3:4:1,label=0,proto=99,tclass=0x70,hlimit=64,frag=no)']) > sleep 1 > AT_CHECK([filter_flow_install < ovs-vswitchd.log | strip_xout], [0], [dnl > -recirc_id=0,ipv6,in_port=1,vlan_tci=0x0000,ipv6_src=2001:db8:3c4d:1:2:3:4:5,nw_frag=no, > actions: <del> > -recirc_id=0,ipv6,in_port=1,vlan_tci=0x0000,ipv6_src=2001:db8:3c4d:5:4:3:2:1/62,nw_frag=no, > actions: <del> > +recirc_id(0),in_port(1),eth_type(0x86dd),ipv6(src=2001:db8:3c4d:1:2:3:4:5,frag=no), > actions: <del> > +recirc_id(0),in_port(1),eth_type(0x86dd),ipv6(src=2001:db8:3c4d:5:4:3:2:1/ffff:ffff:ffff:fffc::,frag=no), > actions: <del> > ]) > OVS_VSWITCHD_STOP > AT_CLEANUP > @@ -6391,7 +6391,7 @@ sleep 1 > AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00:0b,dst=50:54:00:00:00:0c),eth_type(0x0800),ipv4(src=10.0.0.4,dst=10.0.0.3,proto=1,tos=0,ttl=64,frag=no),icmp(type=8,code=0)']) > sleep 1 > AT_CHECK([filter_flow_install < ovs-vswitchd.log | strip_xout], [0], [dnl > -recirc_id=0,icmp,in_port=1,vlan_tci=0x0000,nw_frag=no,icmp_type=0x8/0xff, > actions: <del> > +recirc_id(0),in_port(1),eth_type(0x0800),ipv4(proto=1,frag=no),icmp(type=8), > actions: <del> > ]) > OVS_VSWITCHD_STOP > AT_CLEANUP > @@ -6407,8 +6407,8 @@ m4_define([OFPROTO_DPIF_MEGAFLOW_NORMAL], > AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00:0b,dst=50:54:00:00:00:0c),eth_type(0x0800),ipv4(src=10.0.0.4,dst=10.0.0.3,proto=1,tos=0,ttl=64,frag=no),icmp(type=8,code=0)']) > sleep 1 > AT_CHECK([filter_flow_install < ovs-vswitchd.log | strip_xout], [0], > [dnl > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000/0x1fff,dl_src=50:54:00:00:00:09,dl_dst=50:54:00:00:00:0a,nw_frag=no, > actions: <del> > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000/0x1fff,dl_src=50:54:00:00:00:0b,dl_dst=50:54:00:00:00:0c,nw_frag=no, > actions: <del> > +recirc_id(0),in_port(1),eth(src=50:54:00:00:00:09,dst=50:54:00:00:00:0a),eth_type(0x0800),ipv4(frag=no), > actions: <del> > +recirc_id(0),in_port(1),eth(src=50:54:00:00:00:0b,dst=50:54:00:00:00:0c),eth_type(0x0800),ipv4(frag=no), > actions: <del> > ]) > OVS_VSWITCHD_STOP > AT_CLEANUP]) > @@ -6429,8 +6429,8 @@ AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00: > AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00:0b,dst=50:54:00:00:00:0a),eth_type(0x8847),mpls(label=11,tc=3,ttl=64,bos=1)']) > sleep 1 > AT_CHECK([filter_flow_install < ovs-vswitchd.log | > strip_xout_keep_actions], [0], [dnl > -recirc_id=0,mpls,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:09,mpls_label=11,mpls_tc=3,mpls_ttl=64,mpls_bos=1, > actions:push_mpls(label=11,tc=3,ttl=64,bos=0,eth_type=0x8847),2 > -recirc_id=0,mpls,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:0b,mpls_bos=1, > actions:pop_mpls(eth_type=0x800),2 > +recirc_id(0),in_port(1),eth(src=50:54:00:00:00:09),eth_type(0x8847),mpls(label=11,tc=3,ttl=64,bos=1), > actions:push_mpls(label=11,tc=3,ttl=64,bos=0,eth_type=0x8847),2 > +recirc_id(0),in_port(1),eth(src=50:54:00:00:00:0b),eth_type(0x8847),mpls(label=11/0x0,tc=3/0,ttl=64/0x0,bos=1/1), > actions:pop_mpls(eth_type=0x800),2 > ]) > OVS_VSWITCHD_STOP > AT_CLEANUP > @@ -6456,8 +6456,8 @@ m4_define([CHECK_MEGAFLOW_NETFLOW], > AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00:0b,dst=50:54:00:00:00:0c),eth_type(0x0800),ipv4(src=10.0.0.4,dst=10.0.0.3,proto=1,tos=0,ttl=64,frag=no),icmp(type=8,code=0)']) > sleep 1 > AT_CHECK([filter_flow_install < ovs-vswitchd.log | strip_xout], [0], > [dnl > -recirc_id=0,icmp,in_port=1,vlan_tci=0x0000/0x1fff,dl_src=50:54:00:00:00:09,dl_dst=50:54:00:00:00:0a,nw_src=10.0.0.2,nw_dst=10.0.0.1,nw_tos=0,nw_frag=no,icmp_type=0x8/0xff,icmp_code=0x0/0xff, > actions: <del> > -recirc_id=0,icmp,in_port=1,vlan_tci=0x0000/0x1fff,dl_src=50:54:00:00:00:0b,dl_dst=50:54:00:00:00:0c,nw_src=10.0.0.4,nw_dst=10.0.0.3,nw_tos=0,nw_frag=no,icmp_type=0x8/0xff,icmp_code=0x0/0xff, > actions: <del> > +recirc_id(0),in_port(1),eth(src=50:54:00:00:00:09,dst=50:54:00:00:00:0a),eth_type(0x0800),ipv4(src=10.0.0.2,dst=10.0.0.1,proto=1,tos=0/0xfc,frag=no),icmp(type=8,code=0), > actions: <del> > +recirc_id(0),in_port(1),eth(src=50:54:00:00:00:0b,dst=50:54:00:00:00:0c),eth_type(0x0800),ipv4(src=10.0.0.4,dst=10.0.0.3,proto=1,tos=0/0xfc,frag=no),icmp(type=8,code=0), > actions: <del> > ]) > OVS_APP_EXIT_AND_WAIT([test-netflow]) > OVS_VSWITCHD_STOP]) > @@ -6488,8 +6488,8 @@ m4_define([OFPROTO_DPIF_MEGAFLOW_NORMAL_ACB_BOND], > AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00:0b,dst=50:54:00:00:00:0c),eth_type(0x0800),ipv4(src=10.0.0.4,dst=10.0.0.3,proto=1,tos=0,ttl=64,frag=no),icmp(type=8,code=0)']) > sleep 1 > AT_CHECK([filter_flow_install < ovs-vswitchd.log | strip_xout], [0], > [dnl > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000/0x1fff,dl_src=50:54:00:00:00:09,dl_dst=50:54:00:00:00:0a,nw_frag=no, > actions: <del> > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000/0x1fff,dl_src=50:54:00:00:00:0b,dl_dst=50:54:00:00:00:0c,nw_frag=no, > actions: <del> > +recirc_id(0),in_port(1),eth(src=50:54:00:00:00:09,dst=50:54:00:00:00:0a),eth_type(0x0800),ipv4(frag=no), > actions: <del> > +recirc_id(0),in_port(1),eth(src=50:54:00:00:00:0b,dst=50:54:00:00:00:0c),eth_type(0x0800),ipv4(frag=no), > actions: <del> > ]) > OVS_VSWITCHD_STOP > AT_CLEANUP]) > @@ -6512,8 +6512,8 @@ AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00: > AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00:0b,dst=50:54:00:00:00:0c),eth_type(0x0800),ipv4(src=10.0.0.4,dst=10.0.0.3,proto=1,tos=0,ttl=64,frag=no),icmp(type=8,code=0)']) > sleep 1 > AT_CHECK([filter_flow_install < ovs-vswitchd.log | strip_xout], [0], [dnl > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000/0x1fff,dl_src=50:54:00:00:00:09,dl_dst=50:54:00:00:00:0a,nw_frag=no, > actions: <del> > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000/0x1fff,dl_src=50:54:00:00:00:0b,dl_dst=50:54:00:00:00:0c,nw_frag=no, > actions: <del> > +recirc_id(0),in_port(1),eth(src=50:54:00:00:00:09,dst=50:54:00:00:00:0a),eth_type(0x0800),ipv4(frag=no), > actions: <del> > +recirc_id(0),in_port(1),eth(src=50:54:00:00:00:0b,dst=50:54:00:00:00:0c),eth_type(0x0800),ipv4(frag=no), > actions: <del> > ]) > OVS_VSWITCHD_STOP > AT_CLEANUP > @@ -6550,8 +6550,8 @@ AT_CHECK([ovs-appctl netdev-dummy/receive p7 > 'in_port(1),eth(src=50:54:00:00:00: > AT_CHECK([ovs-appctl netdev-dummy/receive p7 > 'in_port(1),eth(src=50:54:00:00:00:0b,dst=50:54:00:00:00:0c),eth_type(0x0800),ipv4(src=10.0.0.4,dst=10.0.0.3,proto=1,tos=0,ttl=64,frag=no),icmp(type=8,code=0)']) > sleep 1 > AT_CHECK([filter_flow_install < ovs-vswitchd.log | strip_xout], [0], [dnl > -recirc_id=0,ip,in_port=7,vlan_tci=0x0000/0x1fff,dl_src=50:54:00:00:00:09,dl_dst=50:54:00:00:00:0a,nw_frag=no, > actions: <del> > -recirc_id=0,ip,in_port=7,vlan_tci=0x0000/0x1fff,dl_src=50:54:00:00:00:0b,dl_dst=50:54:00:00:00:0c,nw_frag=no, > actions: <del> > +recirc_id(0),in_port(7),eth(src=50:54:00:00:00:09,dst=50:54:00:00:00:0a),eth_type(0x0800),ipv4(frag=no), > actions: <del> > +recirc_id(0),in_port(7),eth(src=50:54:00:00:00:0b,dst=50:54:00:00:00:0c),eth_type(0x0800),ipv4(frag=no), > actions: <del> > ]) > OVS_VSWITCHD_STOP > AT_CLEANUP > @@ -6569,8 +6569,8 @@ AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00: > AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00:0b,dst=50:54:00:00:00:0c),eth_type(0x0800),ipv4(src=10.0.0.4,dst=10.0.0.3,proto=1,tos=0,ttl=64,frag=no),icmp(type=8,code=0)']) > sleep 1 > AT_CHECK([filter_flow_install < ovs-vswitchd.log | strip_xout], [0], [dnl > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:09,nw_frag=no, > actions: <del> > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:0b,nw_frag=no, > actions: <del> > +recirc_id(0),in_port(1),eth(src=50:54:00:00:00:09),eth_type(0x0800),ipv4(frag=no), > actions: <del> > +recirc_id(0),in_port(1),eth(src=50:54:00:00:00:0b),eth_type(0x0800),ipv4(frag=no), > actions: <del> > ]) > OVS_VSWITCHD_STOP > AT_CLEANUP > @@ -6589,8 +6589,8 @@ AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00: > 1,tos=0,ttl=64,frag=no),icmp(type=8,code=0)']) > sleep 1 > AT_CHECK([filter_flow_install < ovs-vswitchd.log | strip_xout], [0], [dnl > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:09,nw_frag=no, > actions: <del> > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:0b,nw_frag=no, > actions: <del> > +recirc_id(0),in_port(1),eth(src=50:54:00:00:00:09),eth_type(0x0800),ipv4(frag=no), > actions: <del> > +recirc_id(0),in_port(1),eth(src=50:54:00:00:00:0b),eth_type(0x0800),ipv4(frag=no), > actions: <del> > ]) > OVS_VSWITCHD_STOP > AT_CLEANUP > @@ -6608,8 +6608,8 @@ AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00: > AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00:0b,dst=50:54:00:00:00:0c),eth_type(0x0800),ipv4(src=10.0.0.4,dst=10.0.0.3,proto=1,tos=0,ttl=64,frag=no),icmp(type=8,code=0)']) > sleep 1 > AT_CHECK([filter_flow_install < ovs-vswitchd.log | strip_xout], [0], [dnl > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:09,nw_frag=no, > actions: <del> > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:0b,nw_frag=no, > actions: <del> > +recirc_id(0),in_port(1),eth(src=50:54:00:00:00:09),eth_type(0x0800),ipv4(frag=no), > actions: <del> > +recirc_id(0),in_port(1),eth(src=50:54:00:00:00:0b),eth_type(0x0800),ipv4(frag=no), > actions: <del> > ]) > OVS_VSWITCHD_STOP > AT_CLEANUP > @@ -6633,7 +6633,7 @@ sleep 1 > AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00:0b,dst=50:54:00:00:00:0c),eth_type(0x0800),ipv4(src=10.0.0.4,dst=10.0.0.3,proto=1,tos=0,ttl=64,frag=no),icmp(type=8,code=0)']) > sleep 1 > AT_CHECK([filter_flow_install < ovs-vswitchd.log | strip_xout], [0], [dnl > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000,nw_frag=no, actions: <del> > +recirc_id(0),in_port(1),eth_type(0x0800),ipv4(frag=no), actions: <del> > ]) > OVS_VSWITCHD_STOP > AT_CLEANUP > @@ -6655,8 +6655,8 @@ AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00: > AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00:0b,dst=50:54:00:00:00:0c),eth_type(0x0800),ipv4(src=10.0.0.4,dst=10.0.0.3,proto=1,tos=0,ttl=64,frag=no),icmp(type=8,code=0)']) > sleep 1 > AT_CHECK([filter_flow_install < ovs-vswitchd.log | strip_xout], [0], [dnl > -recirc_id=0,ip,in_port=1,dl_vlan=11,nw_frag=no, actions: <del> > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000/0x1fff,nw_frag=no, actions: <del> > +recirc_id(0),in_port(1),eth_type(0x0800),ipv4(frag=no), actions: <del> > +recirc_id(0),in_port(1),eth_type(0x8100),vlan(vid=11,pcp=7/0x0),encap(eth_type(0x0800),ipv4(frag=no)), > actions: <del> > ]) > OVS_VSWITCHD_STOP > AT_CLEANUP > @@ -6675,8 +6675,8 @@ AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00: > AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00:0b,dst=50:54:00:00:00:0c),eth_type(0x0800),ipv4(src=10.0.0.4,dst=10.0.0.3,proto=1,tos=0,ttl=64,frag=no),icmp(type=8,code=0)']) > sleep 1 > AT_CHECK([filter_flow_install < ovs-vswitchd.log | strip_xout], [0], [dnl > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000,nw_src=10.0.0.2,nw_frag=no, > actions: <del> > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000,nw_src=10.0.0.4,nw_frag=no, > actions: <del> > +recirc_id(0),in_port(1),eth_type(0x0800),ipv4(src=10.0.0.2,frag=no), > actions: <del> > +recirc_id(0),in_port(1),eth_type(0x0800),ipv4(src=10.0.0.4,frag=no), > actions: <del> > ]) > OVS_VSWITCHD_STOP > AT_CLEANUP > @@ -6693,8 +6693,8 @@ AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00: > AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00:0b,dst=50:54:00:00:00:0c),eth_type(0x0800),ipv4(src=10.0.0.4,dst=10.0.0.3,proto=1,tos=0,ttl=64,frag=no),icmp(type=8,code=0)']) > sleep 1 > AT_CHECK([filter_flow_install < ovs-vswitchd.log | strip_xout], [0], [dnl > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000,nw_src=10.0.0.2,nw_frag=no, > actions: <del> > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000,nw_src=10.0.0.4,nw_frag=no, > actions: <del> > +recirc_id(0),in_port(1),eth_type(0x0800),ipv4(src=10.0.0.2,frag=no), > actions: <del> > +recirc_id(0),in_port(1),eth_type(0x0800),ipv4(src=10.0.0.4,frag=no), > actions: <del> > ]) > OVS_VSWITCHD_STOP > AT_CLEANUP > @@ -6720,8 +6720,8 @@ done > sleep 1 > dnl The original flow is missing due to a revalidation. > AT_CHECK([filter_flow_install < ovs-vswitchd.log | strip_xout], [0], [dnl > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000/0x1fff,dl_src=50:54:00:00:00:09,nw_frag=no, > actions: <del> > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000/0x1fff,dl_src=50:54:00:00:00:0b,nw_frag=no, > actions: <del> > +recirc_id(0),in_port(1),eth(src=50:54:00:00:00:09),eth_type(0x0800),ipv4(frag=no), > actions: <del> > +recirc_id(0),in_port(1),eth(src=50:54:00:00:00:0b),eth_type(0x0800),ipv4(frag=no), > actions: <del> > ]) > OVS_VSWITCHD_STOP > AT_CLEANUP > @@ -6752,9 +6752,9 @@ sleep 1 > AT_CHECK([ovs-appctl netdev-dummy/receive p3 > 'in_port(3),eth(src=50:54:00:00:00:0b,dst=50:54:00:00:00:0c),eth_type(0x0800),ipv4(src=10.0.0.4,dst=10.0.0.3,proto=1,tos=0x1,ttl=64,frag=no),icmp(type=8,code=0)']) > sleep 1 > AT_CHECK([filter_flow_install < ovs-vswitchd.log | strip_xout], [0], [dnl > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000,nw_ecn=1,nw_frag=no, actions: > <del> > -recirc_id=0,ip,in_port=3,vlan_tci=0x0000,nw_tos=0,nw_ecn=1,nw_ttl=64,nw_frag=no, > actions: <del> > -recirc_id=0,ip,in_port=3,vlan_tci=0x0000,nw_tos=252,nw_ecn=1,nw_ttl=128,nw_frag=no, > actions: <del> > +recirc_id(0),in_port(1),eth_type(0x0800),ipv4(tos=0xfd/0x3,frag=no), > actions: <del> > +recirc_id(0),in_port(3),eth_type(0x0800),ipv4(tos=0x1,ttl=64,frag=no), > actions: <del> > +recirc_id(0),in_port(3),eth_type(0x0800),ipv4(tos=0xfd,ttl=128,frag=no), > actions: <del> > ]) > OVS_VSWITCHD_STOP > AT_CLEANUP > @@ -6772,8 +6772,8 @@ AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00: > AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00:0b,dst=50:54:00:00:00:0c),eth_type(0x0800),ipv4(src=10.0.0.4,dst=10.0.0.3,proto=1,tos=0,ttl=64,frag=no),icmp(type=8,code=0)']) > sleep 1 > AT_CHECK([filter_flow_install < ovs-vswitchd.log | strip_xout], [0], [dnl > -recirc_id=0,icmp,in_port=1,vlan_tci=0x0000,nw_src=10.0.0.4,nw_ttl=64,nw_frag=no, > actions: <del> > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000,nw_src=10.0.0.2/30,nw_frag=no, > actions: <del> > +recirc_id(0),in_port(1),eth_type(0x0800),ipv4(src= > 10.0.0.2/255.255.255.252,frag=no), actions: <del> > +recirc_id(0),in_port(1),eth_type(0x0800),ipv4(src=10.0.0.4,proto=1,ttl=64,frag=no), > actions: <del> > ]) > OVS_VSWITCHD_STOP > AT_CLEANUP > @@ -6793,8 +6793,8 @@ dnl The first packet is essentially a no-op, as the > new destination MAC is the > dnl same as the original. The second entry actually updates the > destination > dnl MAC. > AT_CHECK([strip_ufid < ovs-vswitchd.log | filter_flow_install | > strip_used], [0], [dnl > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000,dl_dst=50:54:00:00:00:0a,nw_frag=no, > actions:2 > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000,dl_dst=50:54:00:00:00:0c,nw_frag=no, > actions:set(eth(dst=50:54:00:00:00:0a)),2 > +recirc_id(0),in_port(1),eth(dst=50:54:00:00:00:0a),eth_type(0x0800),ipv4(frag=no), > actions:2 > +recirc_id(0),in_port(1),eth(dst=50:54:00:00:00:0c),eth_type(0x0800),ipv4(frag=no), > actions:set(eth(dst=50:54:00:00:00:0a)),2 > ]) > OVS_VSWITCHD_STOP > AT_CLEANUP > @@ -6824,8 +6824,8 @@ table=0 in_port=1,ip,nw_dst=10.0.0.3 actions=drop > done > sleep 1 > AT_CHECK([strip_ufid < ovs-vswitchd.log | filter_flow_install | > strip_used], [0], [dnl > -pkt_mark=0,recirc_id=0,dp_hash=0,skb_priority=0,ct_state=0,ct_zone=0,ct_mark=0,ct_label=0,icmp,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:09,dl_dst=50:54:00:00:00:0a,nw_src=10.0.0.2,nw_dst=10.0.0.1,nw_tos=0,nw_ecn=0,nw_ttl=64,icmp_type=8,icmp_code=0, > actions:2 > -pkt_mark=0,recirc_id=0,dp_hash=0,skb_priority=0,ct_state=0,ct_zone=0,ct_mark=0,ct_label=0,icmp,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:0b,dl_dst=50:54:00:00:00:0c,nw_src=10.0.0.4,nw_dst=10.0.0.3,nw_tos=0,nw_ecn=0,nw_ttl=64,icmp_type=8,icmp_code=0, > actions:drop > +skb_priority(0),skb_mark(0),recirc_id(0),dp_hash(0),in_port(1),eth(src=50:54:00:00:00:09,dst=50:54:00:00:00:0a),eth_type(0x0800),ipv4(src=10.0.0.2,dst=10.0.0.1,proto=1,tos=0,ttl=64,frag=no),icmp(type=8,code=0), > actions:2 > +skb_priority(0),skb_mark(0),recirc_id(0),dp_hash(0),in_port(1),eth(src=50:54:00:00:00:0b,dst=50:54:00:00:00:0c),eth_type(0x0800),ipv4(src=10.0.0.4,dst=10.0.0.3,proto=1,tos=0,ttl=64,frag=no),icmp(type=8,code=0), > actions:drop > ]) > AT_CHECK([strip_ufid < ovs-vswitchd.log | filter_flow_dump | grep > 'packets:3'], [0], [dnl > > skb_priority(0),skb_mark(0),recirc_id(0),dp_hash(0),in_port(1),eth(src=50:54:00:00:00:09,dst=50:54:00:00:00:0a),eth_type(0x0800),ipv4(src=10.0.0.2,dst=10.0.0.1,proto=1,tos=0,ttl=64,frag=no),icmp(type=8,code=0), > packets:3, bytes:180, used:0.0s, actions:2 > @@ -7349,8 +7349,8 @@ AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'recirc_id(0),in_port(1),eth(src=f2 > AT_CHECK([ovs-appctl revalidator/purge], [0]) > > AT_CHECK([strip_ufid < ovs-vswitchd.log | filter_flow_install | > strip_used], [0], [dnl > -recirc_id=0,icmp6,in_port=1,vlan_tci=0x0000,nw_frag=no,icmp_type=0x80/0xff, > actions:2 > -recirc_id=0,icmp6,in_port=1,vlan_tci=0x0000,nw_frag=no,icmp_type=0x81/0xff, > actions:3 > +recirc_id(0),in_port(1),eth_type(0x86dd),ipv6(proto=58,frag=no),icmpv6(type=128), > actions:2 > +recirc_id(0),in_port(1),eth_type(0x86dd),ipv6(proto=58,frag=no),icmpv6(type=129), > actions:3 > ]) > > AT_CHECK([ovs-ofctl dump-flows br0 | ofctl_strip | sort], [0], [dnl > @@ -7395,8 +7395,8 @@ AT_CHECK([ovs-ofctl add-flow br0 > "vlan_tci=0x000a/0x0fff,action=output:local"]) > AT_CHECK([ovs-appctl netdev-dummy/receive p0 > 'in_port(1),eth(src=50:54:00:00:00:09,dst=50:54:00:00:00:0a),eth_type(0x8100),vlan(vid=10,pcp=0),encap(eth_type(0x0800),ipv4(src=10.0.0.2,dst=10.0.0.1,proto=1,tos=0,ttl=64,frag=no),icmp(type=8,code=0))']) > > OVS_WAIT_UNTIL([grep flow_add: ovs-vswitchd.log]) > -AT_CHECK([grep 'in_port=[[1]]' ovs-vswitchd.log | filter_flow_install | > strip_xout], [0], [dnl > -recirc_id=0,ip,in_port=1,dl_vlan=10,nw_frag=no, actions: <del> > +AT_CHECK([grep 'in_port([[1]])' ovs-vswitchd.log | filter_flow_install | > strip_xout], [0], [dnl > +recirc_id(0),in_port(1),eth_type(0x8100),vlan(vid=10),encap(eth_type(0x0800),ipv4(frag=no)), > actions: <del> > ]) > OVS_VSWITCHD_STOP > AT_CLEANUP > @@ -7506,7 +7506,7 @@ recirc_id(0),in_port(1),eth_type(0x1234), packets:8, > bytes:480, used:0.0s, actio > # Check that VLAN packets will not hit the same datapath megaflow. > > AT_CHECK([ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00:09,dst=50:54:00:00:00:0a),eth_type(0x8100),vlan(vid=99,pcp=7),encap(eth_type(0x1234))']) > -OVS_WAIT_UNTIL([grep 'flow_add:.*dl_vlan=99' ovs-vswitchd.log]) > +OVS_WAIT_UNTIL([grep 'flow_add:.*vlan(vid=99' ovs-vswitchd.log]) > > for i in 1 2; do > ovs-appctl netdev-dummy/receive p1 > 'in_port(1),eth(src=50:54:00:00:00:09,dst=50:54:00:00:00:0a),eth_type(0x8100),vlan(vid=99,pcp=7),encap(eth_type(0x1234))' > @@ -7520,10 +7520,10 @@ > recirc_id(0),in_port(1),eth_type(0x8100),vlan(vid=99,pcp=7/0x0),encap(eth_type(0 > # Check that the new flow matches the CFI bit, while both vid and pcp > # are wildcarded. > AT_CHECK([grep '\(modify\)\|\(flow_add\)' ovs-vswitchd.log | strip_ufid > ], [0], [dnl > -dpif_netdev|DBG|flow_add: > recirc_id=0,in_port=1,vlan_tci=0x0000,dl_type=0x1234, actions:100 > +dpif_netdev|DBG|flow_add: recirc_id(0),in_port(1),eth_type(0x1234), > actions:100 > dpif|DBG|dummy@ovs-dummy: put[[modify]] > skb_priority(0/0),skb_mark(0/0),recirc_id(0),dp_hash(0/0),in_port(1),eth(src=50:54:00:00:00:09/00:00:00:00:00:00,dst=50:54:00:00:00:0a/00:00:00:00:00:00),eth_type(0x1234) > dpif|DBG|dummy@ovs-dummy: put[[modify]] > skb_priority(0/0),skb_mark(0/0),recirc_id(0),dp_hash(0/0),in_port(1),eth(src=50:54:00:00:00:09/00:00:00:00:00:00,dst=50:54:00:00:00:0a/00:00:00:00:00:00),eth_type(0x1234), > actions:100 > -dpif_netdev|DBG|flow_add: > recirc_id=0,in_port=1,dl_vlan=99,dl_type=0x1234, actions:drop > +dpif_netdev|DBG|flow_add: > recirc_id(0),in_port(1),eth_type(0x8100),vlan(vid=99,pcp=7/0x0),encap(eth_type(0x1234)), > actions:drop > ]) > OVS_VSWITCHD_STOP > AT_CLEANUP > diff --git a/tests/pmd.at b/tests/pmd.at > index a9e6783..3d219ff 100644 > --- a/tests/pmd.at > +++ b/tests/pmd.at > @@ -167,7 +167,7 @@ AT_CHECK([grep -A 1 'miss upcall' ovs-vswitchd.log | > tail -n 1], [0], [dnl > > > skb_priority(0),skb_mark(0),recirc_id(0),dp_hash(0),in_port(1),eth(src=50:54:00:00:00:77,dst=50:54:00:00:01:78),eth_type(0x0800),ipv4(src=10.0.0.2,dst=10.0.0.1,proto=1,tos=0,ttl=64,frag=no),icmp(type=8,code=0) > ]) > AT_CHECK([cat ovs-vswitchd.log | filter_flow_install | strip_xout], [0], > [dnl > -recirc_id=0,ip,in_port=1,vlan_tci=0x0000/0x1fff,dl_src=50:54:00:00:00:77,dl_dst=50:54:00:00:01:78,nw_frag=no, > actions: <del> > +recirc_id(0),in_port(1),eth(src=50:54:00:00:00:77,dst=50:54:00:00:01:78),eth_type(0x0800),ipv4(frag=no), > actions: <del> > ]) > > AT_CHECK([ovs-appctl dpif-netdev/pmd-stats-show | sed > SED_NUMA_CORE_PATTERN | sed '/cycles/d' | grep pmd -A 4], [0], [dnl > -- > 2.5.0 > > _______________________________________________ > dev mailing list > [email protected] > http://openvswitch.org/mailman/listinfo/dev > _______________________________________________ dev mailing list [email protected] http://openvswitch.org/mailman/listinfo/dev
