Page MenuHomeFreeBSD

Adjust stat counters for Intel drivers.

Authored by jhb on Apr 29 2015, 7:09 PM.
Referenced Files
Unknown Object (File)
Thu, Jan 12, 3:08 PM
Unknown Object (File)
Dec 30 2022, 2:19 PM
Unknown Object (File)
Dec 29 2022, 5:19 PM
Unknown Object (File)
Dec 28 2022, 4:54 AM
Unknown Object (File)
Mar 31 2017, 6:52 AM
Unknown Object (File)
Mar 31 2017, 2:53 AM
Unknown Object (File)
Jan 4 2017, 8:50 AM
Unknown Object (File)
Jan 2 2017, 12:17 PM



Various fixes to the stats in igb(4) and ixgbe(4).

  • Use hardware counters for ifnet stats in igb(4) when possible. This ensures these stats include packets that bypass the regular stack via netmap.
  • Don't derefence values off the end of the igb(4) VF stats structure. Instead, add a dedicated if_get_counter method for igb(4) VF interfaces.
  • Report missed packets on igb(4) as input queue drops rather than an input error.
  • Report bug_ring drop counts as output queue drops for igb(4) and ixgbe(4).
  • Export the buf_ring drop stats for individual rings via sysctl on ixgbe(4).
Test Plan
  • Booted this on HEAD on a machine with regular igb and stats still work correctly.
  • I was able to test a version of this for 10 and verify that missed packets and buf_ring drops showed up correctly. However, 10 is quite different from HEAD due to if_get_counter. I was not able to repeat those earlier tests under HEAD.

Diff Detail

rS FreeBSD src repository - subversion
Lint Not Applicable
Tests Not Applicable

Event Timeline

jhb retitled this revision from to Adjust stat counters for Intel drivers..
jhb updated this object.
jhb edited the test plan for this revision. (Show Details)
jhb added reviewers: jfv, erj.
jhb added a subscriber: adrian.
jhb edited edge metadata.
  • Properly store output queue drops in oqdrops instead of iqdrops.
jfv edited edge metadata.

Looks good, thanks much John!

This revision is now accepted and ready to land.Apr 29 2015, 8:38 PM
This revision was automatically updated to reflect the committed changes.