From: Nicolas Dichtel <nicolas.dich...@6wind.com> Date: Thu, 28 Mar 2019 10:35:06 +0100
> It returned always NULL, thus it was never possible to get the filter. > > Example: > $ ip link add foo type dummy > $ ip link add bar type dummy > $ tc qdisc add dev foo clsact > $ tc filter add dev foo protocol all pref 1 ingress handle 1234 \ > matchall action mirred ingress mirror dev bar > > Before the patch: > $ tc filter get dev foo protocol all pref 1 ingress handle 1234 matchall > Error: Specified filter handle not found. > We have an error talking to the kernel > > After: > $ tc filter get dev foo protocol all pref 1 ingress handle 1234 matchall > filter ingress protocol all pref 1 matchall chain 0 handle 0x4d2 > not_in_hw > action order 1: mirred (Ingress Mirror to device bar) pipe > index 1 ref 1 bind 1 > > CC: Yotam Gigi <yot...@mellanox.com> > CC: Jiri Pirko <j...@mellanox.com> > Fixes: fd62d9f5c575 ("net/sched: matchall: Fix configuration race") > Signed-off-by: Nicolas Dichtel <nicolas.dich...@6wind.com> I'll apply this and queue it up for -stable, but we really should add a testcase to selftests for this if we don't have one already.