New stable release: HardenedBSD-stable 11-CURRENT v42

HardenedBSD-11-CURRENT-v42 -

WARNING: this release is a security update - OpenSSL 1.0.2g and netinstall enhancements

CTurt (2):
HBSD: Fix ctl memory leak
HBSD: Remove info leak

Mark Felder (1):
HBSD: fix the comments in HardenedBSD.conf

Oliver Pinter (25):
HBSD: fix hbsd-update-build's hbsd_version
HBSD: remove unneeded sysctls from ASLR implementation
HBSD: move pax_disallow_map32bit_active() to it's place in pax.h
HBSD: remove stale function declaration
HBSD: convert the PAX_NOTEs kernel private
HBSD: fix build on i386
HBSD: rework the base hbsd structure
HBSD: remove dead code from hbsd_pax_{common,hardening}.c
HBSD: added skeleton feature implementation
HBSD: remove ptrace_hardening
HBSD: add hbsd related sysctl macros: SYSCTL_HBSD_{2,4}STATE
HBSD: start using the newly intorduced SYSCTL_HBSD_{2,4}STATE in ASLR
HBSD: fix rtld build after the PAX_NOTES conversion (b8faf65680d366cfb9b865f534fe6abfb4c46faa)
HBSD: start using the newly intorduced SYSCTL_HBSD_{2,4}STATE in hbsd_pax_hardening.c
HBSD: start using the newly intorduced SYSCTL_HBSD_{2,4}STATE in hbsd_pax_log.c
HBSD: start using the newly intorduced SYSCTL_HBSD_{2,4}STATE in hbsd_pax_segvguard.c
HBSD: start using the newly intorduced SYSCTL_HBSD_{2,4}STATE in hbsd_pax_noexec.c
HBSD: start using the newly intorduced SYSCTL_HBSD_{2,4}STATE in hbsd_pax_SKEL.c
HBSD: bump __HardenedBSD_version to 41 after recent changes
HBSD: fixed the comment in hbsd_pax_aslr.c
HBSD: add HBSD_EXTRA environment variable to
HBSD: implement mirror selection logic for hardenedbsd
HBSD: null the freed point to prevent future surprises
HBSD: fix the distsets path in mirrorselect

Oliver Pinter + (72):
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master
Merge remote-tracking branch 'freebsd/master' into hardened/current/master

Shawn Webb (14):
HBSD: Update aslr(4) manpage.
HBSD: Document shared library loading order randomization bugs.
HBSD: aslr(4) manpage cleanup
Merge remote-tracking branch 'origin/master' into hardened/current/master
HBSD: Use the right path for jls(8).
HBSD: Skip /root/.cshrc on update.
HBSD: Prevent RTLD from creating executable per-thread stacks.
HBSD: Bump HardenedBSD version to 42 after rtld noexec change
HBSD: Fix dates in UPDATING-HardenedBSD
Merge remote-tracking branch 'origin/master' into hardened/current/master
HBSD: Fix merge conflict
Merge remote-tracking branch 'origin/master' into hardened/current/master
HBSD: Fix merge conflict in share/man/man5/src.conf.5.
HBSD: Fix build

adrian (10):
Allow MIPS INTRNG code to be built without FDT support.
document some ACPI related sysctls.
Fixes to make it compile under gcc-4.2.
Bring over the initial rewrite of the broadcom bus support found in their SoCs and various chips (including, famously, their wifi chips.)
Add modules support for the bhnd code.
Begin abstracting out the access method for ath(4) ioctls.
Migrate athstats to use the new stats API.
Migrate athregs over to use the new stats API.
Fix up the ath(4) device names for QCA chipsets.

ae (3):
Fix useless check. m_pkthdr.len should be equal to orglen.
Fix bug in filling and handling ipfw's O_DSCP opcode. Due to integer overflow CS4 token was handled as BE.
Use correct size for malloc.

andrew (35):
Remove an unused include.
Create the twsi device option in preparation to move the driver to a common location. The device is also found in Allwinner SoCs.
Move the twsi driver source to be under iicbus. It is in a separate directory as it is expected multiple attachments will be added for the SoC families that use this hardware.
Add support for the Allwinner i2c device. This is similar to the existing Marvell twsi part, however uses different register locations, as such split the existing driver into Marvell and Allwinner attachments.
Remove an unused static inline function.
Remove an unused FDT header, fdt_common.h should only be needed in a few places, mostly in sys/dev/fdt and legacy code.
Fix the spelling of OF_getencprop. It will fix the data correctly for the endian of the CPU so there is no need to call fdt32_to_cpu.
Set sc->clkfreq removed in r295470
Add support for the AXP209 Power System Management IC. This allows boards with this and an Allwinner SoC to power off.
Add support for the Allwinner DMA controller. This will be used by the at least the audio codec driver currently in review.
Only read the power state register when we will be using its value. While here remove magic shifts, and cleanup pwr_name.
Add an analog audio driver for the audio codec found on the Allwinner A10/A20 SoC. Based loosely on the submitters NetBSD driver, tested on Cubieboard 2. Playback and capture are supported.
Add a sysctl to read the internal temperature of the AXP209 Power Management IC.
Allow callers of OF_decode_addr to get the size of the found mapping. This will allow for code that uses the old fdt_get_range and fdt_regsize functions to find a range, map it, access, then unmap to replace this, up to and including the map, with a call to OF_decode_addr.
Move the Allwinner kernels to use fdt_pinctrl. This will read the pin configuration from the FDT data, then set the pins into the requested state. As part of this the gpio controller now reports the correct number of pins instead of returning the number of bank * 32.
Include ofw_bus_subr.h before ofw_pci.h for the definition of struct ofw_bus_iinfo.
Add initial support for the Allwinner A31i and A31s. This just adds the FDT platform code to detect when we are booting on one of these SoCs. The driver changes will be added shortly.
Add a missing call to dev_cleanup from the arm64 loader.efi.
Make efi_time and EFI_GetTimeOfDay static, neither are used by other parts of the efi code.
Add the Allwinner A31 and A31s padconf support. It's currently unused, but will be needed when we bring in further support for these SoCs.
Add support for the Allwinner A31 watchdog to the existing A10 watchdog driver. This mostly involves selecting the register offsets to use at runtime based on the hardware we are talking to.
Remove platform_ipi_send, it's an unneeded as all implementations are identical.
Fix a mistake that crept in when moving between git and svn, pic_ipi_send should not be called from platform_mp_init_secondary.
Add the start of support for the Allwinner A31 clocks. It only adds support for the i2c, mmc, and gmac clocks. Further clocks can be added as needed.
Remove platform_mp_probe as it's almost identical on most ARM SoCs, and slightly wrong on the others. We should just check if mp_ncpus is set to more than one CPU as we may wish to run on a single core even when SMP is available.
Almost all copies of platform_mp_init_secondary just called intr_pic_init_secondary. Replace them with a direct call. On BCM2836 and ARMADA XP we need to add this function, but it can be empty.
Make the CUBIEBOARD config include the A10 config with a few needed additions. This is used by the release scripts so we need to keep it around for now.
Build ofw_cpu.c on all ARM configs using FDT. As we mve towards using the Linux dts files these are more likely to have cpu nodes we can attach to.
Add SMP support to the ARM PLATFORM code. This will allow us to have different methods to start the secondary cores in a kernel built for multiple SoCs, e.g. with the Allwinner A20 and A31.
Add riscv to the list of architectures for cscope.
Make the fdt_get_mem_regions memsize argument optional. It's only used in by a few callers.
Stop setting the memory size in the arm EFI and FDT code, we don't use it.
Make the memory size returned from fdt_get_mem_regions a 64-bit type. This is the physical memory size so may be larger than a u_long can hold, e.g. on ARM with LPAE we could see an address space of up to 40 bits. On ARM u_long is only 32 bits so the memory size will be truncated, possibly to zero.
The cpu_reset_needs_v4_MMU_disable variable is only used in locore-v4.S, only define it when building for ARMv5 or prior.
Add support to enable/disable both the EHCI and OHCI Allwinner clocks. This adds a lock to ensure only a single device is accessing the hardware. A reference count is added to only enable when we start to use the clock, and to disable after we have finished needing the clock.

