This is a question in the form of a review...
Unit Tests Skipped
Is there any document or source to tell whether this was fixed after SPT/KBL?
I'm not actually sure what this does, something to receive descriptor? As far as I can tell there is no public specification update that matches. but other platforms limit it to SPT/KBL as well. Should it be all I219? I218? Just SPT?
This errata is in the public document entitled "I218-I219 Specification Update" but other platforms seem to only apply it to e1000_pch_spt as we did. Is that correct? The specification update does not seem to indicate future hw fixes if I understand correctly.
@erj I don't see this on other platforms link checks, do you recall what it works around?
The I218 and I219 datasheets are not really usable versus previous generations. NetBSD (which has a very interesting e1000 driver) doesn't know what this is either.
This part, altering the TARC, is specific to hw->mac.type == e1000_pch_spt after careful rereading of the specification update. Cannon Point is also called series 300 chipsets, which the spec update mentions as fixed.
In testing on my SPT I219, this workaround reduces performance of the NIC by 200mbit/s so a better fix is to prevent this generation from using TSO, which I may implement later. It would be nice to find out from Intel if a better workaround can be used like limiting tso size instead.