summaryrefslogtreecommitdiff
path: root/include/net/ip6_fib.h
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2020-05-19 15:50:34 +0200
committerThomas Gleixner <tglx@linutronix.de>2020-05-19 15:50:34 +0200
commit1ed0948eea079a4c802d08cdb2e8db1eee0860f1 (patch)
treecf7d2861d1557a305b0c7786661b9e99c343d215 /include/net/ip6_fib.h
parent68f0f2690e183306b52671a9ad09fb31808b0500 (diff)
parent6553896666433e7efec589838b400a2a652b3ffa (diff)
downloadlinux-next-1ed0948eea079a4c802d08cdb2e8db1eee0860f1.tar.gz
linux-next-1ed0948eea079a4c802d08cdb2e8db1eee0860f1.zip
Merge tag 'noinstr-lds-2020-05-19' into core/rcu
Get the noinstr section and annotation markers to base the RCU parts on.
Diffstat (limited to 'include/net/ip6_fib.h')
-rw-r--r--include/net/ip6_fib.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/net/ip6_fib.h b/include/net/ip6_fib.h
index 80262d2980f5..1d98828c6649 100644
--- a/include/net/ip6_fib.h
+++ b/include/net/ip6_fib.h
@@ -203,6 +203,7 @@ struct fib6_info {
struct rt6_info {
struct dst_entry dst;
struct fib6_info __rcu *from;
+ int sernum;
struct rt6key rt6i_dst;
struct rt6key rt6i_src;
@@ -291,6 +292,9 @@ static inline u32 rt6_get_cookie(const struct rt6_info *rt)
struct fib6_info *from;
u32 cookie = 0;
+ if (rt->sernum)
+ return rt->sernum;
+
rcu_read_lock();
from = rcu_dereference(rt->from);