MFC r241406.

Do not check if found IPv4 rte is dynamic if net.inet.icmp.drop_redirect is
enabled. This eliminates one mtx_lock() per each routing lookup thus improving
performance in several cases (routing to directly connected interface or routing
to default gateway).

Icmp redirects should not be used to provide routing direction nowadays, even
for end hosts. Routers should not use them too (and this is explicitly restricted
in IPv6, see RFC 4861, clause 8.2).

Current commit changes rnh_machaddr function to 'stock' rn_match (and back) for every
AF_INET routing table in given VNET instance on drop_redirect sysctl change.

This change is part of bigger patch eliminating rte locking.

Sponsored by:	Yandex LLC


git-svn-id: svn://svn.freebsd.org/base/stable/9@242640 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC r242348:
  TSO engine of L1 requires a separate DMA descriptor for TCP
  payload.  This means driver has to split a TX buffer into two
  pieces of TX buffers when the TX buffer contains both
  ethernet/IP/TCP header and partial TCP payload.  The controller
  does not require all header should be in a TX buffer but driver
  forced it to compute IP/TCP header size/offset which is required
  parameter to configure DMA descriptor for TSO.
  While here, slightly reorder DMA descriptor setup to enhance
  readability and remove unnecessary code for TSO(upper stack never
  requests TSO when the frame length is less than or equal to MTU).

  Reported by:	Yamagi Burmeister <lists <> yamagi dot org>
  Tested by:	Yamagi Burmeister <lists <> yamagi dot org>


git-svn-id: svn://svn.freebsd.org/base/stable/9@242641 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC r242514,r242541:

	Revert the change that makes less default.

	Since I've committed this I've receieved roughly an equal
	amount of email thanking me for making this change
	and asking me to revert it.

	I've resisted making this change because
	new users tend to prefer less over more
	and these users are the least likely to know
	how to change the PAGER on their own.

Requested by:	many
Objected to:	just as many
Decision made by:	core

====
	Change default prompt to show ~ again for the home directory

Approved by:	cperciva (implicit)


git-svn-id: svn://svn.freebsd.org/base/stable/9@242643 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC r241502, r241884

Cleanup documentation: cloning route support has been removed in r186119.

Eliminate code checking if found IPv6 rte is dynamic. IPv6 redirects
are using (different) ND-based approach described in RFC 4861. This change
is similar to r241406 which conditionally skips the same check in IPv4.

This change is part of bigger patch eliminating rte locking.

Sponsored by:	Yandex LLC.


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

  Update release(7) to reflect changes from r240586 and r240587:

   - Remove cvs(1) references.
   - Remove CVS* environment references.
   - Add default entries for the default SVNROOT for the Ports
     Collection, and Documentation Project.
   - While here, update 'SGML-based documentation' to 'XML-based',
     since the recent SGML->XML conversion.
   - Update an example providing SVNROOT environment usage.


git-svn-id: svn://svn.freebsd.org/base/stable/9@242648 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC r241329:
Make graid command line a bit more friendly by allowing volume name or
provider name to be specified instead of geom name (first argument in all
subcommands except label).  In most cases there is only one array used
any way, so it is not really useful to make user type ugly geom names like
Intel-f0bdf223 or SiI-732c2b9448cf.  Though they can be used in some cases.

Sponsored by:	iXsystems, Inc.


git-svn-id: svn://svn.freebsd.org/base/stable/9@242649 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC r227536, r240967:

r227536 (nwhitehorn):

  Further automate production release generation by naming files the
  right things and generating checksums.

r240967:

 - Allow cross-architecture builds with 'generate-release.sh', which
   is set by specifying '-a <arch>'.  (Only supported for i386 on amd64
   and powerpc on powerpc64 currently).
 - Change how textproc/docproj is installed:
   o Attempt to install from pkg(8);
   o Fall back to pkg_add(1) if pkg(8) installation is not
     successful;
   o Fall back to installing from ports as last resort.
 - Ensure the script is run by root[1].
 - Get OSVERSION from param.h[1].


git-svn-id: svn://svn.freebsd.org/base/stable/9@242650 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC r241340:
  Fix typo. Check against number of allocated MSI-X vectors.
  There is no ale(4) controller that supports MSI-X so this is not
  real issue.

  PR:	kern/171825


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

Pull in r165377 from upstream llvm trunk:

  X86: fcmov doesn't handle all possible EFLAGS, fall back to a branch
  for the others.

  Otherwise it will try to use SSE patterns and fail horribly if sse is
  disabled.

  Fixes PR14035.

This should fix the following assertion failure:

  Assertion failed: (Reg >= X86::FP0 && Reg <= X86::FP6 && "Expected FP
  register!"), function getFPReg, file
  contrib/llvm/lib/Target/X86/X86FloatingPoint.cpp, line 330.

which can show up when compiling contrib/compiler-rt, using -march=i686
through -march=pentium3 (CPU's which do support fcmov, but don't support
SSE2).


git-svn-id: svn://svn.freebsd.org/base/stable/9@242657 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Merge r242396 from head:

  Genericise the (out of date) instructions from moving from stable to
  current.


git-svn-id: svn://svn.freebsd.org/base/stable/9@242674 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC r240860:
Move the prototype for savectx from cpu.h to pcb.h, as it is on other
platforms, as well as putting it in an #ifdef KERNEL block.


git-svn-id: svn://svn.freebsd.org/base/stable/9@242677 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC r242315:
Work around broken device tree on last-generation PowerPC iMacs
(PowerMac12,1), which have a mac-io MPIC cell that indifies itself
as the root PIC despite the actual root PIC being on the northbridge.
No CPC945 systems have a mac-io PIC that does anything so just don't
attach on CPC945 (U4) systems.


git-svn-id: svn://svn.freebsd.org/base/stable/9@242678 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Merge r241866 from head:

  Add German, French, Portuguese and Spanish names for the Spanish Dvorak
  keymap.


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

Cleanup and rename some variables in libpmc and hwpmc.

Testing MFC of merge to root of stable/9 with peter@ lurking.


git-svn-id: svn://svn.freebsd.org/base/stable/9@242685 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC r242576:
	Prefer the use of stdbool to custom defines.

Approved by:	cperciva (implicit)


git-svn-id: svn://svn.freebsd.org/base/stable/9@242686 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC r242577:
	Make OK_TO_WRITE_TO_DISK an envrionment variable instead
	of a compile time option.

	While here, don't differ based on the existence of LOCK_EX
	which doesn't seem to have ever made a difference on FreeBSD.

Approved by:	cperciva (implicit)


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

Disallow sectorsize larger than MAXPHYS and mediasize smaller than
sectorsize.

PR:		169947


git-svn-id: svn://svn.freebsd.org/base/stable/9@242699 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC r242425:
  Remove TCP/UDP checksum offloading feature for IP fragmented
  datagrams.  Traditionally upper stack fragmented packets without
  computing TCP/UDP checksum and these datagrams were passed to
  driver.  But there are chances that other packets slip into the
  interface queue in SMP world. If this happens firmware running on
  MIPS 4000 processor in the controller would see mixed packets and
  it shall send out corrupted packets.
  While I'm here simplify checksum offloading setup.


git-svn-id: svn://svn.freebsd.org/base/stable/9@242739 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC r242556:
Order the enumeration of the MNT_ flags to be the same as the order of
their definitions.


git-svn-id: svn://svn.freebsd.org/base/stable/9@242741 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFC r242559:
Add decoding of the missed VI_ and VV_ flags to ddb "show vnode" command.


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