Tc filter not working on different subclasses

I have added a qdisc on ifb0 interface and added a class with a limit of 30000kbit. I have added two subclasses having limit of 4000kbit and 500kbit.

tc qdisc del dev ifb0 root
tc qdisc add dev ifb0 root handle 1: hfsc default 10
tc class add dev ifb0 parent 1: classid 1:1 hfsc sc rate 30000kbit ul rate 30000kbit

tc class add dev ifb0 parent 1:1 classid 1:10 hfsc sc rate 4000kbit ul rate 4000kbit
tc class add dev ifb0 parent 1:1 classid 1:20 hfsc sc rate 500kbit ul rate 500kbit

tc qdisc add dev ifb0 parent 1:10 handle 100: fq_codel limit 800 quantum 300 noecn
tc qdisc add dev ifb0 parent 1:20 handle 200: fq_codel limit 800 quantum 300 noecn

Now when I am adding filter for mirroring on ifb0 then it limits the speed by 4000kbit only however I have tried passing flowid 1:10 as well as 1:20. But bith time it will limit the speed to 4000kbit only.

How to apply filter correctly?
My current filter :

tc filter add dev br-2 parent ffff:  protocol ip prio 1 u32 match u32 0 0 flowid 1:10 action connmark action mirred egress redirect dev ifb0