On Wed, Feb 11, 2026 at 06:12:29PM +0000, Bruce Richardson wrote: > The scalar Tx paths, with support for offloads and multiple mbufs > per packet, are almost identical across drivers ice, i40e, iavf and > the single-queue mode of idpf. Therefore, we can do some rework to > combine these code paths into a single function which is parameterized > by compile-time constants, allowing code saving to give us a single > path to optimize and maintain - apart from edge cases like IPSec > support in iavf. > > The ixgbe driver has a number of similarities too, which we take > advantage of where we can, but the overall descriptor format is > sufficiently different that its main scalar code path is kept > separate. > > Once merged, we can then optimize the drivers a bit to improve > performance, and also easily extend some drivers to use additional > paths for better performance, e.g. add the "simple scalar" path > to IDPF driver for better performance on platforms without AVX. > > V5: > - more updates following review including: > * dropped patch 19 for new EAL macro, and used struct alignment instead > * added extra comments for some code, e.g. reason to remove volatile > * dropped patch 22 marking a branch as unlikely > * split bugfix off patch 24 > * corrected idpf path selection logic to not assume in-order queue setup > Series applied to dpdk-next-net-intel
Thanks for all the reviews. /Bruce

