diff options
author | Herbert Xu <herbert@gondor.apana.org.au> | 2007-11-14 06:33:32 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-01-28 23:53:37 +0100 |
commit | b4ce92775c2e7ff9cf79cca4e0a19c8c5fd6287b (patch) | |
tree | c057ff62b03582493b74005f7959a0207e748468 /include/net/ip6_fib.h | |
parent | [IPSEC]: Use dst->header_len when resizing on output (diff) | |
download | linux-b4ce92775c2e7ff9cf79cca4e0a19c8c5fd6287b.tar.xz linux-b4ce92775c2e7ff9cf79cca4e0a19c8c5fd6287b.zip |
[IPV6]: Move nfheader_len into rt6_info
The dst member nfheader_len is only used by IPv6. It's also currently
creating a rather ugly alignment hole in struct dst. Therefore this patch
moves it from there into struct rt6_info.
It also reorders the fields in rt6_info to minimize holes.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/ip6_fib.h')
-rw-r--r-- | include/net/ip6_fib.h | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/include/net/ip6_fib.h b/include/net/ip6_fib.h index 857821360bb6..4cefcffe773e 100644 --- a/include/net/ip6_fib.h +++ b/include/net/ip6_fib.h @@ -99,16 +99,21 @@ struct rt6_info u32 rt6i_flags; u32 rt6i_metric; atomic_t rt6i_ref; - struct fib6_table *rt6i_table; - struct rt6key rt6i_dst; - struct rt6key rt6i_src; + /* more non-fragment space at head required */ + unsigned short nfheader_len; u8 rt6i_protocol; + struct fib6_table *rt6i_table; + + struct rt6key rt6i_dst; + #ifdef CONFIG_XFRM u32 rt6i_flow_cache_genid; #endif + + struct rt6key rt6i_src; }; static inline struct inet6_dev *ip6_dst_idev(struct dst_entry *dst) |