MFC r243680, r243681.

r243680:
cxgbe/tom: Add a flag to indicate that the L2 table entry for an
embryonic connection has been setup and never attempt to abort a tid
before this is done.  This fixes a bad race where a listening socket is
closed when the driver is in the middle of step (b) here.  The symptom
of this were "ARP miss" errors from the driver followed by tid leaks.

A hardware-offloaded passive open works this way:

a) A SYN "hits" the TCAM entry for a server tid and the chip delivers it
to the queue associated with the server tid (say, queue A).  It waits
for a response from the driver telling it what to do.

b) The driver decides it is ok to proceed.  It adds the new tid to the
list of embryonic connections associated with the server tid and then
hands off the SYN to the kernel's syncache to make sure that the kernel
okays it too.  If it does then the driver provides an L2 table entry,
queue id (say, queue B), etc. and instructs the chip to send the SYN/ACK
response.

c) The chip delivers a status to queue B depending on how the third step
of the 3-way handshake goes.  The driver removes the tid from its list
of embryonic connections and either expands the syncache entry or
destroys the tid.  In any case all subsequent messages for the new tid
will be delivered to queue B, not queue A.  Anything running in queue B
knows that the L2 entry has long been setup and the new flag is of no
interest from here on.  If the listener is closed it will deal with
so_comp as normal.

r243681:
cxgbe/tom: Handle the case where the chip falls out of DDP mode by
itself.  The hole in the receive sequence space corresponds to the
number of bytes placed directly up to that point.

Submittey by:


git-svn-id: svn://svn.freebsd.org/base/stable/9@243952 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC r239007:
Remove duplicate check.


git-svn-id: svn://svn.freebsd.org/base/stable/9@243953 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC r243142:
In pget(9), if PGET_NOTWEXIT flag is not specified, also search the
zombie list for the pid. This allows several kern.proc sysctls to
report useful information for zombies.

Hold the allproc_lock around all searches instead of relocking it.
Remove private pfind_locked() from the new nfs client code.

MFC r243528 (by pjd):
Look for zombie process only if we were given process id.


git-svn-id: svn://svn.freebsd.org/base/stable/9@243962 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC r243845:
Document the interpretation of the negative value of ticks for
taskqueue_enqueue_timeout(9).

MFC r243863:
Fix typo.


git-svn-id: svn://svn.freebsd.org/base/stable/9@243963 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC r241446,r241501

Add NG_NETFLOW_V9INFO_TYPE command to be able to request netflowv9-specific
data.

Submitted by:	Dmitry Luhtionov <dmitryluhtionov at gmail.com>


git-svn-id: svn://svn.freebsd.org/base/stable/9@243983 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC: 238366, 240924

Initial commit of an I/O provider for DTrace on FreeBSD.

 These probes are most useful when looking into the structures
 they provide, which are listed in io.d.  For example:

 dtrace -n 'io:kernel::start { printf("%d\n", args[0]->bio_bcount); }'

 Note that the I/O systems in FreeBSD and Solaris/Illumos are sufficiently
 different that there is not a 1:1 mapping from scripts that work
 with one to the other.

This commit includes the fix so that our probes use "kernel"
instead of the Solaris specific "genunix"


git-svn-id: svn://svn.freebsd.org/base/stable/9@243989 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Merge r241882.

Provide example for newly-added NG_NETFLOW_V9INFO_TYPE

Submitted by:	Dmitry Luhtionov <dmitryluhtionov at gmail.com>


git-svn-id: svn://svn.freebsd.org/base/stable/9@243991 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC r238372:
Fix build for kernels with dtrace hooks.


git-svn-id: svn://svn.freebsd.org/base/stable/9@244002 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC r243663:
	Add support for AT&T Sierra Wireless USB 3G adapter

PR:		kern/173982
Approved by:	cperciva (implicit)


git-svn-id: svn://svn.freebsd.org/base/stable/9@244003 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC r243893:
	Remove hack to emulate effective uid and just use the EUID's name in the
	first place.  I was unaware of this option when originally committing
	this change.

Approved by:	cperciva (implicit)


git-svn-id: svn://svn.freebsd.org/base/stable/9@244005 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC r243893:
	Remove hack to emulate effective uid and just use the EUID's name in the
	first place.  I was unaware of this option when originally committing
	this change.

	I accidently merged this to only one directory last time :(

Approved by:	cperciva (implicit)


git-svn-id: svn://svn.freebsd.org/base/stable/9@244007 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC r240885:
Document ipv6 hook, present there for ages.


git-svn-id: svn://svn.freebsd.org/base/stable/9@244018 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC r243571:
Fix problem with the Samsung 840 PRO series SSD detection.
The device reports support for SATA Asynchronous Notification in its
IDENTIFY data, but returns error on attempt to enable that feature.
Make SATA XPT of CAM only report these errors, but not fail the device.


git-svn-id: svn://svn.freebsd.org/base/stable/9@244020 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC r243753:
	The getline function returns the number of characters read, not
	written. Use clearer text for this.

PR:		docs/174023
Approved by:	cperciva (implicit)


git-svn-id: svn://svn.freebsd.org/base/stable/9@244045 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC r243084:
	Add support for a -q flag.  While here make the custom argument parsing
	use getopt instead of hacking on it more.  This change also fixes the
	method of silencing the compiler warning about gfn being used
	uninitialized.

Approved by:	cperciva (implicit)


git-svn-id: svn://svn.freebsd.org/base/stable/9@244066 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC r243077:
	Fix error code if file isn't readable.

Approved by:	cperciva (implicit)


git-svn-id: svn://svn.freebsd.org/base/stable/9@244067 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC r243101:
	Using set -x produces output on stderr instead of stdout.
	It also doesn't work with make -s.
	Prefer the use of builtin make features.

PR:		misc/126312
Approved by:	cperciva (implicit)


git-svn-id: svn://svn.freebsd.org/base/stable/9@244071 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC r243238:
	Standardize EXIT STATUS instructions in man pages when possible.

Approved by:	cperciva (implicit)


git-svn-id: svn://svn.freebsd.org/base/stable/9@244074 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC to r242840:

  Add y flag and environment variable LS_SAMESORT to specify the same
  sorting order for time and name with the -t option.  IEEE Std 1003.2
  (POSIX.2) mandates that the -t option sort in descending order, and
  that if two files have the same timestamp, they should be sorted in
  ascending order of their names.  The -r flag reverses both of these
  sort orders, so they're never the same.  This creates significant
  problems for sequentially named files stored on FAT file systems,
  where it can be impossible to list them in the order in which they
  were created.

  Add , (comma) option to print file sizes grouped and separated by
  thousands using the non-monetary separator returned by localeconv(3),
  typically a comma or period.


git-svn-id: svn://svn.freebsd.org/base/stable/9@244075 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC rr243398-243399:
- core(5) references sysctl debug.num_cores, but it is really debug.ncores.
- [mdoc] remove hard sentence breaks.

PR:		docs/173831


git-svn-id: svn://svn.freebsd.org/base/stable/9@244079 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f