X-Git-Url: http://pilppa.org/gitweb/?a=blobdiff_plain;f=net%2Fsched%2Fcls_api.c;h=173fcc4b050ddac8b4470c9616216974312bc121;hb=dc0a0011cfa8ff01b86859006f4db3656c9a896b;hp=16e7ac9774e5aeab547d6aee1fabcab56efc7480;hpb=f2e4bd2b37bf072babc6a1f6c2a7ef53b7b046ad;p=linux-2.6-omap-h63xx.git diff --git a/net/sched/cls_api.c b/net/sched/cls_api.c index 16e7ac9774e..173fcc4b050 100644 --- a/net/sched/cls_api.c +++ b/net/sched/cls_api.c @@ -531,7 +531,8 @@ void tcf_exts_change(struct tcf_proto *tp, struct tcf_exts *dst, if (src->action) { struct tc_action *act; tcf_tree_lock(tp); - act = xchg(&dst->action, src->action); + act = dst->action; + dst->action = src->action; tcf_tree_unlock(tp); if (act) tcf_action_destroy(act, TCA_ACT_UNBIND);