freebsd-skq/tools/tools
melifaro 12580bcaa8 Kill custom in_matroute() radix mathing function removing one rte mutex lock.
Initially in_matrote() in_clsroute() in their current state was introduced by
r4105 20 years ago. Instead of deleting inactive routes immediately, we kept them
in route table, setting RTPRF_OURS flag and some expire time. After that, either
GC came or RTPRF_OURS got removed on first-packet. It was a good solution
in that days (and probably another decade after that) to keep TCP metrics.
However, after moving metrics to TCP hostcache in r122922, most of in_rmx
functionality became unused. It might had been used for flushing icmp-originated
routes before rte mutexes/refcounting, but I'm not sure about that.

So it looks like this is nearly impossible to make GC do its work nowadays:

in_rtkill() ignores non-RTPRF_OURS routes.
route can only become RTPRF_OURS after dropping last reference via rtfree()
which calls in_clsroute(), which, it turn, ignores UP and non-RTF_DYNAMIC routes.

Dynamic routes can still be installed via received redirect, but they
have default lifetime (no specific rt_expire) and no one has another trie walker
to call RTFREE() on them.

So, the changelist:
* remove custom rnh_match / rnh_close matching function.
* remove all GC functions
* partially revert r256695 (proto3 is no more used inside kernel,
  it is not possible to use rt_expire from user point of view, proto3 support
  is not complete)
* Finish r241884 (similar to this commit) and remove remaining IPv6 parts

