Akshat Kakkar <[email protected]> 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 [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html