araujo (4):
Fix regression introduced on 272446r.
- Add a global option where we can protect processes when swap space is exhausted.
Implement the 'master' request.
Set argument encode/result decode call backs for 'maplist' and 'all'.

asomers (2):
Fix compiler warnings in iostat
Fix the usr.sbin/iostat build with GCC, broken by r295768

avos (27):
net80211: add few missing subtype names.
rtwn: import r290048.
urtwn: add an option to compile the driver without firmware specific code
urtwn: shutdown the device properly
net80211: fix TIM cleanup.
net80211: fix 'uma_zalloc_arg: zone "32" with non-sleepable locks held' when 'sysctl net.wlan.devices' is executed.
net80211: fix 'taskqueue_drain with non-sleepable locks held' warning
net80211: remove redundant locking.
net80211: fix a comment for TX lock
etc/defaults/rc.conf: fix a typo (wlanddebug -> wlandebug)
urtwn: do not filter beacon frames in HOSTAP mode while scanning
network.subr: avoid unnecessary reinitialization
net80211: reduce code duplication between ieee80211_swscan_cancel_scan() and ieee80211_swscan_cancel_anyscan()
net80211: reduce code verbosity in scan_task() (ieee80211_scan_sw.c)
net80211: utilize ss_scanend variable from scan_state structure
net80211: split scan_task() (#1) (replace 'done' label with scan_done() function)
net80211: split scan_task() (#2) (add scan_end() function)
net80211: split scan_task() (#3) (into scan_start() and scan_curchan_task() functions)
net80211: wakeup scan_start() task when null data frame was actually transmitted
net80211: refactor scan_signal()
net80211: cleanup ieee80211_scan_sw.c
net80211: fix scanning after D5145 (PR 197498 related)
net80211: do not enforce promiscuous mode for AP scan
net80211: eliminate copy-paste nearby ieee80211_check_rxseq()
net80211: drop -> INIT state transition warning (STA mode only)
zyd, run, ural: do not corrupt MAC address
net80211: fix possible overflow in IEEE80211_TU_TO_TICKS()

bapt (2):
Also remove libcapsicum and libexec/casper after the casper changes
Fix "files" arguments

bdrewery (93):
Consolidate common beforebuild logic.
Test directories can build in parallel fine.
Don't descend into test directories for distribution->installconfig.
Use built-in :tA here rather than realpath(1).
Add an .ORDER for all/install.
Add missing dependency on sys/conf/
Remove the need for overriding depend.
Filemon: Fix panic when fork1() is called from kproc_create().
DIRDEPS_BUILD: Update dependencies.
Revert r295648 for now.
Remove temporary hack from r294370 for SSH upgrades.
Always remove .depend.* regardless of WITH_FAST_DEPEND in case of changing which is used.
Add CLEANDEPEND[FILES|DIRS] and simplify the tags cleanup to use it.
Fix build race after r295643.
Fix build race after r295643.
Fix installation of makewhatis.local(1) since r283777.
Avoid reading .depend.* in simple cases where not needed.
DIRDEPS_BUILD: Add dependencies somehow missed in r295681.
FAST_DEPEND: Apply conditional -MF from r291945 to kernel as well.
DIRDEPS_BUILD: Enable the post-build footer/stats display.
Always remove .depend.* in case switching between FAST_DEPEND on/off.
Fix build after r29592.
Fix build after r295934.
PROGS: Only recurse on called targets like done for SUBDIR in r291635.
Properly fix these builds by adding NO_WMISSING_VARIABLE_DECLARATIONS from r249657.
DIRDEPS_BUILD: Update dependencies.
DIRDEPS_BUILD: Add some missing build dependencies for kerberos5.
Convert to LIBADD.
Follow-up r295667 with fixes for SRCS defined.
Remove ilinks in cleandepend directly via CLEANDEPENDFILES.
Support beforebuild in the kernel.
FAST_DEPEND: Rework how guessed dependencies are handled.
FAST_DEPEND: Don't waste time generating an empty .depend file.
Hook the meta/nofilemon build into using FAST_DEPEND.
FAST_DEPEND: Always run depend via beforebuild which removes many hacks.
DIRDEPS_BUILD: Regenerate without local dependencies.
FAST_DEPEND: Skip 'make depend' for buildworld and kernel since it is auto-ran now.
DIRDEPS_BUILD: Allow 'make destroy*' to work from top-level.
DIRDEPS_BUILD: Allow destroy-(arch|host|stage) from top-level.
Show full DIRPRFX in subdir parallel target name.
PROGS: Remove the 'build one' optimization since it breaks 'build multiple'
BDECFLAGS has not been available since r82604 removed /etc/defaults/make.conf.
Remove hack from r2408 that is no longer needed.
FAST_DEPEND: Still need to remove DEPENDFILE when rebuilding.
PROGS: Only the main process will install INCS.
Don't hide AR command as's r283925 changed as well.
OBJS and POBJS have not been used since r215127.
Add order for installworld/installkernel.
Fix build without FAST_DEPEND and without running 'make depend' after r295985.
Slightly lessen the amount of job target output for SUBDIR_PARALLEL.
Remove realall references from initial NetBSD import in r219019.
Let CLEANDEPENDFILES actually be set before
Remove _manpages and _maninstall targets as they are no longer needed.
Remove more references to targets we've never had.
Allow configuring .MAKE.MODE via META_MODE as does.
Track .meta files for .sh but don't preserve timestamp.
Follow-up r295991: Only allow 'make destroy*' to include
DIRDEPS_BUILD: Fix some things building in MAKELEVEL0.
Move PROGS logic to proper place and remove redundant and unneeded logic.
META_MODE: Default to the silent build.
Import based on NetBSD's version.
These can build in parallel.
Remove unneeded lines.
Update dependencies.
Make it clear that the "size" argument is for the dst string.
Remove WARNS inherited fine by ../
Remove old compatibility checks.
FAST_DEPEND: Prefer .OBJDIR depend files.
DIRDEPS_BUILD: Fix mapper files building during dirdeps.
CCACHE_BUILD+META_MODE: Lookup and canonicalize the default CCACHE_DIR.
Correct a comment.
Remove filemon->lock wrappers.
Remove self-reference to destroy_dev_drain(9).
Fix tracking of dependencies inside .CURDIR.
Add guessed dependencies to OBJS after in case of it adding to SRCS.
Move casper library entries to proper places.
Add missing atf dirs.
DEBUG_FILES: Create the DEBUGFILEDIR if it doesn't exist on install.
Parallel installation has been safe here since r267511 added SUBDIR_DEPEND.
NO_ROOT: Create the METALOG directory on installworld/distributeworld.
Allow adding to SOLINKOPTS.
Fix over/under-linking in contrib/ofed.
Don't add duplicates from LOCAL_LIB_DIRS.
DIRDEPS_BUILD: For bootstrapping always install all headers.
Fix missing symbol program_invocation_short_name.
Update libsdp to the latest 1.1.108-0.17.ga6958ef.
DIRDEPS_BUILD: Connect ofed.
Conditionalize building makewhatis(1) for upgrades that need it.
Revert r296395.

bjk (1):
Bump .Dd for r295764

br (17):
Use callee-saved registers to pass args through fork_trampoline().
Add the implementation of savectx().
There is no need to pre save tp in cpu_fork().
Use better form representing 32 x 128-bit floating-point registers.
Add the implementation of atomic_swap_32().
Use medany (Medium/Anywhere) GCC code model for RISC-V. This will allow us to use bigger relocations and all the 64-bit VA space.
Increase kernel and user VA space. This allows us to boot with more than 128MB of physical memory.
Fix ktrace call.
Provide stack(9) MD stubs for RISC-V so ktr(9) can be compiled in.
Remove duplicates.
Fix comment.
Add basic trap handlers for illegal instruction and breakpoint exceptions.
o Grab physical memory regions information from the device tree. o Increase memory size.
Set a dependencies for stack(9) RISC-V MD part.
Add support for symmetric multiprocessing (SMP).
o Use uint64_t for page number as it doesn't fit uint32_t. o Implement growkernel bits for L1 level of pagetables.
Restore configuration for RISC-V.

bz (2):
Force re-routing PCI interrupts (this is for legacy INTx not MSI). Need this for gem5, but was not needed on real hadrware (yet) as it was always MSI.
Add gem5 support, so we attach there as well.

cem (5):
ioat(4): Decode/define more capabilities, operations
ioat(4): Also check for errors if the channel is suspended
ioat(4): On error detected in ithread, defer HW reset to taskqueue
NTB: workaround for high traffic hardware hang
daemon(8): Add -t option to set process title

cmt (1):
Add myself as a ports committer

cperciva (1):
Don't dereference a pointer immediately after determining that it is equal to NULL. [1]

cy (1):
Remove redundant NULL pointer comparison.

davidcs (3):
Modified the use of bxe_grc_dump() function so that it can be invoked directly at any potential error path, where a fwdump is needed. The fwdump (a.k.a grcdump) is stored in a driver buffer. The sysctl grcdump_done indicates if a fwdump was taken and waiting to be retrieved. The sysctl trigger_grcdump can be used to manually trigger a fwdump.
Remove dead code. Code Cleanup. Improve clarity in debug messages
Upgrade the firmware carried in driver and loaded during hardware initialization (a.k.a STORM firmware) to version 7.13.1 (latest version)

delphij (1):
MFV r295913:

des (1):
Implement /proc/$$/limits.

dim (2):
Fix "invalid type '(null)'" usage messages in zfs(8) and zpool(8).
Fix a problem in ld, causing it to sometimes print messages similar to "invalid string offset 65521 >= 27261 for section `.strtab'". for object files produced by recent versions of clang.

dwmalone (2):
If we close or sync a hash-based db file, make sure to call fsync to make sure the changes are on disk. The people at pfSense noticed that it didn't always make it to the disk soon enough with soft updates.
Following revision r295924, the changes to a db file should be fsynced before the file is closed. Consequently, it shouldn't be necessary to open the file with O_SYNC any more.

ed (4):
Make handling of mmap()'s prot argument more strict.
Call cap_rights_init() properly.
Make asynchronous connection failures on UNIX sockets fail with ECONNRESET.
Remove the errno argument from unp_drop().

emaste (18):
Allow elfcopy to convert between two non-ELF formats
Hardcode date in RCS paper for reproducibility
Remove dd xfer stats emitted during buildworld
Remove objcopy in WITHOUT_TOOLCHAIN if it's from elftoolchain
pass -fPIC to the assembler, not linker
Install elftoolchain elfcopy(1) as objcopy(1) by default
Add debug /libexec directory for rtld-elf debug files
Remove libexec/casper debug directory missed in r296047
Restore lib/casper debug directory, reverting r296130
Correct date on ELF Tool Chain UPDATING entry
Sort subdirectories in BSD.debug.dist
Document that WITHOUT_ELFCOPY_AS_OBJCOPY will be removed
userboot: use MK_CTF=no to disable CTF
Enable NO_ make variable deprecation warning
Remove uudecode make rule for vt fonts
Regenerate src.conf.5 after r296193 and r296264
Add dd as a bootstrap tool, for status= support
elfcopy: fail if debug link target is empty

erj (6):
ixl(4): Fix two important RSS bugs.
ixl(4): Remove unsupported device IDs.
ixl(4): Fix errors in queue interrupt setup in MSIX mode.
ixl(4)/ixlv(4): Revert m_collapse() in ixl_xmit() to m_defrag().
ixl(4): Fix potential driver interrupt setup issues and startup crash.
ixl(4)/ixlv(4): Remove a couple unnecessary register writes/flushes.

glebius (9):
Add missing braces.
Ternary operator has lower priority than OR.
Ternary operator has lower priority than OR.
Fix a potentially "forever" loop.
Fix obvious typo, that lead to incorrect sorting.
Fix !IEEE80211_DEBUG build.
New way to manage reference counting of mbuf external storage.
Remove UMA_ZONE_REFCNT feature, now unused.
Fix regression in r296242 affecting several drivers. For EXT_NET_DRV, EXT_MOD_TYPE, EXT_DISPOSABLE types we should first execute the free callback, then free the mbuf, otherwise we will derefernce memory that was just freed.

gnn (2):
fix tcpdebug: - assign to "flags" in each probe, not only debug-input compute "len" in the same way in each probe
Fix dtrace probes (introduced in 287759): debug__input was used for output and drop; connect didn't always fire a user probe some probes were missing in fastpath

gonzo (1):
Fix typo in device description

hselasky (8):
Reduce the number of supported WLAN keys in the rum driver, else we risk bit shifting overflows. Found by D5245 / PVS.
Fix variable assignment inside if-clause in the smsc driver. Found by D5245 / PVS.
Restore maximum number of host keys to 64.
Be more verbose when truncating number of HID items.
Configure the correct bMaxPacketSize for control endpoints before requesting the initial complete device descriptor and not as part of the subsequent babble error recovery. Babble means that the received USB packet was bigger than than configured maximum packet size. This only affects enumeration of FULL speed USB devices which use a bMaxPacketSize different from 8 bytes. This patch might help fix enumeration of USB devices which exhibit USB I/O errors in dmesg during boot.
Allow for overlapping quirk device ranges. Prior to this patch only the first device entry matching the USB vendor, product and revision would be searched for quirks. After this patch all device entries will be searched for quirks.
Add more functions to the LinuxKPI.
Whitespace fixes.

ian (9):
Unconditionally set e_ident[OSABI]=ELFOSABI_FREEBSD in arm binary headers.
Minor style cleanups.
Allow a dynamic env to override a compiled-in static env by passing in the override indication in the env data.
Document the ability to override compiled-in env and hints using variables in the bootloader-provided env.
If the user has set a u-boot env var named rootpath, automatically import it into the loader(8) env as dhcp.root-path, so that it overrides any dhcp/bootp server-provided path.
Make imx6 systems work again after recent import of new dts files.
Now that we have OF_decode_addr(), with proper MD implementations, to obtain the bus space tag and handle for a uart console, use the values returned by that routine to set the global uart_bus_space_mem, instead of assuming that there will be a global variable named fdtbus_bs_tag to set it from.
This code no longer references fdtbus_bs_tag, no need for a special extern declaration of it for aarch64.
Stop using the global fdtbus_bs_tag and instead use the tag from the softc that was set up properly at init time.

imp (3):
Create an API to reset a struct bio (g_reset_bio). This is mandatory for all struct bio you get back from g_{new,alloc}_bio. Temporary bios that you create on the stack or elsewhere should use this before first use of the bio, and between uses of the bio. At the moment, it is nothing more than a wrapper around bzero, but that may change in the future. The wrapper also removes one place where we encode the size of struct bio in the KBI.
Use the right size for zeroing.
Remove a stray else. It isn't needed (due to the return at the end of the if statement it pairs with). While not an error today, a careless edit in the future could cause problems (though given the nature of this specific code, the problems quite likely would be some variation of "most direct access SCSI storage devices won't attach," which is unlikely to go unnoticed).

jasone (3):
Update jemalloc to 4.1.0.
Add a cast to prevent a compiler warning.
Restore support for decay time of -1 (no decay).

jgh (4):
- add dma(8) to examples in mailer.conf(5)
- language tightening - cleanup SEE ALSO section (thanks brueffer@)
- address obsolete Kerberos options
- update portsnap(8) to direct users to pkg-version

jhb (12):
Sign extend the error value for failing Linux/i386 system calls. This restores the mapping of Linux errors to native FreeBSD errno values after the refactoring in r288424.
Correct the ABI name for Linux/i386 binaries under FreeBSD/i386.
The locking annotations for struct sockbuf originally used the key from struct socket. When sockbuf.h was moved out of socketvar.h, the locking key was no longer nearby. Instead, add a new key for sockbuf and use a single item for the socket buffer lock instead of separate entries for receive vs send buffers.
Fetch the current thread and it's syscall state from the trussinfo object instead of passing some of that state as arguments to print_syscall() and print_syscallret(). This just makes the calls of these functions shorter and easier to read.
Remove an unused variable that snuck into the previous revision.
Add support for displaying thread IDs to truss(1).
Add handling for non-native error values to libsysdecode.
Add simple support for CloudABI processes to kdump(1).
Remove taskqueue_enqueue_fast().
Refactor the AIO subsystem to permit file-type-specific handling and improve cancellation robustness.
Use SCHEDULER_STOPPED() in cv_*wait*() instead of checking panicstr.
Add an UPDATING entry for the recent AIO changes.

jhibbits (27):
Fix a panic bug that cropped up in the PTE rewrite.
Convert a few more long -> rman_res_t.
Another conversion u_long -> rman_res_t
Bump __FreeBSD_Version for u_long -> rman_res_t change (r294883).
Replace several bus_alloc_resource() calls using default arguments with bus_alloc_resource_any()
Introduce a RMAN_IS_DEFAULT_RANGE() macro, and use it.
Fix the definition of RM_MAX_END.
Allow the size argument for law_enable() to be non-power-of-2.
Fix the build.
Replace several bus_alloc_resource() calls with bus_alloc_resource_any()
Add the bus_alloc_resource_anywhere() convenience function.
Migrate many bus_alloc_resource() calls to bus_alloc_resource_anywhere().
Move another range check to use RMAN_IS_DEFAULT_RANGE().
Implement pmap_change_attr() for PowerPC (Book-E only for now)
Add support for the Freescale dTSEC DPAA-based ethernet controller.
Add VM_MEMATTR_CACHEABLE support for AIM, for parity with Book-E.
Correct the memory rman ranges to be to BUS_SPACE_MAXADDR
Add another compatibility check for QorIQ GPIO driver.
Fix 2 bugs in the mpc85xx local bus controller driver.
Remove some debug printfs
Use the m_extadd() function instead of deprecated MEXTADD().
Replace some more default range checks with RMAN_IS_DEFAULT_RANGE().
Allocate the PCI BAR resource with bus_alloc_resource_any()
Another convert to bus_alloc_resource_anywhere().
Let rman_init() initialize the default rman range.
Replace all resource occurrences of '0UL/~0UL' with '0/~0'.
Remove default initializations for rman, a'la r296331

jilles (8):
sh: Add tests for comments in sh -c.
sh: Rework code to remove '\0' from shell input.
sh: Remove unnecessary flushouts while reading script.
sh: Optimize setprompt(0).
sh: Don't hash alias name when there are no aliases.
sh: Fix set -v and multiline history after r295825.
sh: Don't trust that signal descriptions fit within 49 bytes.
sh: Remove a redundant STPUTC check.

jimharris (1):
nvme: fix intx handler to not dereference ioq during initialization

jkim (13):
Silence VPS-Studio errors (V512). These buffer underflows are intentional.
Silence VPS-Studio errors (V646). These is no functional change.
Optimize ROL and ROR emulations and fix comments.
Remove a bogus bzero() call.
Fix style(9) bugs.
Fix white spaces.
Remove brightness notify handler before reinstalling new one.
Silence PVS-Studio warning (V595).
Silence PVS-Studio warning (V595).
Silence PVS-Studio warning (V595). It can never be NULL here.
Merge byacc 20150711.
Import OpenSSL 1.0.2g.
Merge OpenSSL 1.0.2g.

jmcneill (9):
Add myself as src committer.
Fix dedicated DMA transfers.
Add Allwinner A20 HDMI support.
Fix inverted test for lock status while waiting for PLL to become stable.
Fix PIO mode on A31 and later SoCs.
Add Allwinner A10/A20 RTC driver.
Add support for Allwinner A31/A31s EHCI controller and USB PHY.
Add support for Allwinner A31 RTC controller.
Add support for resetting the PHY via GPIO.

junovitch (1):
- Add myself to ports-secteam

kevlo (5):
Fix a bug that caused nothing to be skipped when skipping exactly the number of bytes present in a regular file was requested.
Add missing parentheses.
Remove bogus cast.
Remove sys/types.h
Add device ID for 'AboCom 802.11n' usb.

kib (15):
Hide ucontext_t and mcontext_t when neither POSIX nor XSI features are enabled in the compilation environment, i.e. for ANSI C use of #include .
In bnoreuselist(), check both ends of the specified logical block numbers range.
After nullfs rmdir operation, reclaim the directory vnode which was unlinked. Otherwise the vnode stays cached, causing leak. This is similar to r292961 for regular files.
Switch /dev/hpet to use make_dev_s(9). Device needs si_drv1 initializated, do it correctly even though hpet cannot be loaded as module.
Some BIOSes ACPI bytecode needs to take (sleepable) acpi mutex for acpi_GetInteger() execution. Intel DMAR interrupt remapping code needs to know UID of the HPET to properly route the FSB interrupts from the HPET, even when interrupt remapping is disabled, and the code is executed under some non-sleepable mutexes.
Return dst as the result from memcpy(9) on amd64.
Provide more correct sizing of the KVA consumed by a vnode, used by the virtvnodes calculation. Include the size of fs-specific v_data as the nfs nclnode inline, the NFS nclnode is bigger than either ZFS znode or UFS inode. Include the size of namecache_ts and short cache path element, multiplied by the name cache population factor, again inline.
Remove references to Giant in the description of vrele(9). Add notes about vnode lock and sleeping.
Fix year.
In bpf_getdltlist(), do not call copyout(9) while holding bpf lock. Copy the data into temprorary malloced buffer and drop the lock for copyout.
Implement process-shared locks support for, without breaking the ABI. Special value is stored in the lock pointer to indicate shared lock, and offline page in the shared memory is allocated to store the actual lock.
Add two comments explaining the fine points of the hash implementation.
Fix handling of DT_TEXTREL for an object with more than one read-only segment. According to gABI spec, presence of the tag indicates that dynamic linker must be prepared to handle relocations against any read-only segment, not only the segment which we, somewhat arbitrary, declared the text.
If callout_stop_safe() noted that the callout is currently executing, but next invocation is cancelled while migrating, sleepq_check_timeout() needs to be informed that the callout is stopped. Otherwise the thread switches off CPU and never become runnable, since running callout could have already raced with us, while the migrating and cancelled callout could be one which is expected to set TDP_TIMOFAIL flag for us. This contradicts with the expected behaviour of callout_stop() for other callers, which e.g. decrement references from the callout callbacks.
Pass MNTK_NO_IOPF and MNTK_UNMAPPED_BUFS flags from the lower filesystem to the nullfs mount.

kp (3):
ifconfig(8): can't use 'name' or 'description' when creating interface with auto numbering
in pf_print_state_parts, do not use skw->proto to print the protocol but our local copy proto that we very carefully set beforehands. skw being NULL is perfectly valid there.
pf: Fix possible out-of-bounds write

marcel (5):
Check that the userboot version is at least 3, rather than 3 exactly. The structure may be of a newer version and as long as it is backward compatible with 3, we can work with it.
Add vm_set_register() and vm_set_desc() callbacks. These callbacks translate directly into calls to their namesake API functions in libvmmapi.
Support version 4 of the userboot structure by implementing the vm_set_register() and vm_set_desc() callbacks.
Add option -C to have the guest memory included in core files. This aids in debugging OS loaders.
Bump VM_MAX_MEMSEGS from 2 to 3 to match the number of VM segment identifiers present in vmmapi.h. In particular, it's now possible to create a VM_FRAMEBUFFER segment.

marius (1):
Fix and clean up usage of DMA and TSO segments: - At Intel it is believed that most of their products support "only" 40 DMA segments so lower {EM,IGB}_MAX_SCATTER accordingly. Actually, 40 is more than plenty to handle full size TSO packets so it doesn't make sense to further distinguish between MAC variants that really can do 64 DMA segments. Moreover, capping at 40 DMA segments limits the stack usage of {em,igb}_xmit() that - given the rare use of more than these - previously hardly was justifiable, while still being sufficient to avoid the problems seen with em(4) and EM_MAX_SCATTER set to 32. - In igb(4), pass the actually supported TSO parameters up the stack. Previously, the defaults set in if_attach_internal() were applied, i. e. a maximum of 35 TSO segments, which made supporting more than these in the driver pointless. However, this might explain why no problems were seen with IGB_MAX_SCATTER at 64. - In em(4), take the 5 m_pullup(9) invocations performed by em_xmit() in the TSO case into account when reporting TSO parameters upwards. In the worst case, each of these calls will add another mbuf and, thus, the requirement for an additional DMA segment. So for best performance, it doesn't make sense to advertize a maximum of TSO segments that typically will require defragmentation in em_xmit(). Again, this leaves enough room to handle full size TSO packets. - Drop TSO macros from if_lem.h given that corresponding MACS don't support TSO in the first place.

markj (13):
Remove a prototype for the non-existent prelist_del().
Use pfxrtr_del() instead of freeing advertising routers directly.
Release the ref acquired in nd6_dad_find() if DAD is already in progress.
Use the _SAFE loop variant, since the loop body may remove queue entries.
Return an error if both EV_ENABLE and EV_DISABLE are specified for a kevent.
Ensure that we test the event condition when a disabled kevent is enabled.
Improve error handling for posix_fallocate(2) and posix_fadvise(2).
Lock the NDP default router list and count defrouter references.
Fix a typo that prevented pw(8) from setting a user's UID to 0.
Document m_catpkt(), and remove misinformation about m_cat(9).
Use m_catpkt(9) to avoid a possible use-after-free in ieee80211_defrag().
Set tres to NULL to avoid a double free if the m_pullup() below fails.
Use m_catpkt(9) to ensure that pkthdr fields are updated properly.

mav (1):
Set bhsdi_target_transfer_tag to reserved value, which is 0xffffffff.

maxim (1):
o -t comman line option added to the usage().

mckusick (1):
The UFS filesystem requires that the last block of a file always be allocated. When shortening the length of a file in which the new end of the file contains a hole, the hole must have a block allocated.

mmel (1):
OFW_GPIOBUS: Add utility functions for easier handling of OFW GPIO pins.

np (6):
cxgbe: catch up with the latest hardware-related definitions.
cxgbe(4): Add a sysctl to retrieve the maximum speed/bandwidth supported by a port.
Fix some whitespace nits in cxgbetool.c. No functional change.
cxgbe(4): Update T5 and T4 firmwares to
cxgbe(4): First of many changes to reduce diffs with internal shared code:
cxgbe(4): Very basic T6 awareness. This is part of ongoing work to update to the latest internal shared code.

nwhitehorn (2):
Make FPSCR definition endian clean.
Make unions in PowerPC libc endian-safe.

olivier (1):
Add myself as ports committer (including calendar)

oshogbo (3):
According to the sys/kern/capabilities.conf, gethostid(3) should be allowed.
Convert casperd(8) daemon to the libcasper. After calling the cap_init(3) function Casper will fork from it's original process, using pdfork(2). Forking from a process has a lot of advantages: 1. We have the same cwd as the original process. 2. The same uid, gid and groups. 3. The same MAC labels. 4. The same descriptor table. 5. The same routing table. 6. The same umask. 7. The same cpuset(1). From now services are also in form of libraries. We also removed libcapsicum at all and converts existing program using Casper to new architecture.
Remove reaming files of the Casper daemon.

pfg (30):
ext2fs: Remove panics for rename() race conditions.
fputs: Return the number of bytes written.
getln: We cannot expand the buffer beyond INT_MAX.
fputs: Return the number of bytes written.
cron: use (char *)NULL instead of (char *)0 in execle.
crontab: ftruncate() with ftello() instead of ftell().
Fix naive use of ftell(3).
firewire: fix a mismatch introduced in r230558.
Ext2: cleanup setting of ctime/mtime/birthtime.
qlxgb: fix mismatch.
ostiInitiatorIOCompleted(): wrong sizeof() argument.
db(3): Fix aliasing warnings from modern GCC.
db(3): Fix aliasing warnings from modern GCC.
talk(1): Replace select(2) with poll(2)
rpc: fix failure to clear string by passing the wrong size to memset.
getty(8): Use poll(2) and nanosleep(2) instead of select(2).
getty(8): Support VEOL2 and VSTATUS
getty(8): Undo incomplete support VEOL2 and VSTATUS.
rlogin(1): Replace select(2) with poll(2).
pciconf: Silence a GCC warning.
RPC: update the getrpcbyname() definition to include a const qualifier.
Missing tab.
MFV r296159 Sync our libedit with NetBSD's libedit 2016-02-27.
MFV r296164: Update openresolve to version 3.7.3 including:
mbtowc(3): set errno to EILSEQ if an incomplete character is passed.
Add sunrpc compat define for xp_sock.
MFV r296350: Split each domain again after striping any trailing dot.
Work around aliasing issues detected in modern GCC.
xdr: Fix xdr_rpc* defines.
Stray tabs and spaces.

phil (1):
Add entries for Phil Shafer (phil@)

rrs (1):
This fixes the fastpath code to have a better module initialization sequence when included in loader.conf. It also fixes it so that no matter if some one incorrectly specifies a load order, the lists and such will be initialized on demand at that time so no one can make that mistake.

sbruno (1):
The register read/write mphy functions have misleading whitespace around the locked check. This cleanup merely preserves the existing functionality while improving the ready check.

se (6):
Make WARNS=6 safe.
Use __unused instead of casting to void to silence the unused parameter warning.
Remove O_SYNC from the options passed to dbmopen().
Fix possible out-of-bounds access detected by Ulrich Spörleins "scan-build". Some invalid PCI device selectors could cause read access to an initialized variable next to the array (local loop index variable).
Remove redundant check for "(dinfo != NULL)", it has already been performed as the first part of this complex loop conditional.
Fix syntax error introduced in previous commit where I removed one character to few. I should have waited for the kernel compile to finish, even though the change seemed so trivial.

sephe (52):
hyperv/hn: Fix typo in comment
tcp/lro: Allow drivers to set the TCP ACK/data segment aggregation limit
hyperv/hn: Set the TCP ACK/data segment aggregation limit
hyperv/hn: Add option to allow sharing TX taskq between hn instances
hyperv/hn: Always do transmission scheduling.
hyperv/hn: Change global tunable prefix to
hyperv/hn: Split RX ring data structure out of softc
hyperv/hn: Use taskqueue_enqueue()
hyperv/hn: Use non-fast taskqueue for transmission
hyperv/hn: Split TX ring data structure out of softc
hyperv/hn: Use buf_ring for txdesc list
hyperv/hn: Add option to bind TX taskqueues to the specified CPU
hyperv/hn: Enable IP header checksum offloading for WIN8 (WinServ2012)
hyperv/hn: Free the txdesc buf_ring when the TX ring is destroyed
hyperv/hn: Rename TX related function and struct fields a bit
hyperv/hn: Staticize and rename packet TX done function
hyperv/hn: Add TX method for txeof processing.
hyperv/hn: Factor out hn_send_pkt() from hn_start_locked()
hyperv/hn: Use IFQ_DRV_PREPEND instead of IF_PREPEND
hyperv/stor: Fix print format
hyperv/utils: Code rearrange and cleanup
hyperv/vmbus: Use free(9) for interrupt page; it is allocated by malloc(9)
hyperv/hn: Implement ifnet.if_transmit method
hyperv/hn: Hold the TX ring lock then drain TX desc buf_ring
hyperv: Wait 5 seconds for hyperv result, instead of 500ms
hyperv: Use atomic_fetchadd_int to get GPADL id.
hyperv: Remove useless channel inbound_lock
hyperv: Always set device for channels
hyperv/hn: Pass channel as the channel callback argument
hyperv/hn: Pass channel to TX/RX done
hyperv/hn: Associate TX/RX ring with channel
hyperv/hn: Remove the useless num_outstanding_sends
hyperv/hn: Make transmission path channel aware
buf_ring/drbr: Add buf_ring_peek_clear_sc and use it in drbr_peek
hyperv: Use proper fence function to keep store-load order for msgs
hyperv/channel: Add debug sysctl nodes for channel indices
hyperv/hn: Switch to if_transmit by default after r296178
hyperv/hn: Put LRO aggregation limit settings under FreeBSD version check
hyperv/hn: Utilize mbuf flowid
hyperv/channel: Add sysctl node for channel owner cpu
hyperv/hn: Set hash per-packet-info for each packet transmission
hyperv/channel: Nuke useless stack variable
hyperv/chan: Add sysctl node to check whether monitor is allocated or not
hyperv/chan: Function renaming; no functional change
hyperv/chan: Factor out the vcpu setting
hyperv/hn: Pass channel to hv_nv_on_receive_completion()
hyperv/hn: Make read buffer per-channel
hyperv/hn: Fix typo in comment
hyperv/hn: Make # of rings configurable
hyperv/hn: Add multiple channel support, a.k.a. vRSS
hyperv/hn: Pass channel to send done callbacks.
hyperv/hn: Add per-TX ring stats for # of transmitted packets

sgalabov (7):
Add myself as src committer
Currently BERI's loader is including the 32-bit version of the FICL MIPS sysdep.h (sys/boot/ficl/mips/sysdep.h) instead of the 64-bit version (sys/boot/ficl/mips64/sysdep.h).
So far wasn't included in the following files: sys/boot/fdt/Makefile sys/boot/uboot/fdt/Makefile sys/boot/uboot/lib/Makefile
These changes attempt to put things in order before the introduction of MIPS ubldr.
This review aims at introducing ubldr (loader with U-Boot interface) for MIPS (32 and 64-bit, LE and BE). The changes were tested with QEMU's 'mips' target.
Fix build failure introduced by r296182
Fix ubldr build failure on mipsn32 and mipsn32el targets.

skra (29):
Initial OMAP4 WUGEN pass-through driver. SPI interrupts are passed through WUGEN to GIC. Hardware initialization is left in state after reset as well as before.
Temporary overwrite bad definition of elm interrupt property in Linux dts files. It may be removed once it will be fixed upstream.
Do not use DMA channels used by GPU.
Use EARLY_DRIVER_MODULE() for ti_scm driver to be attached before am335x_prcm driver which uses it. Used BUS_PASS_BUS is a quick pick for now and may be revised when other drivers start using multipass feature.
Evaluate also VM_PROT_EXECUTE protection in pmap_preboot_map_attr(). Before this change all mappings done by this function were executable as pte entries have NOT EXECUTABLE bit.
Remove pd_prot and pd_cache members from struct arm_devmap_entry. The struct is used for definition of static device mappings which should always have same protection and attributes.
Include pte-v6.h only where needed.
Remove unneeded vector_page_setprot() for __ARM_ARCH >= 6. A vector page is always mapped in KVA space and so it's always writeable.
Do not use PMAP_DOMAIN_KERNEL definition for __ARM_ARCH >= 6 as domains are not utilized there. Only domain #0 is used and there is no reference to it in the whole pmap-v6.c. Thus initialize domain access register in locore-v6.c without reference too.
Remove unneeded definitions after r291406. Also remove redundant and not used L1_ADDR_BITS definition.
Remove redundant L2_ADDR_MASK definition and replace it by primary one.
Remove redundant ARM_L2_ADDR_BITS and L2_ADDR_BITS definitions and replace them by primary ones where needed.
Rename pmap.h to pmap-v4.h and remove pmap-v6.h include from it. Create new pmap.h which includes specific header according to __ARM_ARCH.
Move common definitions from both pmap-v4.h and pmap-v6.h into pmap.h. (1) MI interface needed for vm subsystem. (2) MD interface created for ARM architecture to be used in files shared by armv4 and armv6 platforms.
Rename pte.h to pte-v4.h and start including directly either pte-v4.h or pte-v6.h in files which needs it.
Remove AP_KRW definition not needed after r295801.
Remove not used definitions and fix some style nits. No functional changes.
Remove not used static function pmap_kenter_attr().
Rename busdma_machdep.c to busdma_machdep-v4.c, pmap.c to pmap-v4.c and trap.c to trap-v4.c to be plain and consistent with other armv4 specific files.
As is included from , there is no need to include it explicitly when is already included.
As is included from , there is no need to include it explicitly when is already included.
As is included from , there is no need to include it explicitly when is already included.
As is included from , there is no need to include it explicitly when is already included.
Move ARM_L2_PIPT option to std.armv6 for all armv6 platforms. Only L2 PIPT cache is supported for __ARM_ARCH >= 6.
Remove armv6 specific part from armv4 specific file and update comment. No functional change.
Remove redundant __ARM_ARCH >= 6 check in armv6 specific files.
Move IPI related parts back to (ARM) machine specific file now, when the interrupt framework is also going to be used by another (MIPS) architecture. IPI implementations may vary much across different architectures.
Mark other parts of interrupt framework as INTR_SOLO option specific.
Remove an alternative way for dealing with root interrupt controller which is not complete. Likely, it was forgotten and not removed before committing.

smh (3):
Fix NULL pointer dereferences
Removed unused label and fix mutex_exit order
Fix ixl with RSS

sobomax (7):
Right now, the "virtual hole" API feature of lseek(2) is very vaguely documented and easy to miss.
Clear up confision as to who the original historical authors of code and manual page were.
Fix section number of .Xr geom_uzip in r295782.
Improve mkuzip(8) and geom_uzip(4), merge in LZMA support from mkulzma(8) and geom_uncompress(4):
Obsolete mkulzma(8) and geom_uncompress(4), their functionality is now provided by mkuzip(8) and geom_uzip(4) respectively.
Kill few remaininng instances of GEOM_UNCOMPRESS.
o kill few remaining references to the GEOM_UNCOMPRESS;

thomas (1):
Reorganize the handling all-zeroes terminal block in sparse mode

trasz (27):
Make the "invalid numeric value" error message actually displayable (was a dead code before).
Add speed limit to dd(1). This is useful for testing RCTL disk io limits (when they actually get committed, that is), and might also come in handy in other situations.
Fix .Xr - autofs(5) is section 5, not 8.
Mark amd(8) and all related utilities as obsolete.
Fix typo.
Fix typos in .Xrs.
Autofs is section 5, not 4.
The tcpdump is section 1, not 8.
dump(1) -> dump(8).
sendmsg(3) -> sendmsg(2)
sysconf(2) -> sysconf(3)
Fix typo.
kenv(8) -> kenv(1)
tzsetup(1) -> tzsetup(8)
Fix typo.
eventtimers(7) -> eventtimers(4)
ddb(9) -> ddb(4)
carp(8) -> carp(4)
sha256(8) -> sha256(1)
jls(1) -> jls(8)
errno(3) -> errno(2)
kbdmux(8) -> kbdmux(4)
ioctl(8) -> ioctl(2)
{kbdcontrol,vidcontrol,quota,telnet}(8) -> {kbdcontrol,vidcontrol,quota,telnet}(1)
Fix typo.
Connect pmc.haswellxeon(3) to the build; looks like it was missed in r279829.
Fix section numbers for autofs(5), kbdcontrol(1), vidcontrol(1), quota(1), and telnet(1) in the right place.

tuexen (10):
Improve the teardown of the SCTP stack.
Whitespace changes.
Address a warning reported by D5245 / PVS.
Code cleanup which will silence a warning in PVS / D5245.
Add protection code for issues reported by PVS / D5245.
Fix reporting of mapped addressed in getpeername() and getsockname() for IPv6 SCTP sockets. This bugs were found because of an issue reported by PVS / D5245.
Add some protection code.
Add protection code.
Use the SCTP level pointer, not the interface level.
Don't leak an address in an error path.

vangyzen (1):
ichsmb: add PCI device ID for Intel Sunrise Point-H SMBus controller

wma (13):
Fix ThunderX external PEM bus offset
Add Intel 10Gb support to ARM64 GENERIC kernel config
Make pci_host_generic and thunderx_pci common * provided OFW interface for pci_host_generic (for handling devices which are present in DTS under the PCI node) * removed support for internal PCI from arm64/cavium * cleaned up and made most of the code common
Add support for Enhanced Allocation in pciconf
Add ns16550a compatible string in UART 8250 driver
Change format string in pciconf EA to jx
Restore ThunderX Pass1.1 PCI changes removed by r295962
Fix fdt_get_mem_regions() to work with 64-bit addresses
Add uart 8250 device to GENERIC arm64 configuration
Enable SRE_EL2 on ARM64
Get memory ranges from FDT if no EFI API is available on ARM64
Improve ThunderX PEM driver to work on pass2 revision
Support for Enhanced Allocation in PCI

yongari (4):
Fix variable assignment.
Remove duplicated check.
Fix a bug introduced in r295736 TX descriptor address should be updated for valid chain.
ifnet lock was changed to use sx(9) long time ago. Don't hold a driver lock for if_free(9).

zbb (16):
Support PEM that is not a PCI endpoint on ThunderX
Fix bug in ofwbus_release_resource() for non-ofwbus descendants
Introduce bus_get_bus_tag() method
Extract common code from PowerPC's ofw_pci
Fix build for i386 and arm64 after r295755
Revert r295756: Extract common code from PowerPC's ofw_pci
Add support for hardware Tx and Rx checksums to VNIC driver
Enable LRO support for VNIC driver
Prefetch next CQ descriptor in Completion Queue handling loop of VNIC
Enable HWSTATS capability for VNIC
Clean-up network interface settings for VNIC
Improve VNIC performance on Tx path by immediate packet transmission
Remove soft reset from the VNIC's PF driver
Fix VNIC support for Pass2.0 ThunderX chips
Enable CQ count threshold interrupt on VNIC Pass2.0
Introduce HW TSO support for VNIC