diff options
author | Jiri Pirko <jiri@mellanox.com> | 2017-08-04 14:29:15 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2017-08-04 11:21:24 -0700 |
commit | 9b0d4446b56904b59ae3809913b0ac760fa941a6 (patch) | |
tree | 1b6d353ef75496604e247b0ceec74e63cb228708 /net/sched/cls_rsvp.h | |
parent | 705c7091262d02b09eb686c24491de61bf42fdb2 (diff) | |
download | linux-9b0d4446b56904b59ae3809913b0ac760fa941a6.tar.gz linux-9b0d4446b56904b59ae3809913b0ac760fa941a6.tar.bz2 linux-9b0d4446b56904b59ae3809913b0ac760fa941a6.zip |
net: sched: avoid atomic swap in tcf_exts_change
tcf_exts_change is always called on newly created exts, which are not used
on fastpath. Therefore, simple struct copy is enough.
Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sched/cls_rsvp.h')
-rw-r--r-- | net/sched/cls_rsvp.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/sched/cls_rsvp.h b/net/sched/cls_rsvp.h index 0d9d07798699..4adb67a73491 100644 --- a/net/sched/cls_rsvp.h +++ b/net/sched/cls_rsvp.h @@ -518,7 +518,7 @@ static int rsvp_change(struct net *net, struct sk_buff *in_skb, tcf_bind_filter(tp, &n->res, base); } - tcf_exts_change(tp, &n->exts, &e); + tcf_exts_change(&n->exts, &e); rsvp_replace(tp, n, handle); return 0; } @@ -591,7 +591,7 @@ insert: if (f->tunnelhdr == 0) tcf_bind_filter(tp, &f->res, base); - tcf_exts_change(tp, &f->exts, &e); + tcf_exts_change(&f->exts, &e); fp = &s->ht[h2]; for (nfp = rtnl_dereference(*fp); nfp; |