when group refcnt > 1, then table=5 and group table don't delete

Bug #1734004 reported by 525215713@qq.com
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
networking-sfc
New
Undecided
Unassigned

Bug Description

when group refcnt > 1, then table=5 and group table don't delete

Let's conside the folowing situation:
Port Chain 1: PG1->PG2->PG3->PG4
Port Chain 2: PG5->PG3->PG4

As above examples, the the next_group_id of PG2 and PG5 is PG3, so the group_refcnt is 2. Meanwhile, let's assume that
the PG3 contains two port-pair PP5 and PP6. As the result,there are some flow tables below:

For PG2 and PG5, the group table is same as below:
group_id=3,type=select,buckets=bucket=weight=1,mod_dl_dst=PP5 ingress MAC,resubmit(,5),
                       buckets=bucket=weight=1,mod_dl_dst=PP6 ingress MAC,resubmit(,5)

For PG2, the table=5 as below:
table=5,priority=0,dl_dst=PP5 ingress MAC,eth_type=IP,actions=mod_vlan_vid:xxx, push_mpls:0x8847,set_mpls_label=label1, ttl=ttl1,resubmit(,10)
table=5,priority=0,dl_dst=PP6 ingress MAC,eth_type=IP,actions=mod_vlan_vid:xxx, push_mpls:0x8847,set_mpls_label=label1, ttl=ttl1,resubmit(,10)

For PG5, the table=5 as below:
table=5,priority=0,dl_dst=PP5 ingress MAC,eth_type=IP,actions=mod_vlan_vid:xxx, push_mpls:0x8847,set_mpls_label=label2, ttl=ttl2,resubmit(,10)
table=5,priority=0,dl_dst=PP6 ingress MAC,eth_type=IP,actions=mod_vlan_vid:xxx, push_mpls:0x8847,set_mpls_label=label2, ttl=ttl2,resubmit(,10)

So, the flow of table 5 has the same match fields, but different mpls label and ttl. How to distinguish this condition. I think this is a bug,
because ovs can not support flow table 5 with the same match fields but with different actions. Even if the ovs support, when user delete port chian1,
because the group refcnt is larger than 1, so the table 5 of PG2 cannot delete, so this is a bug.

Do you think?

Tags: master
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.