aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net
diff options
context:
space:
mode:
authorVlad Buslov <vladbu@mellanox.com>2018-09-19 16:37:29 -0700
committerDavid S. Miller <davem@davemloft.net>2018-09-21 08:55:05 -0700
commitec3ed293e76656c1fb5388249e1e61c7d274abfc (patch)
tree604673128c39e122b387ecee8db0ad222eb4152d /drivers/net
parentMerge branch 'net-wean-netfilter-from-fib_nh' (diff)
downloadlinux-dev-ec3ed293e76656c1fb5388249e1e61c7d274abfc.tar.xz
linux-dev-ec3ed293e76656c1fb5388249e1e61c7d274abfc.zip
net_sched: change tcf_del_walker() to take idrinfo->lock
Action API was changed to work with actions and action_idr in concurrency safe manner, however tcf_del_walker() still uses actions without taking a reference or idrinfo->lock first, and deletes them directly, disregarding possible concurrent delete. Change tcf_del_walker() to take idrinfo->lock while iterating over actions and use new tcf_idr_release_unsafe() to release them while holding the lock. And the blocking function fl_hw_destroy_tmplt() could be called when we put a filter chain, so defer it to a work queue. Signed-off-by: Vlad Buslov <vladbu@mellanox.com> [xiyou.wangcong@gmail.com: heavily modify the code and changelog] Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net')
0 files changed, 0 insertions, 0 deletions