MFC after:	1 month
2014-11-11 02:52:40 +00:00
..
aac NO_MAN= has been deprecated in favor of MAN= for some time, go ahead 2014-04-13 05:21:56 +00:00
ansify Reencode files from latin1 to UTF-8. 2011-12-29 12:33:27 +00:00
ath Add in decode for the AR9300 RX descriptor. 2014-10-04 08:32:15 +00:00
atsectl NO_MAN= has been deprecated in favor of MAN= for some time, go ahead 2014-04-13 05:21:56 +00:00
bootparttest Fix format string warnings. 2014-10-05 11:16:16 +00:00
build_option_survey
bus_autoconf Provide the correct path to bus_autoconf.sh. 2013-11-19 00:43:53 +00:00
cd2dvd Spelling fixes for tools/ 2011-12-30 00:04:11 +00:00
cfi NO_MAN= has been deprecated in favor of MAN= for some time, go ahead 2014-04-13 05:21:56 +00:00
commitsdb
crypto Include stdint.h to fix build. 2013-07-29 12:49:32 +00:00
cxgbetool cxgbetool: Catch up with r185979. One of MAP_ANON, MAP_PRIVATE, 2014-10-21 01:34:18 +00:00
cxgbtool NO_MAN= has been deprecated in favor of MAN= for some time, go ahead 2014-04-13 05:21:56 +00:00
drm NO_MAN= has been deprecated in favor of MAN= for some time, go ahead 2014-04-13 05:21:56 +00:00
editing
epfe
ether_reflect use .Mt to mark up email addresses consistently (part1) 2014-06-20 09:40:43 +00:00
find-sb NO_MAN= has been deprecated in favor of MAN= for some time, go ahead 2014-04-13 05:21:56 +00:00
fixwhite use .Mt to mark up email addresses consistently (part1) 2014-06-20 09:40:43 +00:00
gdb_regofs Remove ia64. 2014-07-07 00:27:09 +00:00
genericize Reencode files from latin1 to UTF-8. 2011-12-29 12:33:27 +00:00
hcomp Reencode files from latin1 to UTF-8. 2011-12-29 12:33:27 +00:00
html-mv
ifinfo NO_MAN= has been deprecated in favor of MAN= for some time, go ahead 2014-04-13 05:21:56 +00:00
ifpifa NO_MAN= has been deprecated in favor of MAN= for some time, go ahead 2014-04-13 05:21:56 +00:00
ipw NO_MAN= has been deprecated in favor of MAN= for some time, go ahead 2014-04-13 05:21:56 +00:00
iso Update URLs and fix regex to work with current version of the files. 2011-05-22 09:48:25 +00:00
iwi NO_MAN= has been deprecated in favor of MAN= for some time, go ahead 2014-04-13 05:21:56 +00:00
iwn NO_MAN= has been deprecated in favor of MAN= for some time, go ahead 2014-04-13 05:21:56 +00:00
kdrv
kernelcruft
kerninclude
kernxref
kttcp Revert previous commit... 2012-10-10 08:36:38 +00:00
makeroot remove trailing white space... 2014-05-19 04:40:02 +00:00
mcgrab use .Mt to mark up email addresses consistently (part1) 2014-06-20 09:40:43 +00:00
mctest use .Mt to mark up email addresses consistently (part1) 2014-06-20 09:40:43 +00:00
mfi NO_MAN= has been deprecated in favor of MAN= for some time, go ahead 2014-04-13 05:21:56 +00:00
mid
mtxstat Reencode files from latin1 to UTF-8. 2011-12-29 12:33:27 +00:00
mwl NO_MAN= has been deprecated in favor of MAN= for some time, go ahead 2014-04-13 05:21:56 +00:00
nanobsd Renove faith(4) and faithd(8) from base. It looks like industry 2014-11-09 21:33:01 +00:00
ncpus NO_MAN= has been deprecated in favor of MAN= for some time, go ahead 2014-04-13 05:21:56 +00:00
net80211 Update these to make them actually compile! 2014-08-25 06:14:57 +00:00
netmap Add a new option, -P, to pkt-gen which reads a single packet from a stored 2014-10-11 21:43:05 +00:00
netrate NO_MAN= has been deprecated in favor of MAN= for some time, go ahead 2014-04-13 05:21:56 +00:00
notescheck - Correct mispellings of word and 2013-04-17 11:48:46 +00:00
npe NO_MAN= has been deprecated in favor of MAN= for some time, go ahead 2014-04-13 05:21:56 +00:00
nxge NO_MAN= has been deprecated in favor of MAN= for some time, go ahead 2014-04-13 05:21:56 +00:00
pciroms NO_MAN= has been deprecated in favor of MAN= for some time, go ahead 2014-04-13 05:21:56 +00:00
perforce add scripts for generating a diff from p4... 2014-08-27 18:56:12 +00:00
pirtool NO_MAN= has been deprecated in favor of MAN= for some time, go ahead 2014-04-13 05:21:56 +00:00
portsinfo
release
scsi-defects
shlib-compat Add shlib-compat under tools. 2013-03-25 00:31:14 +00:00
sysbuild Handle full-path-resolutions to detect the magic-ness of the pkg port. 2014-11-09 15:33:31 +00:00
syscall_timing NO_MAN= has been deprecated in favor of MAN= for some time, go ahead 2014-04-13 05:21:56 +00:00
sysdoc Kill custom in_matroute() radix mathing function removing one rte mutex lock. 2014-11-11 02:52:40 +00:00
termcap
tinybsd Renove faith(4) and faithd(8) from base. It looks like industry 2014-11-09 21:33:01 +00:00
tionxcl NO_MAN= has been deprecated in favor of MAN= for some time, go ahead 2014-04-13 05:21:56 +00:00
track The error syntax has changed. 2012-08-30 22:56:32 +00:00
tscdrift Import a hackish tool I use to examine the skew of the TSC across 2014-09-03 17:26:46 +00:00
umastat NO_MAN= has been deprecated in favor of MAN= for some time, go ahead 2014-04-13 05:21:56 +00:00
usb
usbtest Add new testcase for USB mass storage. 2014-01-13 13:27:00 +00:00
vhba Revert r253748,253749 2013-07-28 18:44:17 +00:00
vimage use .Mt to mark up email addresses consistently (part1) 2014-06-20 09:40:43 +00:00
vop_table
vt Fix debug output that has erroneously been committed with the last update. 2014-09-04 17:19:16 +00:00
vxge NO_MAN= has been deprecated in favor of MAN= for some time, go ahead 2014-04-13 05:21:56 +00:00
whereintheworld Reencode files from latin1 to UTF-8. 2011-12-29 12:33:27 +00:00
wtap NO_MAN= has been deprecated in favor of MAN= for some time, go ahead 2014-04-13 05:21:56 +00:00
zfsboottest NO_MAN= has been deprecated in favor of MAN= for some time, go ahead 2014-04-13 05:21:56 +00:00
README With the migration from GNATS to Bugzilla, we no longer need a tool to 2014-06-22 16:35:03 +00:00

