MFC: r253707

- Set the System Identifier in the Primary Volume Descriptor to FreeBSD
  rather than NetBSD.
- Correctly set the Expiration Time in the Primary Volume Descriptor;
  according to ISO 9660 8.4.26.1 unspecified date and time are denoted
  by the digit 0 in RBP 1 to 16 but the number 0 in RBP 17. [1]
- Merge iso9660_rrip.c rev. 1.11 from NetBSD: name_len should be read
  as unsigned byte. [2]
  Note: This is according to ISO 9660 9.1.10.
- Rock Ridge TF entries should use a length of 5, because after the 4
  bytes of generic SUSP header there is one byte of flags. See typedef
  of ISO_RRIP_TF in iso9660_rrip.h. [1]

Submitted by:	Thomas Schmitt [1]
Approved by:	re (kib)
Obtained from:	NetBSD [2]
MFC: r253675

Ensure that makefs.h is included when using ufs_bswap.h so the FFS_EI macro
is picked up when defined. Previously, ffs_subr.c was always built without
support for opposite endianess as it doesn't include makefs.h on its own.

Approved by:	re (kib)
MFC: 253676

- Once we have shifted arguments thrice, base-bits-dir is $1 rather than $4.
  Introduce $BASEBITSDIR for clarity and in order to avoid repeating this
  mistake in the future. Fixing this ensures that we pick up the newly built
  boot code and loader native to the target, which is especially relevant
  when cross-building release images.
- It is pointless to specify an endianess for ISO 9660 images so strip that.

Approved by:	re (kib)
MFC r253554:
  Fix a panic in the racct code when munlock(2) is called with incorrect values.

  The racct code in sys_munlock() assumed that the boundaries provided by
  the userland were correct as long as vm_map_unwire() returned
  successfully.  However the latter contains its own logic and sometimes
  manages to do something out of those boundaries, even if they are buggy.
  This change makes the racct code to use the accounting done by the vm
  layer, as it is done in other places such as vm_mlock().

  Despite fixing the panic, Alan Cox pointed that this code is still
  race-y though: two simultaneous callers will produce incorrect values.

  Reviewed by:  alc

MFC r253556:
  Fix previous commit when option RACCT is not used.

Approved by:	re (kib)
MFC: r238896, r238897, r241331 (usr.bin/script/ only), r241972, r242138,
     r248388, 253814

+ Add "-f" to also output filemon(4) information.
+ Add d, p and r switches for recording script sessions with timing data
  and playing sessions back with or without time delays.
+ Remove contractions.

Approved by:	releng (glebius)
MFC r249328:

Make ctladm(8) try to load ctl.ko kernel module if needed.

Approved by:	re (delphij)
Revert r249530 and re-enable compilation of ctl.ko for all configurations
except i386 XEN, for which it still doesn't build so far.
This is a direct commit to stable/9.

Approved by:	re (delphij, kib)
MFC r253754:
Partially close race between calls of orphan() method from GEOM and close()
method from ZFS core, that reliably causes use-after-free panic if SSD vdev
detached during inititial erase.

Approved by:	re (delphij)
MFC: r249410 (partial)

Remove ctl(4) from GENERIC.

With ctl(4) being built as a module and automatically loaded by ctladm(8),
this makes CTL work out of the box.

Note that unlike the original r249410, this commit does not remove the
kern.cam.ctl.disable tunable for POLA reasons.

PR:		174671, 175694, 179112
Reviewed by:	ken (original version)
Sponsored by:	FreeBSD Foundation (original version)
Approved by:	re (hrs)
MFC 253751 and 253843:

- Relax the restriction on the member interfaces with LLAs.  Two or more
  LLAs on the member interfaces are actually harmless when the parent
  interface does not have a LLA.

- Add net.link.bridge.allow_llz_overlap.  This is a knob to allow LLAs on
  a bridge and the member interfaces at the same time.  The default is 0.

Approved by:	re (marius)
MFC r253810

grep -i does not work for simple patterns and single byte locales, like
	LANG=ru_RU.KOI8-R grep -i <some single KOI8-R letter>
Fix it.

Approved by:    re (delphij,kib)
MFC r253818:

Fix zfs send -D hang after processing requiring a CTRL+C to interrupt due to
pthread_join prior to fd close.

Approved by:	re (delphij)
Bump __FreeBSD_version to a value higher than releng/9.2.

Approved by:	re (implicit)
Approved by:	kib (mentor, implicit)
Merge remote-tracking branch 'upstream/stable/9' into stable/9
MFC r253865: Fixes to RX_COPY optimization code allowing the removal of the rearm_queues
             routine used in local_timer.
    r253965: Correct the queue mask bit clearing in the link interrupt handler.

Approved by: re
When the igb driver is static there are cases when early interrupts occur,
resulting in a panic in refresh_mbufs, to prevent this add a check in the
interrupt handler for DRV_RUNNING.
MFC 253048,253423,253449,253653,253774,253785:
- Allow mlx4 devices to switch between Ethernet and Infiniband:
  - Fix sysfs attribute handling by using sysctl_handle_string() and
    properly handling trailing newlines in attribute values.
  - Remove check forbidding requests that would result in one port being
    set to Ethernet and the subsequent port being set to IB.
- Avoid trashing IP fragments by correctly managing hardware checksumming.
- Fix panics when downing or unloading the mlx4 driver.

PR:		kern/179999, kern/174213, kern/180430, kern/180791
MFC r253497:
Use the right name for the vm_map_find(9) flag to specify shared mapping.
MFC r253709:
The pmap_qenter() and pmap_qremove() perform TLB invalidation on its
own, no need to call pmap_invalidate_range() one more time.
Merge remote-tracking branch 'upstream/stable/9' into stable/9