Looking for feedback on change to iflib and transmit queuing

From: Eric Joyner <erj_at_freebsd.org>
Date: Fri, 29 Jul 2022 21:00:38 UTC
Hi, I have a Phabricator review here that I was hoping to get some feedback
on: https://reviews.freebsd.org/D34742

In short, there's already some functionality in current and 13.1-RELEASE
that allows a driver to pick a TX queue for a packet, but this extends that
support to have iflib do some limited parsing in order to give the driver
function extra information in order to make a decision. Performance-wise
this doesn't seem to affect much; I looked at it in VTune across different
types of netperf runs with small packets that want L4 checksums.

In fact, that made me find out that iflib_parse_header() does tons of
unnecessary m_pullups() on small UDP packets; as much as 10% of the CPU
time can be spent just doing that. It should maybe get modified to not
pull-up to the TCP header length for UDP packets.

- Eric