summaryrefslogtreecommitdiff
path: root/tools/perf/scripts/python
diff options
context:
space:
mode:
authorXuanqiang Luo <luoxuanqiang@kylinos.cn>2026-09-10 17:34:12 +0800
committerJakub Kicinski <kuba@kernel.org>2026-09-15 17:03:09 -0700
commit6e05e46fa821a5c1b281355f1f622ac76cb6080a (patch)
treedefe45ca6b54051500dd6cbf6facb4bfa1063ca4 /tools/perf/scripts/python
parent15989abd74f16f44bf953d056b95f1d2fda9b0cd (diff)
downloadlinux-6e05e46fa821a5c1b281355f1f622ac76cb6080a.tar.gz
linux-6e05e46fa821a5c1b281355f1f622ac76cb6080a.zip
net/sched: act_api: release tail references on DELACTION failure
A batched RTM_DELACTION request takes a temporary reference on each action before attempting any deletion. tcf_action_delete() clears each processed slot and drops its temporary reference before attempting the deletion. If deletion fails, tca_action_gd() calls tcf_action_put_many() to release the remaining references, but its tcf_act_for_each_action() iterator stops at the first NULL slot. When a batch stops at an action bound to a filter, this leaks a reference on each subsequent action. A later delete of an unbound action can then return success without removing it from the IDR. Walk the full array in tcf_action_put_many() and skip NULL slots to release the references held on the unprocessed actions. Fixes: a0e947c9ccff ("net/sched: act_api: avoid non-contiguous action array") Cc: stable@vger.kernel.org Signed-off-by: Xuanqiang Luo <luoxuanqiang@kylinos.cn> Link: https://patch.msgid.link/20260910093413.34509-2-xuanqiang.luo@linux.dev Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'tools/perf/scripts/python')
0 files changed, 0 insertions, 0 deletions