]> git.baikalelectronics.ru Git - kernel.git/commit
igb: Record host memory receive overflow in net_stats
authorJesper Dangaard Brouer <hawk@comx.dk>
Tue, 26 May 2009 13:50:48 +0000 (13:50 +0000)
committerDavid S. Miller <davem@davemloft.net>
Wed, 27 May 2009 03:35:06 +0000 (20:35 -0700)
commit11ad1fd30f6c4eaf198f2d607e7bcaf7e8453c31
tree591865ec06a265346b9ed9c2750701f9f570bd2c
parentb896d82cc8cc4f09294028d26f68feddbedf8893
igb: Record host memory receive overflow in net_stats

Based on previous patch from Jesper Dangaard Brouer.

The RNBC (Receive No Buffers Count) register for the 82576, indicate
that frames were received when there were no available buffers in host
memory to store those frames (receive descriptor head and tail
pointers were equal).  The packet is still received by the NIC if
there is space in the FIFO on the NIC.

As the RNBC value is not a packet drop, the driver stores this value
in net_stats.rx_fifo_errors to indicate that there were no system
buffers available for the incoming packet.  Actual dropped packets
are counted in the MPC value.

Saving the stats in dev->net_stats makes it visible via
/proc/net/dev as "fifo", and thus viewable to ifconfig
as "overruns" and 'netstat -i' as "RX-OVR".

The Receive No Buffers Count (RNBC) can already be queried by
ethtool -S as "rx_no_buffer_count".

Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
CC: Jesper Dangaard Brouer <hawk@comx.dk>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/igb/igb_ethtool.c
drivers/net/igb/igb_main.c