aboutsummaryrefslogtreecommitdiffstats
path: root/net/sched/act_mirred.c
diff options
context:
space:
mode:
authorCong Wang <xiyou.wangcong@gmail.com>2018-08-19 12:22:05 -0700
committerDavid S. Miller <davem@davemloft.net>2018-08-21 12:45:44 -0700
commitedfaf94fa705181eeb2fe0c36c0b902dedbd40f1 (patch)
tree72127013952f5bc69ceb15132b8d67060db120da /net/sched/act_mirred.c
parenthv_netvsc: ignore devices that are not PCI (diff)
downloadlinux-dev-edfaf94fa705181eeb2fe0c36c0b902dedbd40f1.tar.xz
linux-dev-edfaf94fa705181eeb2fe0c36c0b902dedbd40f1.zip
net_sched: improve and refactor tcf_action_put_many()
tcf_action_put_many() is mostly called to clean up actions on failure path, but tcf_action_put_many(&actions[acts_deleted]) is used in the ugliest way: it passes a slice of the array and uses an additional NULL at the end to avoid out-of-bound access. acts_deleted is completely unnecessary since we can teach tcf_action_put_many() scan the whole array and checks against NULL pointer. Which also means tcf_action_delete() should set deleted action pointers to NULL to avoid double free. Fixes: 90b73b77d08e ("net: sched: change action API to use array of pointers to actions") Cc: Jiri Pirko <jiri@mellanox.com> Cc: Vlad Buslov <vladbu@mellanox.com> Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sched/act_mirred.c')
0 files changed, 0 insertions, 0 deletions