net: sched: cls_matchall: allow to delete filter
authorJiri Pirko <jiri@mellanox.com>
Mon, 17 Jun 2019 16:02:32 +0000 (18:02 +0200)
committerDavid S. Miller <davem@davemloft.net>
Mon, 17 Jun 2019 21:05:32 +0000 (14:05 -0700)
commitf517f2716c34087ca15a36e9f13dbca8bd2e3ffc
treec2e5b2c354efec574b0852a692caadd6b5389f32
parentad9bf5451945877c73ca3f49b803648363322f0e
net: sched: cls_matchall: allow to delete filter

Currently user is unable to delete the filter. See following example:
$ tc filter add dev ens16np1 ingress pref 1 handle 1 matchall action drop
$ tc filter show dev ens16np1 ingress
filter protocol all pref 1 matchall chain 0
filter protocol all pref 1 matchall chain 0 handle 0x1
  in_hw
        action order 1: gact action drop
         random type none pass val 0
         index 1 ref 1 bind 1

$ tc filter del dev ens16np1 ingress pref 1 handle 1 matchall action drop
RTNETLINK answers: Operation not supported

Implement tcf_proto_ops->delete() op and allow user to delete the filter.

Reported-by: Eli Cohen <eli@mellanox.com>
Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/sched/cls_matchall.c