History

ipv6: fib: Provide offload indication using nexthop flags

IPv6 routes currently lack nexthop flags as in IPv4. This has several implications. In the forwarding path, it requires us to check the carrier state of the nexthop device and potentially ignore a linkdown route, instead of checking for RTNH_F_LINKDOWN. It also requires capable drivers to use the user facing IPv6-specific route flags to provide offload indication, instead of using the nexthop flags as in IPv4. Add nexthop flags to IPv6 routes in the 40 bytes hole and use it to provide offload indication instead of the RTF_OFFLOAD flag, which is removed while it's still not part of any official kernel release. In the near future we would like to use the field for the RTNH_F_{LINKDOWN,DEAD} flags, but this change is more involved and might not be ready in time for the current cycle.

Ido Schimmel committed 9 years ago

Commit fe400791 parent 26d15944 files · +7 −11Browse files

Showing the changes to include/uapi/linux (1 of 4 files). Show all

Unified · Split

include/uapi/linux/ipv6_route.h+0−1
@@ -35,7 +35,6 @@ · 34 unmodified lines
35#define RTF_PREF(pref) ((pref) << 27)35#define RTF_PREF(pref) ((pref) << 27)
36#define RTF_PREF_MASK 0x1800000036#define RTF_PREF_MASK 0x18000000
37 37
38#define RTF_OFFLOAD 0x20000000 /* offloaded route */
39#define RTF_PCPU 0x40000000 /* read-only: can not be set by user */38#define RTF_PCPU 0x40000000 /* read-only: can not be set by user */
40#define RTF_LOCAL 0x8000000039#define RTF_LOCAL 0x80000000
41 40