On 20/05/2019 17:29, Jamal Hadi Salim wrote: > Maybe dump after each step and it will be easier to see what is > happening. > >> I don't *think* my changes can have caused this, but I'll try a test on a >> vanilla kernel just to make sure the same thing happens there. > > Possible an offload bug that was already in existence. I've now reproduced on vanilla net-next (63863ee8e2f6); the breakage occurs when I run `tc -s actions get action drop index 104`, even _without_ having previously deleted a rule. And in a correction to my last email, it turns out this *does* reproduce without offloading (I evidently didn't hit the right sequence to tickle the bug before).
# tc -stats filter show dev $vfrep parent ffff: filter protocol ip pref 49151 flower chain 0 filter protocol ip pref 49151 flower chain 0 handle 0x1 eth_type ipv4 skip_sw in_hw in_hw_count 1 action order 1: vlan push id 100 protocol 802.1Q priority 0 pipe index 3 ref 1 bind 1 installed 7 sec used 7 sec Action statistics: Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0) backlog 0b 0p requeues 0 action order 2: mirred (Egress Mirror to device $pf) pipe index 102 ref 1 bind 1 installed 7 sec used 3 sec Action statistics: Sent 306 bytes 3 pkt (dropped 0, overlimits 0 requeues 0) Sent software 0 bytes 0 pkt Sent hardware 306 bytes 3 pkt backlog 0b 0p requeues 0 action order 3: vlan pop pipe index 4 ref 1 bind 1 installed 7 sec used 7 sec Action statistics: Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0) backlog 0b 0p requeues 0 action order 4: gact action drop random type none pass val 0 index 104 ref 3 bind 2 installed 13 sec used 3 sec Action statistics: Sent 306 bytes 3 pkt (dropped 3, overlimits 0 requeues 0) Sent software 0 bytes 0 pkt Sent hardware 306 bytes 3 pkt backlog 0b 0p requeues 0 filter protocol arp pref 49152 flower chain 0 filter protocol arp pref 49152 flower chain 0 handle 0x1 eth_type arp skip_sw in_hw in_hw_count 1 action order 1: vlan push id 100 protocol 802.1Q priority 0 pipe index 1 ref 1 bind 1 installed 7 sec used 7 sec Action statistics: Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0) backlog 0b 0p requeues 0 action order 2: mirred (Egress Mirror to device $pf) pipe index 101 ref 1 bind 1 installed 7 sec used 5 sec Action statistics: Sent 64 bytes 1 pkt (dropped 0, overlimits 0 requeues 0) Sent software 0 bytes 0 pkt Sent hardware 64 bytes 1 pkt backlog 0b 0p requeues 0 action order 3: vlan pop pipe index 2 ref 1 bind 1 installed 7 sec used 7 sec Action statistics: Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0) backlog 0b 0p requeues 0 action order 4: gact action drop random type none pass val 0 index 104 ref 3 bind 2 installed 13 sec used 3 sec Action statistics: Sent 370 bytes 4 pkt (dropped 4, overlimits 0 requeues 0) Sent software 0 bytes 0 pkt Sent hardware 370 bytes 4 pkt backlog 0b 0p requeues 0 # tc -s actions get action drop index 104 total acts 0 action order 1: gact action drop random type none pass val 0 index 104 ref 3 bind 2 installed 27 sec used 17 sec Action statistics: Sent 370 bytes 4 pkt (dropped 4, overlimits 0 requeues 0) Sent software 0 bytes 0 pkt Sent hardware 370 bytes 4 pkt backlog 0b 0p requeues 0 # tc -stats filter show dev $vfrep parent ffff: filter protocol ip pref 49151 flower chain 0 filter protocol ip pref 49151 flower chain 0 handle 0x1 eth_type ipv4 skip_sw in_hw in_hw_count 1 action order 1: vlan push id 100 protocol 802.1Q priority 0 pipe index 3 ref 1 bind 1 installed 26 sec used 26 sec Action statistics: Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0) backlog 0b 0p requeues 0 action order 2: mirred (Egress Mirror to device $pf) pipe index 102 ref 1 bind 1 installed 26 sec used 22 sec Action statistics: Sent 306 bytes 3 pkt (dropped 0, overlimits 0 requeues 0) Sent software 0 bytes 0 pkt Sent hardware 306 bytes 3 pkt backlog 0b 0p requeues 0 action order 3: vlan pop pipe index 4 ref 1 bind 1 installed 26 sec used 26 sec Action statistics: Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0) backlog 0b 0p requeues 0 filter protocol arp pref 49152 flower chain 0 filter protocol arp pref 49152 flower chain 0 handle 0x1 eth_type arp skip_sw in_hw in_hw_count 1 action order 1: vlan push id 100 protocol 802.1Q priority 0 pipe index 1 ref 1 bind 1 installed 27 sec used 27 sec Action statistics: Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0) backlog 0b 0p requeues 0 action order 2: mirred (Egress Mirror to device $pf) pipe index 101 ref 1 bind 1 installed 27 sec used 17 sec Action statistics: Sent 256 bytes 4 pkt (dropped 0, overlimits 0 requeues 0) Sent software 0 bytes 0 pkt Sent hardware 256 bytes 4 pkt backlog 0b 0p requeues 0 action order 3: vlan pop pipe index 2 ref 1 bind 1 installed 27 sec used 27 sec Action statistics: Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0) backlog 0b 0p requeues 0 #