diff options
author | Martin KaFai Lau <kafai@fb.com> | 2015-09-15 14:30:09 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-09-15 14:53:05 -0700 |
commit | 70da5b5c532f0ec8aa76b4f46158da5f010f34b3 (patch) | |
tree | 11b8e0054461b9788d669215416655f112545670 /include/net | |
parent | 8e3d5be7368107f0c27a1f8126d79b01a47e9567 (diff) | |
download | op-kernel-dev-70da5b5c532f0ec8aa76b4f46158da5f010f34b3.zip op-kernel-dev-70da5b5c532f0ec8aa76b4f46158da5f010f34b3.tar.gz |
ipv6: Replace spinlock with seqlock and rcu in ip6_tunnel
This patch uses a seqlock to ensure consistency between idst->dst and
idst->cookie. It also makes dst freeing from fib tree to undergo a
rcu grace period.
Signed-off-by: Martin KaFai Lau <kafai@fb.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net')
-rw-r--r-- | include/net/ip6_tunnel.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/include/net/ip6_tunnel.h b/include/net/ip6_tunnel.h index 60b4f40..65c2a93 100644 --- a/include/net/ip6_tunnel.h +++ b/include/net/ip6_tunnel.h @@ -33,8 +33,8 @@ struct __ip6_tnl_parm { }; struct ip6_tnl_dst { - spinlock_t lock; - struct dst_entry *dst; + seqlock_t lock; + struct dst_entry __rcu *dst; u32 cookie; }; |