aboutsummaryrefslogtreecommitdiff
path: root/include/timespecops.h
diff options
context:
space:
mode:
authorDmitry Salychev <dsl@FreeBSD.org>2026-08-26 13:34:36 +0000
committerDmitry Salychev <dsl@FreeBSD.org>2026-09-10 10:29:22 +0000
commit94a6919efda0638bd35a2cae2c4748a91c7fce66 (patch)
treec600bd57d8922a33db1a9a6ae48ecc9bd1d9b1b6 /include/timespecops.h
parentfc33bbb024502d2c90289ff4b62a8ec4d20df238 (diff)
dpaa2: Allocate DMA tag per Rx bufferHEADmain
Previously each channel allocated its own set of buffers using the channel's DMA tag which causes a DMA lock contention under load. Even a single saturated 1 Gbps link caused ~50,000 adaptive mutex spin events (as per lockstat) per second. With the proposed approach there's no more contention on the channel's DMA mutex and the adaptive mutex spin events dropped to ~6,000/s. Stress test where iperf3 pushed as much traffic as possible to the 4 ports revealed that throughput drops from expected 940 Mbps down to 600-800 on each link with the "bounce pages lock" generating ~110,000 adaptive mutex spin events per second, but this is to be addressed later on. Tested by: flo_purplekraken.com, gnikl_justmail.de, bofh@ MFC after: 3 weeks Differential Revision: reviews.freebsd.org/D59463 Event: EuroBSDcon Devsummit 2026
Diffstat (limited to 'include/timespecops.h')
0 files changed, 0 insertions, 0 deletions