freebsd-dev/tools
Vincenzo Maffione 506336f2cd netmap: pkt-gen: init all slots of every tx ring
sender_body() uses OPT_COPY to copy the frame into the destination slot
for the first 100,000 packets. Then it removes OPT_COPY to improve
performance. The function always starts with the first tx ring.

If multiple tx rings are in use, it is possible that the initial 100k
packets will only use the first ring. After OPT_COPY is removed, there
may come a time when the first ring is full and sender_body() will move
to the next ring which was never initialized. As a result it will send
all zero packets. (This was discovered when the receiving NIC reported
rx errors.)

Before any transmissions, step through every tx ring and set
NS_BUF_CHANGED on every slot. That will force send_packets() to
initialize the slot when first used. Since it only copies when
necessary, it performs better than always setting OPT_COPY. With this
change, there is no reason for the "drop copy" code.

Submitted by:	Brian Poole <brian90013@gmail.com>
MFC after:	7 days
2023-03-06 17:22:09 +00:00
..
boot stand: Better documentation for full-test.sh 2023-02-18 19:53:19 -07:00
bsdbox bsdbox: remove previously broken telnet(d) support 2022-09-29 17:56:25 +01:00
build Add description for WITH_ATM 2023-03-03 08:52:39 +01:00
bus_space Add support for Python 3 and make it the default. 2019-06-30 02:29:12 +00:00
coccinelle copystr(9): Move to deprecate (attempt #2) 2020-05-25 16:40:48 +00:00
debugscripts since kld_deb.py was removed a while back, this script isn't useful 2020-08-11 22:33:56 +00:00
diag Move the ability to search for alternate UFS superblocks from fsck_ffs(8) 2022-08-13 12:43:40 -07:00
ifnet ifnet: Rename DrvAPI to "IfAPI" 2023-01-17 15:15:51 -05:00
kerneldoc Remove Doxyfiles for recently removed drivers. 2023-02-06 13:20:40 -05:00
LibraryReport
lua Move ifconfig SFP status functionality into libifconfig 2020-08-09 16:27:28 +00:00
pkgbase pkgbase: report errors via metalog reader exit status 2022-11-25 09:13:31 -05:00
regression fsx: more consistent debug output with -[RWU] 2023-01-06 21:49:28 -07:00
sched schedgraph.py: port to Python 3 2022-01-11 15:32:39 +02:00
test stress2: Fix a off-by-one error. Added check for argument file type 2023-03-06 10:03:43 +01:00
tools netmap: pkt-gen: init all slots of every tx ring 2023-03-06 17:22:09 +00:00
uma/smrstress tools/uma/smrstress: fix kthread exit 2022-07-31 00:40:12 +03:00
install.sh
make_libdeps.sh
README
tinder.sh

$FreeBSD$

This directory tree contains tools used for the maintenance and
testing of FreeBSD.  There is no toplevel Makefile structure since
these tools are not meant to be built as part of the standard system,
though there may be individual Makefiles in some of the subdirs.

Please read the README files in the subdirs for further information.