]>
git.proxmox.com Git - mirror_ovs.git/blob - datapath/linux/compat/include/net/ip6_fib.h
2 * Linux INET6 implementation
5 * Pedro Roque <roque@di.fc.ul.pt>
7 * This program is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU General Public License
9 * as published by the Free Software Foundation; either version
10 * 2 of the License, or (at your option) any later version.
13 #ifndef _IP6_FIB_WRAPPER_H
14 #define _IP6_FIB_WRAPPER_H
16 #include_next <net/ip6_fib.h>
18 #ifndef HAVE_RT6_GET_COOKIE
21 #define RTF_PCPU 0x40000000
25 #define RTF_LOCAL 0x80000000
28 #define rt6_get_cookie rpl_rt6_get_cookie
29 static inline u32
rt6_get_cookie(const struct rt6_info
*rt
)
31 if (rt
->rt6i_flags
& RTF_PCPU
||
32 #ifdef HAVE_DST_NOCACHE
33 (unlikely(rt
->dst
.flags
& DST_NOCACHE
) && rt
->dst
.from
))
35 (unlikely(!list_empty(&rt
->rt6i_uncached
)) && rt
->dst
.from
))
37 rt
= (struct rt6_info
*)(rt
->dst
.from
);
39 return rt
->rt6i_node
? rt
->rt6i_node
->fn_sernum
: 0;