# $FreeBSD$

This directory is for tools.

A tool is something which is sometimes useful, and doesn't fit any of
the other categories.

Please make a subdir per program, and add a brief description to this
file.

ansify		Convert K&R-style function definitions to ANSI style
ath		Tools specific to the Atheros 802.11 support
cfi		Common Flash Interface (CFI) tool
commitsdb	A tool for reconstructing commit history using md5
		checksums of the commit logs.
crypto		Test and exercise tools related to the crypto framework
cxgbetool	A tool for the cxgbe(4) driver.
cxgbtool	A tool for the cxgb(4) driver.
diffburst	OBSOLETE: equivalent functionality is available via split -p.
		For example: "split -p ^diff < patchfile". See split(1).
drm		Tools specific to the DRM/KMS device drivers.
editing		Editor modes and the like to help editing FreeBSD code.
epfe 		Extract printing filter examples from printing.sgml.
ether_reflect	An Ethernet packet reflector for low level testing.
find-sb		Scan a disk for possible filesystem superblocks.
gdb_regofs	A simple tool that prints out a register offset table
		for mapping gdb(1) register numbers to struct reg and
		struct fpreg offsets. The tool is useful on selected
		platforms only.
genericize	Turn a kernel config into something that can more easily
		be diffed against the appropriate GENERIC.
hcomp		Compress header files by removing comments and whitespace.
html-mv         Rename HTML generated filenames to human readable filenames.
ifinfo		Uses the interface MIB to print out all the information
		an interface exports in an ugly form.
iso             Tool to compare the iso3166 and iso639 files in
		/usr/share/misc with the data from the master sites.
iwi		Tools specific to the Intel PRO/Wireless 2200BG/2225BG/2915ABG
		support.
kdrv		KernelDriver; add/list/remove third-party kernel driver
		source to/in/from a kernel source tree.
kernelcruft	Shellscript to find orphaned *.c files in /sys
kerninclude	Shellscript to find unused #includes in the kernel.
kernxref	Shellscript to cross reference symbols in the LINT kernel.
kttcp		An in-kernel version of the ttcp network performance tool
mctest		A multicast test program
mid	 	Create a Message-ID database for mailing lists.
mwl		Tools specific to the Marvell 88W8363 support
ncpus		Count the number of processors
netmap		Test applications for netmap(4)
notescheck	Check for missing devices and options in NOTES files.
npe		Tools specific to the Intel IXP4XXX NPE device
nxge		A diagnostic tool for the nxge(4) driver
pciid		Generate src/share/misc/pci_vendors.
pciroms		A tool for dumping PCI ROM images. WARNING: alpha quality.
pirtool		A tool for dumping the $PIR table on i386 machines at runtime.
portsinfo 	Generate list of new ports for last two weeks.
recoverdisk	Copy as much data as possible from a defective disk.
scsi-defects	Get at the primary or grown defect list of a SCSI disk.
sysdoc		Build a manual page with available sysctls for a specific
		kernel configuration.
tinybsd		Script to build FreeBSD embedded systems.
track		Track the progress of a world / kernel build
vimage		An interim utility for managing the virtualized network
		stack infrastructure.
vop_table	Generates a HTML document that shows all the VOP's in
		the kernel.
vxge		A diagnostic tool for the vxge(4) driver
whereintheworld	Summarizes "make world" output.