aboutsummaryrefslogtreecommitdiff
path: root/contrib/kyua/cli/(developers-only)
diff options
context:
space:
mode:
authorAndrew Gallatin <gallatin@FreeBSD.org>2026-11-05 16:35:41 +0000
committerAndrew Gallatin <gallatin@FreeBSD.org>2026-11-05 16:55:28 +0000
commit4b732459f030a568a93dbe31230c5a17caa035e5 (patch)
tree60ef941c97f93cb7ae4d6b30cfbf684c4768095a /contrib/kyua/cli/(developers-only)
parent2734bbbcba3cd6ff2bf4382fb6e85b884beb966e (diff)
iflib: Use a single tx dma mapHEADmain
The need for a separate map for TSO and non-TSO seems to have arisen from a misunderstanding about the DMA requirements for Intel drivers like ice/ixl/iavf. Specifically, this Intel hardware has a quirk where no more than N (=8) segs can be DMA'ed per packet on the wire. This limit was enforced using a DMA map with a low segment limit for non-TSO and a driver specific check for TSO. This led to a *lot* of complexity in iflib (~80 extra lines of code that this change removes) when the limit can simply be enforced via the existing EFBIG mechanisms. This change adds a new flag, IFLIB_SPARSE_TX, that drivers for hardware with this quirk must set. When set, it causes non-TSO sends that exceed isc_tx_nsegment to be treated as if bus_dmamap_load_mbuf_sg() had returned EFBIG. Due to the API/KABI change, I've bumped the FreeBSD version as well. Note kgalazka suggested the flag, rather than a more awkward mechanism that I had in my initial patch. Reviewed by: kbowling Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D60175
Diffstat (limited to 'contrib/kyua/cli/(developers-only)')
0 files changed, 0 insertions, 0 deletions