ipv6: Create RTF_CACHE clone when FLOWI_FLAG_KNOWN_NH is set
[firefly-linux-kernel-4.4.55.git] / include / net / ip6_fib.h
index a4bece6797da217edf561c1099ae9d02de14a4e7..5556111022eba601781ec7cff0b963b7d72584dc 100644 (file)
@@ -161,6 +161,9 @@ static inline void rt6_update_expires(struct rt6_info *rt0, int timeout)
 
 static inline u32 rt6_get_cookie(const struct rt6_info *rt)
 {
+       if (unlikely(rt->dst.flags & DST_NOCACHE))
+               rt = (struct rt6_info *)(rt->dst.from);
+
        return rt->rt6i_node ? rt->rt6i_node->fn_sernum : 0;
 }