ipv6: take care of rt6_stats
Currently, most of the rt6_stats are not hooked up correctly. As the last part of this patch series, hook up all existing rt6_stats and add one new stat fib_rt_uncache to indicate the number of routes in the uncached list. For details of the stats, please refer to the comments added in include/net/ip6_fib.h. Note: fib_rt_alloc and fib_rt_uncache are not guaranteed to be modified under a lock. So atomic_t is used for them. Signed-off-by: Wei Wang <weiwan@google.com> Signed-off-by: Martin KaFai Lau <kafai@fb.com> Signed-off-by: Eric Dumazet <edumazet@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
66f5d6ce53
commit
81eb8447da
@@ -297,12 +297,15 @@ struct fib6_walker {
|
||||
};
|
||||
|
||||
struct rt6_statistics {
|
||||
__u32 fib_nodes;
|
||||
__u32 fib_route_nodes;
|
||||
__u32 fib_rt_alloc; /* permanent routes */
|
||||
__u32 fib_rt_entries; /* rt entries in table */
|
||||
__u32 fib_rt_cache; /* cache routes */
|
||||
__u32 fib_discarded_routes;
|
||||
__u32 fib_nodes; /* all fib6 nodes */
|
||||
__u32 fib_route_nodes; /* intermediate nodes */
|
||||
__u32 fib_rt_entries; /* rt entries in fib table */
|
||||
__u32 fib_rt_cache; /* cached rt entries in exception table */
|
||||
__u32 fib_discarded_routes; /* total number of routes delete */
|
||||
|
||||
/* The following stats are not protected by any lock */
|
||||
atomic_t fib_rt_alloc; /* total number of routes alloced */
|
||||
atomic_t fib_rt_uncache; /* rt entries in uncached list */
|
||||
};
|
||||
|
||||
#define RTN_TL_ROOT 0x0001
|
||||
|
||||
Reference in New Issue
Block a user