diff options
author | Rick Jones <rick.jones2@hp.com> | 2015-08-07 21:10:37 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-08-10 23:46:21 +0300 |
commit | fb811395cd5a71b9e94a068f524a6f4a21b67bdb (patch) | |
tree | 0ad6d565998e141581697b0e83cda9e13d0fab94 /include/uapi/linux/neighbour.h | |
parent | a7854037da006a7472c48773e3190db55217ec9b (diff) | |
download | linux-fb811395cd5a71b9e94a068f524a6f4a21b67bdb.tar.xz |
net: add explicit logging and stat for neighbour table overflow
Add an explicit neighbour table overflow message (ratelimited) and
statistic to make diagnosing neighbour table overflows tractable in
the wild.
Diagnosing a neighbour table overflow can be quite difficult in the wild
because there is no explicit dmesg logged. Callers to neighbour code
seem to use net_dbg_ratelimit when the neighbour call fails which means
the "base message" is not emitted and the callback suppressed messages
from the ratelimiting can end-up juxtaposed with unrelated messages.
Further, a forced garbage collection will increment a stat on each call
whether it was successful in freeing-up a table entry or not, so that
statistic is only a hint. So, add a net_info_ratelimited message and
explicit statistic to the neighbour code.
Signed-off-by: Rick Jones <rick.jones2@hp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/uapi/linux/neighbour.h')
-rw-r--r-- | include/uapi/linux/neighbour.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/uapi/linux/neighbour.h b/include/uapi/linux/neighbour.h index 2e35c61bbdd1..788655bfa0f3 100644 --- a/include/uapi/linux/neighbour.h +++ b/include/uapi/linux/neighbour.h @@ -106,6 +106,7 @@ struct ndt_stats { __u64 ndts_rcv_probes_ucast; __u64 ndts_periodic_gc_runs; __u64 ndts_forced_gc_runs; + __u64 ndts_table_fulls; }; enum { |