mirror of https://gitee.com/openkylin/linux.git
sched, act: allow to clear all actions as well
When we change the list of action on a given filter, currently we don't change it to empty. This is a bug, we should allow to change to whatever users given. Cc: Jamal Hadi Salim <jhs@mojatatu.com> Cc: David S. Miller <davem@davemloft.net> Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com> Signed-off-by: Cong Wang <cwang@twopensource.com> Signed-off-by: Jamal Hadi Salim <jhs@mojatatu.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
2f7ef2f879
commit
a49eb42a34
|
@ -544,14 +544,12 @@ void tcf_exts_change(struct tcf_proto *tp, struct tcf_exts *dst,
|
||||||
struct tcf_exts *src)
|
struct tcf_exts *src)
|
||||||
{
|
{
|
||||||
#ifdef CONFIG_NET_CLS_ACT
|
#ifdef CONFIG_NET_CLS_ACT
|
||||||
if (!list_empty(&src->actions)) {
|
LIST_HEAD(tmp);
|
||||||
LIST_HEAD(tmp);
|
tcf_tree_lock(tp);
|
||||||
tcf_tree_lock(tp);
|
list_splice_init(&dst->actions, &tmp);
|
||||||
list_splice_init(&dst->actions, &tmp);
|
list_splice(&src->actions, &dst->actions);
|
||||||
list_splice(&src->actions, &dst->actions);
|
tcf_tree_unlock(tp);
|
||||||
tcf_tree_unlock(tp);
|
tcf_action_destroy(&tmp, TCA_ACT_UNBIND);
|
||||||
tcf_action_destroy(&tmp, TCA_ACT_UNBIND);
|
|
||||||
}
|
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(tcf_exts_change);
|
EXPORT_SYMBOL(tcf_exts_change);
|
||||||
|
|
Loading…
Reference in New Issue