Re: git: 3fd60a6b73ac - main - awk: Merge upstream 2nd Edition Awk Book

From: Ronald Klop <ronald_at_FreeBSD.org>
Date: Tue, 14 Nov 2023 08:33:08 UTC
Interesting. The mail diff seems to contain the complete UPDATING file. If I click the cgit link I only get the 5 lines of changes in UPDATING as the diffstat is indicating.

I have no idea who I should bother with this directly. :-)

Regards,
Ronald.


On 11/14/23 05:51, Warner Losh wrote:
> The branch main has been updated by imp:
> 
> URL: https://cgit.FreeBSD.org/src/commit/?id=3fd60a6b73ac01a72df89751f173970fae4cae73
> 
> commit 3fd60a6b73ac01a72df89751f173970fae4cae73
> Merge: 194df014feeb 2e406c584fe4
> Author:     Warner Losh <imp@FreeBSD.org>
> AuthorDate: 2023-11-02 16:32:01 +0000
> Commit:     Warner Losh <imp@FreeBSD.org>
> CommitDate: 2023-11-14 04:49:34 +0000
> 
>      awk: Merge upstream 2nd Edition Awk Book
>      
>      Merge in the November 2nd, 2023 version of one true awk.
>      
>      This brings in Unicode support, CSV support and a number of bug fixes.
>      
>      Sponsored by:           Netflix
>      Reviewed by:            delphij
>      Differential Revision:  https://reviews.freebsd.org/D42447
> 
>   .gitattributes                                     |    1 +
>   UPDATING                                           |    5 +
>   contrib/one-true-awk/FIXES                         | 1373 +------------------
>   contrib/one-true-awk/FIXES.1e                      | 1429 ++++++++++++++++++++
>   contrib/one-true-awk/README.md                     |   79 +-
>   contrib/one-true-awk/awk.1                         |   31 +-
>   contrib/one-true-awk/awk.h                         |   18 +-
>   contrib/one-true-awk/awkgram.y                     |   49 +-
>   contrib/one-true-awk/b.c                           |  322 ++++-
>   .../one-true-awk/bugs-fixed/getline-corruption.awk |    5 +
>   .../one-true-awk/bugs-fixed/getline-corruption.in  |    1 +
>   .../one-true-awk/bugs-fixed/getline-corruption.ok  |    1 +
>   contrib/one-true-awk/bugs-fixed/rstart-rlength.awk |   10 +
>   contrib/one-true-awk/bugs-fixed/rstart-rlength.ok  |    4 +
>   .../one-true-awk/bugs-fixed/unicode-fs-rs-1.awk    |    6 +
>   contrib/one-true-awk/bugs-fixed/unicode-fs-rs-1.in |    2 +
>   contrib/one-true-awk/bugs-fixed/unicode-fs-rs-1.ok |    5 +
>   .../one-true-awk/bugs-fixed/unicode-fs-rs-2.awk    |    7 +
>   contrib/one-true-awk/bugs-fixed/unicode-fs-rs-2.in |    2 +
>   contrib/one-true-awk/bugs-fixed/unicode-fs-rs-2.ok |    4 +
>   .../one-true-awk/bugs-fixed/unicode-null-match.awk |    6 +
>   .../one-true-awk/bugs-fixed/unicode-null-match.bad |    1 +
>   .../one-true-awk/bugs-fixed/unicode-null-match.ok  |    1 +
>   contrib/one-true-awk/lex.c                         |   56 +-
>   contrib/one-true-awk/lib.c                         |  137 +-
>   contrib/one-true-awk/main.c                        |   15 +-
>   contrib/one-true-awk/makefile                      |    1 +
>   contrib/one-true-awk/parse.c                       |    2 +-
>   contrib/one-true-awk/proto.h                       |    7 +-
>   contrib/one-true-awk/run.c                         |  647 ++++++++-
>   contrib/one-true-awk/testdir/T.argv                |    6 +
>   contrib/one-true-awk/testdir/T.csv                 |   81 ++
>   contrib/one-true-awk/testdir/T.misc                |    6 +
>   contrib/one-true-awk/testdir/T.utf                 |  194 +++
>   contrib/one-true-awk/testdir/T.utfre               |  234 ++++
>   contrib/one-true-awk/testdir/tt.15                 |    2 +-
>   contrib/one-true-awk/testdir/xc                    |   17 -
>   contrib/one-true-awk/tran.c                        |   26 +-
>   38 files changed, 3178 insertions(+), 1615 deletions(-)
> 
> diff --cc .gitattributes
> index 11fec084166f,000000000000..ab5a1eee005d
> mode 100644,000000..100644
> --- a/.gitattributes
> +++ b/.gitattributes
> @@@ -1,7 -1,0 +1,8 @@@
>   +*.c    diff=cpp
>   +*.h    diff=cpp
>   +*.cpp  diff=cpp
>   +*.hpp  diff=cpp
>   +*.py   diff=python
>   +. svn-properties=svn:keywords=tools/build/options/WITHOUT_LOADER_ZFS
>   +.clang-format svn-properties=svn:keywords=FreeBSD=%H
> ++contrib/one-true-awk/bugs-fixed/unicode-null-match.bad binary
> diff --cc UPDATING
> index 763f8f29a4f0,000000000000..17117a193394
> mode 100644,000000..100644
> --- a/UPDATING
> +++ b/UPDATING
> @@@ -1,2101 -1,0 +1,2106 @@@
>   +Updating Information for users of FreeBSD-CURRENT.
>   +
>   +This file is maintained and copyrighted by M. Warner Losh <imp@freebsd.org>.
>   +See end of file for further details.  For commonly done items, please see the
>   +COMMON ITEMS: section later in the file.  These instructions assume that you
>   +basically know what you are doing.  If not, then please consult the FreeBSD
>   +handbook:
>   +
>   +    https://docs.freebsd.org/en/books/handbook/cutting-edge/#makeworld
>   +
>   +Items affecting the ports and packages system can be found in
>   +/usr/ports/UPDATING.  Please read that file before updating system packages
>   +and/or ports.
>   +
>   +NOTE TO PEOPLE WHO THINK THAT FreeBSD 15.x IS SLOW:
>   +	FreeBSD 15.x has many debugging features turned on, in both the kernel
>   +	and userland.  These features attempt to detect incorrect use of
>   +	system primitives, and encourage loud failure through extra sanity
>   +	checking and fail stop semantics.  They also substantially impact
>   +	system performance.  If you want to do performance measurement,
>   +	benchmarking, and optimization, you'll want to turn them off.  This
>   +	includes various WITNESS- related kernel options, INVARIANTS, malloc
>   +	debugging flags in userland, and various verbose features in the
>   +	kernel.  Many developers choose to disable these features on build
>   +	machines to maximize performance.  (To completely disable malloc
>   +	debugging, define WITH_MALLOC_PRODUCTION in /etc/src.conf and rebuild
>   +	world, or to merely disable the most expensive debugging functionality
>   +	at runtime, run "ln -s 'abort:false,junk:false' /etc/malloc.conf".)
>   +
> ++20231114:
> ++	One True Awk updated to the Second Edition as of 20231102 (254b979f32df)
> ++	Notable features include UTF-8 support and --csv to support comma
> ++	separated data.
> ++
>   +20231113:
>   +	The WITHOUT_LLD_IS_LD option has been removed.  When LLD is enabled
>   +	it is always installed as /usr/bin/ld.
>   +
>   +20231027:
>   +	Forward compatibility (running the new code on old kernels) for the
>   +	"ino64" project have been removed. The need for it has passed long ago.
>   +
>   +20231018:
>   +	Commit 57ce37f9dcd0 changed the internal KAPI between the
>   +	nfscommon and nfscl modules.  Both must be rebuilt from sources.
>   +
>   +20231010:
>   +	dialog(1) has been replaced in base by bsddialog(1), while most of the
>   +	time replacing a dialog(1) call by a bsddialog(1) call works out of the
>   +	box, bsddialog(1) is not considered as a drop-in replacement for
>   +	dialog(1).
>   +
>   +	If you do depend on dialog(1) functionality, please install cdialog
>   +	from ports:
>   +
>   +	pkg install cdialog
>   +
>   +20230927:
>   +	The EARLY_AP_STARTUP kernel option is mandatory on x86.  The option
>   +	has been added to DEFAULTS, so it should automatically be included in
>   +	custom kernel configurations without any additional change.
>   +
>   +20230922:
>   +	A new loader tunable net.pf.default_to_drop allows pf(4)’s default
>   +	behaviour to be changed from pass to drop. Previously this required
>   +	recompiling the kernel with the option PF_DEFAULT_TO_DROP.
>   +
>   +20230914:
>   +	Enable splitting out pkgbase manpages into separate packages by
>   +	default. To disable this, set WITHOUT_MANSPLITPKG=yes in src.conf.
>   +
>   +20230911:
>   +	Move standard include files to the clibs-dev package and move clang
>   +	internal libraries and headers to clang and clang-dev. Upgrading systems
>   +	installed using pkgbase past this change involves extra steps to allow
>   +	for these file moves:
>   +
>   +		pkg upgrade -y FreeBSD-utilities
>   +		pkg upgrade -y FreeBSD-utilities-dev
>   +		pkg upgrade -y
>   +
>   +20230909:
>   +	Enable vnet sysctl variables to be loader tunable. SYSCTLs which
>   +	belongs to VNETs can be initialized during early boot or module
>   +	loading if they are marked with CTLFLAG_TUN and there are
>   +	corresponding kernel environment variables.
>   +
>   +20230901:
>   +	The WITH_INIT_ALL_PATTERN and WITH_INIT_ALL_ZERO build options have
>   +	been replaced by INIT_ALL=pattern and INIT_ALL=zero respectively.
>   +
>   +20230824:
>   +	FreeBSD 15.0-CURRENT.
>   +
>   +20230817:
>   +	Serial communication (in boot loaders, kernel, and userland) has
>   +	been changed to default to 115200 bps, in line with common industry
>   +	practice and typcial firmware serial console redirection
>   +	configuration.
>   +
>   +	Note that the early x86 BIOS bootloader (i.e., boot0sio) does not
>   +	support rates above 9600 bps and is not changed. boot0sio users may
>   +	set BOOT_COMCONSOLE_SPEED=9600 to use 9600 for all of the boot
>   +	components, or use the standard boot0 and have the boot2 stage start
>   +	with the serial port at 115200.
>   +
>   +20230807:
>   +	Following the general removal of MIPS support, the ath(4) AHB bus-
>   +	frontend has been removed, too, and building of the PCI support is
>   +	integrated with the ath(4) main module again. As a result, there's
>   +	no longer a need for if_ath_pci_load="YES" in /boot/loader.conf or
>   +	"device ath_pci" in the kernel configuration.
>   +
>   +20230803:
>   +	MAXCPU has been increased to 1024 in the amd64 GENERIC kernel config.
>   +	Out-of-tree kernel modules will need to be rebuilt.
>   +
>   +20230724:
>   +	CAM has been mechanically updated s/u_int(64|32|16|8)_t/uint\1_t/g
>   +	to move to the standard uintXX_t types from the old, traditional
>   +	BSD u_intXX_t types. This should be a NOP, but may cause problems
>   +	for out of tree changes. The SIMs were not updated since most of
>   +	the old u_intXX_t uses weren't due to CAM interfaces.
>   +
>   +20230713:
>   +	stable/14 branch created.
>   +
>   +20230629:
>   +	The heuristic for detecting old chromebooks with an EC bug that requires
>   +	atkbdc driver workarounds has changed. There should be no functional
>   +	change, but if your old chromebook's keyboard stops working, please
>   +	file a PR and assign it to imp.
>   +
>   +20230623:
>   +	OpenSSL has been updated to version 3.0, including changes throughout
>   +	the base system.  It is important to rebuild third-party software
>   +	after upgrading.
>   +
>   +20230619:
>   +	To enable pf rdr rules for connections initiated from the host, pf
>   +	filter rules can be optionally enabled for packets delivered
>   +	locally. This can change the behavior of rules which match packets
>   +	delivered to lo0. To enable this feature:
>   +
>   +		sysctl net.pf.filter_local=1
>   +		service pf restart
>   +
>   +	When enabled, its best to ensure that packets delivered locally are not
>   +	filtered, e.g. by adding a 'skip on lo' rule.
>   +
>   +20230613:
>   +	Improvements to libtacplus(8) mean that tacplus.conf(5) now
>   +	follows POSIX shell syntax rules. This may cause TACACS+
>   +	authentication to fail if the shared secret contains a single
>   +	quote, double quote, or backslash character which isn't
>   +	already properly quoted or escaped.
>   +
>   +20230612:
>   +	Belatedly switch the default nvme block device on x86 from nvd to nda.
>   +	nda created nvd compatibility links by default, so this should be a
>   +	nop. If this causes problems for your application, set hw.nvme.use_nvd=1
>   +	in your loader.conf or add `options NVME_USE_NVD=1` to your kernel
>   +	config. To disable the nvd compatibility aliases, add
>   +	kern.cam.nda.nvd_compat=0 to loader.conf.  The default has been nda on
>   +	all non-x86 platforms for some time now. If you need to fall back,
>   +	please email imp@freebsd.org about why.
>   +
>   +	Encrypted swap partitions need to be changed from nvd to nda if you
>   +	migrate, or you need to use the above to switch back to nvd.
>   +
>   +20230422:
>   +	Remove portsnap(8).  Users are encouraged to obtain the ports tree
>   +	using git instead.
>   +
>   +20230420:
>   +	Add jobs.mk to save typing. Enables -j${JOB_MAX} and logging
>   +	eg.
>   +		make buildworld-jobs
>   +	runs
>   +		make -j${JOB_MAX} buildworld > ../buildworld.log 2>&1
>   +
>   +	where JOB_MAX is derrived from ncpus in local.sys.mk if not set in env.
>   +
>   +20230316:
>   +	Video related devices for some arm devices have been renamed.
>   +	If you have a custom kernel config and want to use hdmi output on
>   +	IMX6 board you need to add "device dwc_hdmi" "device imx6_hdmi" and
>   +	"device imx6_ipu" to it.
>   +	If you have a custom kernel config and want to use hdmi output on
>   +	TI AM335X board you need to add "device tda19988" to it.
>   +	If you add "device hdmi" in it you need to remove it as it doesn't
>   +	exist anymore.
>   +
>   +20230221:
>   +	Introduce new kernel options KBD_DELAY1 and KBD_DELAY2. See atkbdc(4)
>   +	for details.
>   +
>   +20230206:
>   +	sshd now defaults to having X11Forwarding disabled, following upstream.
>   +	Administrators who wish to enable X11Forwarding should add
>   +	`X11Forwarding yes` to /etc/ssh/sshd_config.
>   +
>   +20230204:
>   +	Since commit 75d41cb6967 Huawei 3G/4G LTE Mobile Devices do not default
>   +	to ECM, but NCM mode and need u3g and ucom modules loaded. See cdce(4).
>   +
>   +20230130:
>   +	As of commit 7c40e2d5f685, the dependency on netlink(4) has been added
>   +	to the linux_common(4) module. Users relying on linux_common may need
>   +	to complile netlink(4) module if it is not present in their kernel.
>   +
>   +20230126:
>   +	The WITHOUT_CXX option has been removed. C++ components in the base
>   +	system are now built unconditionally.
>   +
>   +20230113:
>   +	LinuxKPI pci.h changes may require out-of-tree drivers to be recompiled.
>   +	Bump _FreeBSD_version to 1400078 to be able to detect this change.
>   +
>   +20221212:
>   +	llvm-objump is now always installed as objdump.  Previously there was
>   +	no /usr/bin/objdump unless the WITH_LLVM_BINUTILS knob was used.
>   +
>   +	Some LLVM objdump options have a different output format compared to
>   +	GNU objdump; readelf is available for inspecting ELF files, and GNU
>   +	objdump is available from the devel/binutils port or package.
>   +
>   +20221205:
>   +	dma(8) has replaced sendmail(8) as the default mta.  For people willing
>   +	to reenable sendmail(8):
>   +
>   +	$ cp /usr/share/examples/sendmail/mailer.conf /etc/mail/mailer.conf
>   +
>   +	and add sendmail_enable="YES" to rc.conf.
>   +
>   +20221204:
>   +	hw.bus.disable_failed_devices has changed from 'false' to 'true' by
>   +	default. Now if newbus succeeds in probing a device, but fails to attach
>   +	the device, we'll disable the device. In the past, we'd keep retrying
>   +	the device on each new driver loaded. To get that behavior now, one
>   +	needs to use devctl to re-enable the device, and reprobe it (or set
>   +	the sysctl/tunable hw.bus.disable_failed_devices=false).
>   +
>   +	NOTE: This was reverted 20221205 due to unexpected compatibility issues
>   +
>   +20221122:
>   +	pf no longer accepts 'scrub fragment crop' or 'scrub fragment drop-ovl'.
>   +	These configurations are no longer automatically reinterpreted as
>   +	'scrub fragment reassemble'.
>   +
>   +20221121:
>   +	The WITHOUT_CLANG_IS_CC option has been removed.  When Clang is enabled
>   +	it is always installed as /usr/bin/cc (and c++, cpp).
>   +
>   +20221026:
>   +	Some programs have been moved into separate packages. It is recommended
>   +	for pkgbase users to do:
>   +
>   +	pkg install FreeBSD-dhclient FreeBSD-geom FreeBSD-resolvconf \
>   +	  FreeBSD-devd FreeBSD-devmatch
>   +
>   +	after upgrading to restore all the component that were previously
>   +	installed.
>   +
>   +20221002:
>   +	OPIE has been removed from the base system.  If needed, it can
>   +	be installed from ports (security/opie) or packages (opie).
>   +	Otherwise, make sure that your PAM policies do not reference
>   +	pam_opie or pam_opieaccess.
>   +
>   +20220610:
>   +	LinuxKPI pm.h changes require an update to the latest drm-kmod version
>   +	before re-compiling to avoid errors.
>   +
>   +20211230:
>   +	The macros provided for the manipulation of CPU sets (e.g. CPU_AND)
>   +	have been modified to take 2 source arguments instead of only 1.
>   +	Externally maintained sources that use these macros will have to
>   +	be adapted. The FreeBSD version has been bumped to 1400046 to
>   +	reflect this change.
>   +
>   +20211214:
>   +	A number of the kernel include files are able to be included by
>   +	themselves.  A test has been added to buildworld to enforce this.
>   +
>   +20211209:
>   +	Remove mips as a recognized target. This starts the decommissioning of
>   +	mips support in FreeBSD. mips related items will be removed wholesale in
>   +	the coming days and weeks.
>   +
>   +	This broke the NO_CLEAN build for some people. Either do a clean build
>   +	or touch
>   +		lib/clang/include/llvm/Config/Targets.def
>   +		lib/clang/include/llvm/Config/AsmParsers.def
>   +		lib/clang/include/llvm/Config/Disassemblers.def
>   +		lib/clang/include/llvm/Config/AsmPrinters.def
>   +	before the build to force everything to rebuild that needs to.
>   +
>   +20211202:
>   +	Unbound support for RFC8375: The special-use domain 'home.arpa' is
>   +	by default blocked. To unblock it use a local-zone nodefault
>   +	statement in unbound.conf:
>   +		local-zone: "home.arpa." nodefault
>   +
>   +	Or use another type of local-zone to override with your choice.
>   +
>   +	The reason for this is discussed in Section 6.1 of RFC8375:
>   +	Because 'home.arpa.' is not globally scoped and cannot be secured
>   +	using DNSSEC based on the root domain's trust anchor, there is no way
>   +	to tell, using a standard DNS query, in which homenet scope an answer
>   +	belongs.  Consequently, users may experience surprising results with
>   +	such names when roaming to different homenets.
>   +
>   +20211110:
>   +	Commit b8d60729deef changed the TCP congestion control framework so
>   +	that any of the included congestion control modules could be
>   +	the single module built into the kernel. Previously newreno
>   +	was automatically built in through direct reference. As of
>   +	this commit you are required to declare at least one congestion
>   +	control module (e.g. 'options CC_NEWRENO') and to also declare a
>   +	default using the CC_DEFAULT option (e.g. options CC_DEFAULT="newreno\").
>   +	The GENERIC configuration includes CC_NEWRENO and defines newreno
>   +	as the default. If no congestion control option is built into the
>   +	kernel and you are including networking, the kernel compile will
>   +	fail. Also if no default is declared the kernel compile will fail.
>   +
>   +20211118:
>   +	Mips has been removed from universe builds. It will be removed from the
>   +	tree shortly.
>   +
>   +20211106:
>   +	Commit f0c9847a6c47 changed the arguments for VOP_ALLOCATE.
>   +	The NFS modules must be rebuilt from sources and any out
>   +	of tree file systems that implement their own VOP_ALLOCATE
>   +	may need to be modified.
>   +
>   +20211022:
>   +	The synchronous PPP kernel driver sppp(4) has been removed.
>   +	The cp(4) and ce(4) drivers are now always compiled with netgraph(4)
>   +	support, formerly enabled by NETGRAPH_CRONYX option.
>   +
>   +20211020:
>   +	sh(1) is now the default shell for the root user.  To force root to use
>   +	the csh shell, please run the following command as root:
>   +
>   +	# chsh -s csh
>   +
>   +20211004:
>   +	Ncurses distribution has been split between libtinfow and libncurses
>   +	with libncurses.so becoming a linker (ld) script to seamlessly link
>   +	to libtinfow as needed. Bump _FreeBSD_version to 1400035 to reflect
>   +	this change.
>   +
>   +20210923:
>   +	As of commit 8160a0f62be6, the dummynet module no longer depends on the
>   +	ipfw module. Dummynet can now be used by pf as well as ipfw. As such
>   +	users who relied on this dependency may need to include ipfw in the
>   +	list of modules to load on their systems.
>   +
>   +20210922:
>   +	As of commit 903873ce1560, the mixer(8) utility has got a slightly
>   +	new syntax. Please refer to the mixer(8) manual page for more
>   +	information. The old mixer utility can be installed from ports:
>   +	audio/freebsd-13-mixer
>   +
>   +20210911:
>   +	As of commit 55089ef4f8bb, the global variable nfs_maxcopyrange has
>   +	been deleted from the nfscommon.ko.  As such, nfsd.ko must be built
>   +	from up to date sources to avoid an undefined reference when
>   +	being loaded.
>   +
>   +20210817:
>   +	As of commit 62ca9fc1ad56 OpenSSL no longer enables kernel TLS
>   +	by default.  Users can enable kernel TLS via the "KTLS" SSL
>   +	option.  This can be enabled globally by using a custom
>   +	OpenSSL config file via OPENSSL_CONF or via an
>   +	application-specific configuration option for applications
>   +	which permit setting SSL options via SSL_CONF_cmd(3).
>   +
>   +20210811:
>   +	Commit 3ad1e1c1ce20 changed the internal KAPI between the NFS
>   +	modules. Therefore, all need to be rebuilt from sources.
>   +
>   +20210730:
>   +	Commit b69019c14cd8 removes pf's DIOCGETSTATESNV ioctl.
>   +	As of be70c7a50d32 it is no longer used by userspace, but it does mean
>   +	users may not be able to enumerate pf states if they update the kernel
>   +	past b69019c14cd8 without first updating userspace past be70c7a50d32.
>   +
>   +20210729:
>   +	As of commit 01ad0c007964 if_bridge member interfaces can no longer
>   +	change their MTU. Changing the MTU of the bridge itself will change the
>   +	MTU on all member interfaces instead.
>   +
>   +20210716:
>   +	Commit ee29e6f31111 changed the internal KAPI between the nfscommon
>   +	and nfsd modules. Therefore, both need to be rebuilt from sources.
>   +	Bump __FreeBSD_version to 1400026 for this KAPI change.
>   +
>   +20210715:
>   +	The 20210707 awk update brought in a change in behavior. This has
>   +	been corrected as of d4d252c49976. Between these dates, if you
>   +	installed a new awk binary, you may not be able to build a new
>   +	kernel because the change in behavior affected the genoffset
>   +	script used to build the kernel. If you did update, the fix is
>   +	to update your sources past the above hash and do
>   +		% cd usr.bin/awk
>   +		% make clean all
>   +		% sudo -E make install
>   +	to enable building kernels again.
>   +
>   +20210708:
>   +	Commit 1e0a518d6548 changed the internal KAPI between the NFS
>   +	modules. They all need to be rebuilt from sources.  I did not
>   +	bump __FreeBSD_version, since it was bumped recently.
>   +
>   +20210707:
>   +	awk has been updated to the latest one-true-awk version 20210215.
>   +	This contains a number of minor bug fixes.
>   +
>   +20210624:
>   +	The NFSv4 client now uses the highest minor version of NFSv4
>   +	supported by the NFSv4 server by default instead of minor version 0,
>   +	for NFSv4 mounts.
>   +	The "minorversion" mount option may be used to override this default.
>   +
>   +20210618:
>   +	Bump __FreeBSD_version to 1400024 for LinuxKPI changes.
>   +	Most notably netdev.h can change now as the (last) dependencies
>   +	(mlx4/ofed) are now using struct ifnet directly, but also for PCI
>   +	additions and others.
>   +
>   +20210618:
>   +	The directory "blacklisted" under /usr/share/certs/ has been
>   +	renamed to "untrusted".
>   +
>   +20210611:
>   +	svnlite has been removed from base. Should you need svn for any reason
>   +	please install the svn package or port.
>   +
>   +20210611:
>   +	Commit e1a907a25cfa changed the internal KAPI between the krpc
>   +	and nfsserver.  As such, both modules must be rebuilt from
>   +	sources.  Bump __FreeBSD_version to 1400022.
>   +
>   +20210610:
>   +	The an(4) driver has been removed from FreeBSD.
>   +
>   +20210608:
>   +	The vendor/openzfs branch was renamed to vendor/openzfs/legacy to
>   +	start tracking OpenZFS upstream more closely. Please see
>   +https://lists.freebsd.org/archives/freebsd-current/2021-June/000153.html
>   +	for details on how to correct any errors that might result. The
>   +	short version is that you need to remove the old branch locally:
>   +	    git update-ref -d refs/remotes/freebsd/vendor/openzfs
>   +	(assuming your upstream origin is named 'freebsd').
>   +
>   +20210525:
>   +	Commits 17accc08ae15 and de102f870501 add new files to LinuxKPI
>   +	which break drm-kmod.  In addition various other additions where
>   +	committed. Bump __FreeBSD_version to 1400015 to be able to
>   +	detect this.
>   +
>   +20210513:
>   +	Commit ca179c4d74f2 changed the package in which the OpenSSL
>   +	libraries and utilities are packaged.
>   +	It is recommended for pkgbase user to do:
>   +	pkg install -f FreeBSD-openssl
>   +	before pkg upgrade otherwise some dependencies might not be met
>   +	and pkg will stop working as libssl will not be present anymore
>   +	on the system.
>   +
>   +20210426:
>   +	Commit 875977314881 changed the internal KAPI between
>   +	the nfsd and nfscommon modules.  As such these modules
>   +	need to be rebuilt from sources.
>   +	Without this patch in your NFSv4.1/4.2 server, enabling
>   +	delegations by setting vfs.nfsd.issue_delegations non-zero
>   +	is not recommended.
>   +
>   +20210411:
>   +	Commit 7763814fc9c2 changed the internal KAPI between
>   +	the krpc and NFS.  As such, the krpc, nfscommon and
>   +	nfscl modules must all be rebuilt from sources.
>   +	Without this patch, NFSv4.1/4.2 mounts should not
>   +	be done with the nfscbd(8) daemon running, to avoid
>   +	needing a working back channel for server->client RPCs.
>   +
>   +20210330:
>   +	Commit 01ae8969a9ee fixed the NFSv4.1/4.2 server so that it
>   +	handles binding of the back channel as required by RFC5661.
>   +	Until this patch is in your server, avoid use of the "nconnects"
>   +	mount option for Linux NFSv4.1/4.2 mounts.
>   +
>   +20210225:
>   +	For 64-bit architectures the base system is now built with Position
>   +	Independent Executable (PIE) support enabled by default.  It may be
>   +	disabled using the WITHOUT_PIE knob.  A clean build is required.
>   +
>   +20210128:
>   +	Various LinuxKPI functionality was added which conflicts with DRM.
>   +	Please update your drm-kmod port to after the __FreeBSD_version 1400003
>   +	update.
>   +
>   +20210121:
>   +	stable/13 branch created.
>   +
>   +20210108:
>   +	PC Card attachments for all devices have been removed. In the case of
>   +	wi and cmx, the entire drivers were removed because they were only
>   +	PC Card devices. FreeBSD_version 1300134 should be used for this
>   +	since it was bumped so recently.
>   +
>   +20210107:
>   +	Transport-independent parts of HID support have been split off the USB
>   +	code in to separate subsystem.  Kernel configs which include one of
>   +	ums, ukbd, uhid, atp, wsp, wmt, uaudio, ugold or ucycom drivers should
>   +	be updated with adding of "device hid" line.
>   +
>   +20210105:
>   +	ncurses installation has been modified to only keep the widechar
>   +	enabled version.  Incremental build is broken for that change, so it
>   +	requires a clean build.
>   +
>   +20201223:
>   +	The FreeBSD project has migrated from Subversion to Git. Temporary
>   +	instructions can be found at
>   +	https://github.com/bsdimp/freebsd-git-docs/blob/main/src-cvt.md
>   +	and other documents in that repo.
>   +
>   +20201216:
>   +	The services database has been updated to cover more of the basic
>   +	services expected in a modern system. The database is big enough
>   +	that it will cause issues in mergemaster in Releases previous to
>   +	12.2 and 11.3, or in very old current systems from before r358154.
>   +
>   +20201215:
>   +	Obsolete in-tree GDB 6.1.1 has been removed.  GDB (including kgdb)
>   +	may be installed from ports or packages.
>   +
>   +20201124:
>   +	ping6 has been merged into ping.  It can now be called as "ping -6".
>   +	See ping(8) for details.
>   +
>   +20201108:
>   +	Default value of net.add_addr_allfibs has been changed to 0.
>   +	If you have multi-fib configuration and rely on existence of all
>   +	interface routes in every fib, you need to set the above sysctl to 1.
>   +
>   +20201030:
>   +	The internal pre-processor in the calendar(1) program has been
>   +	extended to support more C pre-processor commands (e.g. #ifdef, #else,
>   +	and #undef) and to detect unbalanced conditional statements.
>   +	Error messages have been extended to include the filename and line
>   +	number if processing stops to help fixing malformed data files.
>   +
>   +20201026:
>   +	All the data files for the calendar(1) program, except calendar.freebsd,
>   +	have been moved to the deskutils/calendar-data port, much like the
>   +	jewish calendar entries were moved to deskutils/hebcal years ago. After
>   +	make delete-old-files, you need to install it to retain full
>   +	functionality. calendar(1) will issue a reminder for files it can't
>   +	find.
>   +
>   +20200923:
>   +	LINT files are no longer generated. We now include the relevant NOTES
>   +	files. Note: This may cause conflicts with updating in some cases.
>   +	        find sys -name LINT\* -delete
>   +	is suggested across this commit	to remove the generated	LINT files.
>   +
>   +	If you have tried to update with generated files there, the svn
>   +	command you want to un-auger the tree is
>   +		cd sys/amd64/conf
>   +		svn revert -R .
>   +	and then do the above find from the top level. Substitute 'amd64'
>   +	above with where the error message indicates a conflict.
>   +
>   +20200824:
>   +	OpenZFS support has been integrated. Do not upgrade root pools until
>   +	the loader is updated to support zstd. Furthermore, we caution against
>   +	'zpool upgrade' for the next few weeks. The change should be transparent
>   +	unless you  want to use new features.
>   +
>   +	Not all "NO_CLEAN" build scenarios work across these changes. Many
>   +	scenarios have been tested and fixed, but rebuilding kernels without
>   +	rebuilding world may fail.
>   +
>   +	The ZFS cache file has moved from /boot to /etc to match the OpenZFS
>   +	upstream default. A fallback to /boot has been added for mountroot.
>   +
>   +	Pool auto import behavior at boot has been moved from the kernel module
>   +	to an explicit "zpool import -a" in one of the rc scripts enabled by
>   +	zfs_enable=YES. This means your non-root zpools won't auto import until
>   +	you upgrade your /etc/rc.d files.
>   +
>   +20200824:
>   +	The resume code now notifies devd with the 'kernel' system
>   +	rather than the old 'kern' subsystem to be consistent with
>   +	other use. The old notification will be created as well, but
>   +	will be removed prior to FreeBSD 14.0.
>   +
>   +20200821:
>   +	r362275 changed the internal API between the kernel RPC and the
>   +	NFS modules. As such, all the modules must be recompiled from
>   +	sources.
>   +
>   +20200817:
>   +	r364330 modified the internal API used between the NFS modules.
>   +	As such, all the NFS modules must be re-compiled from sources.
>   +
>   +20200816:
>   +	Clang, llvm, lld, lldb, compiler-rt, libc++, libunwind and openmp have
>   +	been upgraded to 11.0.0.  Please see the 20141231 entry below for
>   +	information about prerequisites and upgrading, if you are not already
>   +	using clang 3.5.0 or higher.
>   +
>   +20200810:
>   +	r364092 modified the internal ABI used between the kernel NFS
>   +	modules.  As such, all of these modules need to be rebuilt
>   +	from sources, so a version bump was done.
>   +
>   +20200807:
>   +	Makefile.inc has been updated to work around the issue documented in
>   +	20200729. It was a case where the optimization of using symbolic links
>   +	to point to binaries created a situation where we'd run new binaries
>   +	with old libraries starting midway through the installworld process.
>   +
>   +20200729:
>   +	r363679 has redefined some undefined behavior in regcomp(3); notably,
>   +	extraneous escapes of most ordinary characters will no longer be
>   +	accepted.  An exp-run has identified all of the problems with this in
>   +	ports, but other non-ports software may need extra escapes removed to
>   +	continue to function.
>   +
>   +	Because of this change, installworld may encounter the following error
>   +	from rtld: Undefined symbol "regcomp@FBSD_1.6" -- It is imperative that
>   +	you do not halt installworld. Instead, let it run to completion (whether
>   +	successful or not) and run installworld once more.
>   +
>   +20200627:
>   +	A new implementation of bc and dc has been imported in r362681. This
>   +	implementation corrects non-conformant behavior of the previous bc
>   +	and adds GNU bc compatible options. It offers a number of extensions,
>   +	is much faster on large values, and has support for message catalogs
>   +	(a number of languages are already supported, contributions of further
>   +	languages welcome). The option WITHOUT_GH_BC can be used to build the
>   +	world with the previous versions of bc and dc.
>   +
>   +20200625:
>   +	r362639 changed the internal API used between the NFS kernel modules.
>   +	As such, they all need to be rebuilt from sources.
>   +
>   +20200613:
>   +	r362158 changed the arguments for VFS_CHECKEXP().  As such, any
>   +	out of tree file systems need to be modified and rebuilt.
>   +	Also, any file systems that are modules must be rebuilt.
>   +
>   +20200604:
>   +	read(2) of a directory fd is now rejected by default.  root may
>   +	re-enable it for system root only on non-ZFS filesystems with the
>   +	security.bsd.allow_read_dir sysctl(8) MIB if
>   +	security.bsd.suser_enabled=1.
>   +
>   +	It may be advised to setup aliases for grep to default to `-d skip` if
>   +	commonly non-recursively grepping a list that includes directories and
>   +	the potential for the resulting stderr output is not tolerable.  Example
>   +	aliases are now installed, commented out, in /root/.cshrc and
>   +	/root/.shrc.
>   +
>   +20200523:
>   +	Clang, llvm, lld, lldb, compiler-rt, libc++, libunwind and openmp have
>   +	been upgraded to 10.0.1.  Please see the 20141231 entry below for
>   +	information about prerequisites and upgrading, if you are not already
>   +	using clang 3.5.0 or higher.
>   +
>   +20200512:
>   +	Support for obsolete compilers has been removed from the build system.
>   +	Clang 6 and GCC 6.4 are the minimum supported versions.
>   +
>   +20200424:
>   +	closefrom(2) has been moved under COMPAT12, and replaced in libc with a
>   +	stub that calls close_range(2).  If using a custom kernel configuration,
>   +	you may want to ensure that the COMPAT_FREEBSD12 option is included, as
>   +	a slightly older -CURRENT userland and older FreeBSD userlands may not
>   +	be functional without closefrom(2).
>   +
>   +20200414:
>   +	Upstream DTS from Linux 5.6 was merged and they now have the SID
>   +	and THS (Secure ID controller and THermal Sensor) node present.
>   +	The DTB overlays have now been removed from the tree for the H3/H5 and
>   +	A64 SoCs and the aw_sid and aw_thermal driver have been updated to
>   +	deal with upstream DTS. If you are using those overlays you need to
>   +	remove them from loader.conf and update the DTBs on the FAT partition.
>   +
>   +20200310:
>   +	Clang, llvm, lld, lldb, compiler-rt, libc++, libunwind and openmp have
>   +	been upgraded to 10.0.0.  Please see the 20141231 entry below for
>   +	information about prerequisites and upgrading, if you are not already
>   +	using clang 3.5.0 or higher.
>   +
>   +20200309:
>   +	The amd(8) automount daemon has been removed from the source tree.
>   +	As of FreeBSD 10.1 autofs(5) is the preferred tool for automounting.
>   +	amd is still available in the sysutils/am-utils port.
>   +
>   +20200301:
>   +	Removed brooktree driver (bktr.4) from the tree.
>   +
>   +20200229:
>   +	The WITH_GPL_DTC option has been removed.  The BSD-licenced device tree
>   +	compiler in usr.bin/dtc is used on all architectures which use dtc, and
>   +	the GPL dtc is available (if needed) from the sysutils/dtc port.
>   +
>   +20200229:
>   +	The WITHOUT_LLVM_LIBUNWIND option has been removed.  LLVM's libunwind
>   +	is used by all supported CPU architectures.
>   +
>   +20200229:
>   +	GCC 4.2.1 has been removed from the tree.  The WITH_GCC,
>   +	WITH_GCC_BOOTSTRAP, and WITH_GNUCXX options are no longer available.
>   +	Users who wish to build FreeBSD with GCC must use the external toolchain
>   +	ports or packages.
>   +
>   +20200220:
>   +	ncurses has been updated to a newer version (6.2-20200215). Given the ABI
>   +	has changed, users will have to rebuild all the ports that are linked to
>   +	ncurses.
>   +
>   +20200217:
>   +	The size of struct vnet and the magic cookie have changed.
>   +	Users need to recompile libkvm and all modules using VIMAGE
>   +	together with their new kernel.
>   +
>   +20200212:
>   +	Defining the long deprecated NO_CTF, NO_DEBUG_FILES, NO_INSTALLLIB,
>   +	NO_MAN, NO_PROFILE, and NO_WARNS variables is now an error.  Update
>   +	your Makefiles and scripts to define MK_<var>=no instead as required.
>   +
>   +	One exception to this is that program or library Makefiles should
>   +	define MAN to empty rather than setting MK_MAN=no.
>   +
>   +20200108:
>   +	Clang/LLVM is now the default compiler and LLD the default
>   +	linker for riscv64.
>   +
>   +20200107:
>   +	make universe no longer uses GCC 4.2.1 on any architectures.
>   +	Architectures not supported by in-tree Clang/LLVM require an
>   +	external toolchain package.
>   +
>   +20200104:
>   +	GCC 4.2.1 is now not built by default, as part of the GCC 4.2.1
>   +	retirement plan.  Specifically, the GCC, GCC_BOOTSTRAP, and GNUCXX
>   +	options default to off for all supported CPU architectures.  As a
>   +	short-term transition aid they may be enabled via WITH_* options.
>   +	GCC 4.2.1 is expected to be removed from the tree on 2020-03-31.
>   +
>   +20200102:
>   +	Support for armv5 has been disconnected and is being removed. The
>   +	machine combination MACHINE=arm MACHINE_ARCH=arm is no longer valid.
>   +	You must now use a MACHINE_ARCH of armv6 or armv7. The default
>   +	MACHINE_ARCH for MACHINE=arm is now armv7.
>   +
>   +20191226:
>   +	Clang/LLVM is now the default compiler for all powerpc architectures.
>   +	LLD is now the default linker for powerpc64.  The change for powerpc64
>   +	also includes a change to the ELFv2 ABI, incompatible with the existing
>   +	ABI.
>   +
>   +20191226:
>   +	Kernel-loadable random(4) modules are no longer unloadable.
>   +
>   +20191222:
>   +	Clang, llvm, lld, lldb, compiler-rt, libc++, libunwind and openmp have
>   +	been upgraded to 9.0.1.  Please see the 20141231 entry below for
>   +	information about prerequisites and upgrading, if you are not already
>   +	using clang 3.5.0 or higher.
>   +
>   +20191212:
>   +	r355677 has modified the internal interface used between the
>   +	NFS modules in the kernel. As such, they must all be upgraded
>   +	simultaneously. I will do a version bump for this.
>   +
>   +20191205:
>   +	The root certificates of the Mozilla CA Certificate Store have been
>   +	imported into the base system and can be managed with the certctl(8)
>   +	utility.  If you have installed the security/ca_root_nss port or package
>   +	with the ETCSYMLINK option (the default), be advised that there may be
>   +	differences between those included in the port and those included in
>   +	base due to differences in nss branch used as well as general update
>   +	frequency.  Note also that certctl(8) cannot manage certs in the
>   +	format used by the security/ca_root_nss port.
>   +
>   +20191120:
>   +	The amd(8) automount daemon has been disabled by default, and will be
>   +	removed in the future.  As of FreeBSD 10.1 the autofs(5) is available
>   +	for automounting.
>   +
>   +20191107:
>   +	The nctgpio and wbwd drivers have been moved to the superio bus.
>   +	If you have one of these drivers in a kernel configuration, then
>   +	you should add device superio to it.  If you use one of these drivers
>   +	as a module and you compile a custom set of modules, then you should
>   +	add superio to the set.
>   +
>   +20191021:
>   +	KPIs for network drivers to access interface addresses have changed.
>   +	Users need to recompile NIC driver modules together with kernel.
>   +
>   +20191021:
>   +	The net.link.tap.user_open sysctl no longer prevents user opening of
>   +	already created /dev/tapNN devices.  Access is still controlled by
>   +	node permissions, just like tun devices.  The net.link.tap.user_open
>   +	sysctl is now used only to allow users to perform devfs cloning of
>   +	tap devices, and the subsequent open may not succeed if the user is not
>   +	in the appropriate group.  This sysctl may be deprecated/removed
>   +	completely in the future.
>   +
>   +20191009:
>   +	mips, powerpc, and sparc64 are no longer built as part of
>   +	universe / tinderbox unless MAKE_OBSOLETE_GCC is defined. If
>   +	not defined, mips, powerpc, and sparc64 builds will look for
>   +	the xtoolchain binaries and if installed use them for universe
>   +	builds. As llvm 9.0 becomes vetted for these architectures, they
>   +	will be removed from the list.
>   +
>   +20191009:
>   +	Clang, llvm, lld, lldb, compiler-rt, libc++, libunwind and openmp have
>   +	been upgraded to 9.0.0.  Please see the 20141231 entry below for
>   +	information about prerequisites and upgrading, if you are not already
>   +	using clang 3.5.0 or higher.
>   +
>   +20191003:
>   +	The hpt27xx, hptmv, hptnr, and hptrr drivers have been removed from
>   +	GENERIC.  They are available as modules and can be loaded by adding
>   +	to /boot/loader.conf hpt27xx_load="YES", hptmv_load="YES",
>   +	hptnr_load="YES", or hptrr_load="YES", respectively.
>   +
>   +20190913:
>   +	ntpd no longer by default locks its pages in memory, allowing them
>   +	to be paged out by the kernel. Use rlimit memlock to restore
>   +	historic BSD behaviour. For example, add "rlimit memlock 32"
>   +	to ntp.conf to lock up to 32 MB of ntpd address space in memory.
>   +
>   +20190823:
>   +	Several of ping6's options have been renamed for better consistency
>   +	with ping.  If you use any of -ARWXaghmrtwx, you must update your
>   +	scripts.  See ping6(8) for details.
>   +
>   +20190727:
>   +	The vfs.fusefs.sync_unmount and vfs.fusefs.init_backgrounded sysctls
>   +	and the "-o sync_unmount" and "-o init_backgrounded" mount options have
>   +	been removed from mount_fusefs(8).  You can safely remove them from
>   +	your scripts, because they had no effect.
>   +
>   +	The vfs.fusefs.fix_broken_io, vfs.fusefs.sync_resize,
>   +	vfs.fusefs.refresh_size, vfs.fusefs.mmap_enable,
>   +	vfs.fusefs.reclaim_revoked, and vfs.fusefs.data_cache_invalidate
>   +	sysctls have been removed.  If you felt the need to set any of them to
>   +	a non-default value, please tell asomers@FreeBSD.org why.
>   +
>   +20190713:
>   +	Default permissions on the /var/account/acct file (and copies of it
>   +	rotated by periodic daily scripts) are changed from 0644 to 0640
>   +	because the file contains sensitive information that should not be
>   +	world-readable.  If the /var/account directory must be created by
>   +	rc.d/accounting, the mode used is now 0750.  Admins who use the
>   +	accounting feature are encouraged to change the mode of an existing
>   +	/var/account directory to 0750 or 0700.
>   +
>   +20190620:
>   +	Entropy collection and the /dev/random device are no longer optional
>   +	components.  The "device random" option has been removed.
>   +	Implementations of distilling algorithms can still be made loadable
>   +	with "options RANDOM_LOADABLE" (e.g., random_fortuna.ko).
>   +
>   +20190612:
>   +	Clang, llvm, lld, lldb, compiler-rt, libc++, libunwind and openmp have
>   +	been upgraded to 8.0.1.  Please see the 20141231 entry below for
>   +	information about prerequisites and upgrading, if you are not already
>   +	using clang 3.5.0 or higher.
>   +
>   +20190608:
>   +	A fix was applied to i386 kernel modules to avoid panics with
>   +	dpcpu or vnet.  Users need to recompile i386 kernel modules
>   +	having pcpu or vnet sections or they will refuse to load.
>   +
>   +20190513:
>   +	User-wired pages now have their own counter,
>   +	vm.stats.vm.v_user_wire_count.  The vm.max_wired sysctl was renamed
>   +	to vm.max_user_wired and changed from an unsigned int to an unsigned
>   +	long.  bhyve VMs wired with the -S are now subject to the user
>   +	wiring limit; the vm.max_user_wired sysctl may need to be tuned to
>   +	avoid running into the limit.
>   +
>   +20190507:
>   +	The IPSEC option has been removed from GENERIC.  Users requiring
>   +	ipsec(4) must now load the ipsec(4) kernel module.
>   +
>   +20190507:
>   +	The tap(4) driver has been folded into tun(4), and the module has been
>   +	renamed to tuntap.  You should update any kld_list="if_tap" or
>   +	kld_list="if_tun" entries in /etc/rc.conf, if_tap_load="YES" or
>   +	if_tun_load="YES" entries in /boot/loader.conf to load the if_tuntap
>   +	module instead, and "device tap" or "device tun" entries in kernel
> *** 1499 LINES SKIPPED ***
>