core: add stat to track unresolved discards in neighbor cache
authorNeil Horman <nhorman@tuxdriver.com>
Thu, 17 Jul 2008 03:50:49 +0000 (20:50 -0700)
committerDavid S. Miller <davem@davemloft.net>
Thu, 17 Jul 2008 03:50:49 +0000 (20:50 -0700)
commit9a6d276e85aa3d8f308fc5e8de6892daeb60ae5f
treef61e1ad988a037745794fb23004d5bf2f247800f
parented88098e25d77bef3b2ad8c9d8e2ebf454d9ccbf
core: add stat to track unresolved discards in neighbor cache

in __neigh_event_send, if we have a neighbour entry which is in
NUD_INCOMPLETE state, we enqueue any outbound frames to that neighbour
to the neighbours arp_queue, which is default capped to a length of 3
skbs.  If that queue exceeds its set length, it will drop an skb on
the queue to enqueue the newly arrived skb.  This results in a drop
for which we have no statistics incremented.  This patch adds an
unresolved_discards stat to /proc/net/stat/ndisc_cache to track these
lost frames.

Signed-off-by: Neil Horman <nhorman@tuxdriver.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/neighbour.h
net/core/neighbour.c