Akshat Kakkar <akshat.1...@gmail.com> wrote: [ CC Cong ]
> When I am trying to delete a single tc filter (i.e. specifying its > handle), it is deleting all the > filters with the same priority/preference. i.e. it is ignoring the > handle specified. > > But, When I am doing similar activity in hashtable 800: it is deleting only > the > specified filter, i.e. it is behaving as expected. > > I am unable to comprehend the reason for this difference in behaviour. > > Infact, in kernel 2.6.32 all is working as expected. However, in > kernel 3.1 and 4.1 it is having the behaviour as mentioned above. > > For example, following set of commands create a hashtable 15: and add > 2 filters to it. > > tc filter add dev eth0 parent 1:0 prio 5 handle 15: protocol ip u32 divisor > 256 > tc filter add dev eth0 protocol ip parent 1: prio 5 handle 15:2:2 u32 > ht 15:2: match ip src 10.0.0.2 flowid 1:10 > tc filter add dev eth0 protocol ip parent 1: prio 5 handle 15:2:3 u32 > ht 15:2: match ip src 10.0.0.3 flowid 1:10 > > Now following command DELETES ALL THE FILTERS, though it should only > delete FILTER 15:2:3 ! > tc filter del dev eth0 protocol ip parent 1: prio 5 handle 15:2:3 u32 > > O/p of tc filter show eth0 is this case is blank. As all filters are deleted. Happens since 1e052be69d045c8d0f82ff1116fd3e5a79661745 ("net_sched: destroy proto tp when all filters are gone"). -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html