aboutsummaryrefslogtreecommitdiffstats
path: root/net/mpls/mpls_iptunnel.c
diff options
context:
space:
mode:
authorDavid Ahern <dsa@cumulusnetworks.com>2017-03-31 07:13:59 -0700
committerDavid S. Miller <davem@davemloft.net>2017-04-01 20:21:44 -0700
commit39eb8cd1758886072ceb93607827722a11592ba2 (patch)
tree9edfe97cac2f15e5c9372ecb276bef9b4a38446d /net/mpls/mpls_iptunnel.c
parentudp: use sk_protocol instead of pcflag to detect udplite sockets (diff)
downloadlinux-dev-39eb8cd1758886072ceb93607827722a11592ba2.tar.xz
linux-dev-39eb8cd1758886072ceb93607827722a11592ba2.zip
net: mpls: rt_nhn_alive and nh_flags should be accessed using READ_ONCE
The number of alive nexthops for a route (rt->rt_nhn_alive) and the flags for a next hop (nh->nh_flags) are modified by netdev event handlers. The event handlers run with rtnl_lock held so updates are always done with the lock held. The packet path accesses the fields under the rcu lock. Since those fields can change at any moment in the packet path, both fields should be accessed using READ_ONCE. Updates to both fields should use WRITE_ONCE. Update mpls_select_multipath (packet path) and mpls_ifdown and mpls_ifup (event handlers) accordingly. Signed-off-by: David Ahern <dsa@cumulusnetworks.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/mpls/mpls_iptunnel.c')
0 files changed, 0 insertions, 0 deletions