Right now we have no visibility into packet drops within netmap. Start
trying to make packet loss issues more visible by counting queue drops
in the transmit path, and in the input path for interfaces running in
emulated mode, where we place received packets in a bounded software
queue that is processed by rxsync.
Details
Details
- Reviewers
vmaffione - Commits
- rGdf40e30c9786: netmap: Try to count packet drops in emulated mode
Diff Detail
Diff Detail
- Repository
- rG FreeBSD src repository
- Lint
Lint Not Applicable - Unit
Tests Not Applicable
Event Timeline
Comment Actions
No objections for emulated mode, but keep in mind that patched drivers do not have the counters incremented to avoid the performance hit.
(Although we may revisit this with some proper overahd measurements in place).
Comment Actions
I think this is should be acceptable if we merely count drops though?
I do see that iflib_netmap_(tx|rx)sync() count packets and bytes, just once per call, which I expect avoids most of the performance hit.
Comment Actions
Yes, indeed, this is definitely fine! That was just a note on the historical approach.
We could later even increment the counters to emulated rxsync and txsync methods, since those increments would apply once per batch (like in iflib).