1 Release notes for FreeBSD 14.0.
3 This file describes new user-visible features, changes and updates relevant to
4 users of binary FreeBSD releases. Each entry should describe the change in no
5 more than several sentences and should reference manual pages where an
6 interested user can find more information. Entries should wrap after 80
7 columns. Each entry should begin with one or more commit IDs on one line,
8 specified as a comma separated list and/or range, followed by a colon and a
9 newline. Entries should be separated by a newline.
11 Changes to this file should not be MFCed.
14 The lua-flavored loader(8) will now interpret .lua files that appear in
15 loader_conf_files as lua, and execute them in a sandbox. Existing
16 loader environment variables are available as globals in the sandbox,
17 and any global variable set, if not a table value, will be reflected in
18 the loader environment upon successful execution of the configuration
19 file. Environment variables with names that aren't valid lua names may
20 be accessed as indices of _ENV; e.g., _ENV['net.fibs'].
24 nda is now the default nvme device on all platforms. While nda creates
25 nvd links by default so fstab, etc continues to work, configuration
26 should be updated to the new nda devices.
28 To restore the old behavior, add hw.nvme.use_nvd=1 to loader.conf or
29 `options NVME_USE_NVD=1` to the kernel config. To disable the nvd
30 compatibility aliases, add kern.cam.nda.nvd_compat=0 to loader.conf.
33 Change pw (hence bsdinstall) not to move /home to /usr/home.
34 Previously, when creating the path to home directories, pw
35 would move any path in the root directory under /usr, creating
36 a symlink in root. In particular, the default /home would become
37 /usr/home. Now /home is at the top level by default. /usr/home
38 can be used explicitly.
41 Remove TI code from armv7 GENERIC kernel.
42 This code doesn't cope with newer DTS and hasn't in a long time so
43 support for TI armv7 platform (like BeagleBone and Pandaboard) is now
47 Add a new "fwget" utility.
48 The goal of this utility is to inspect the system for peripherals
49 that needs firmware and install the appropriate packages for them.
50 For now only pci subsystem is supported and only firmwares for Intel
51 and AMD GPUs are known.
54 Add a new "syskrb5" mount option for Kerberized NFSv4.1/4.2 mounts.
55 Without this patch, a Kerberized NFSv4.1/4.2 mount must provide
56 a Kerberos credential for the client at mount time.
57 This patch uses a feature of NFSv4.1/4.2 called SP4_NONE, which
58 allows the state maintenance operations to be performed by any
59 authentication mechanism, so that these operations may be done via
60 AUTH_SYS instead of RPCSEC_GSS (KerberosV). As such, no Kerberos
61 credential is required at mount time.
64 330aa8acdec7,ff2f1f691cdb:
65 Adds support for the SP4_MACH_CRED case for the
66 NFSv4.1/4.2 ExchangeID operation since the Linux
67 NFSv4.1/4.2 client is now using this for Kerberized mounts.
68 This change should only affect Kerberized NFSv4.1/4.2 mounts.
69 The Linux Kerberized NFSv4.1/4.2 mounts currently work without
70 support for this because Linux will fall back to SP4_NONE,
71 but there is no guarantee this fallback will work forever.
73 7344856e3a6d and many others:
74 Add support so that nfsd(8), nfsuserd(8), mountd(8), gssd(8)
75 and rpc.tlsservd(8) can be run in an appropriately configured
76 vnet prison. The vnet prison must be on its own file system,
77 have the "allow.nfsd" jail parameter set on it and enforce_statfs
78 cannot be set to "0". Use of UDP and pNFS server configurations
79 are not permitted. (ie. The nfsd command line options "-u", "-p"
80 and "-m" are not supported.)
81 See jail(8), nfsd(8) and mountd(8).
83 2fb4f839f3fc,d89513ed2050,3413ee88c39d,f97a19ecb985,021562c5020d,431d2a81d421:
84 sendmail has been updated to the latest upstream version (8.17.1).
86 4a30d7bb373c,d670a8f7c596,af01b4722577,4e240e55d818:
87 The growfs(7) script can now add a swap partition at the end of
88 the expansion area, and does so by default if there is no existing
92 llvm-objump is now always installed as objdump.
95 mta_start_script along with othermta rc.d script has been retired.
98 The default mail transport agent is now dma(8) replacing sendmail.
101 L3 filtering on if_bridge will do surprising things which aren't
102 fail-safe, so net.link.bridge.pfil_member and
103 net.link.bridge.pfil_bridge now default to zero.
106 A new DTrace provider, kinst, is introduced and documented in
107 dtrace_kinst(4). The provider allows kernel instructions to be traced,
108 similar to the FBT (function boundary tracing) provider except that all
109 instructions may be probed instead of logical entry and return
110 instructions. The provider is currently amd64-only.
115 981ef32230b2,33721eb991d8:
116 These commits make the use of NFSv4.1/4.2 mounts with the "intr"
117 mount option fairly usable, although not 100% correct, so long as
118 the "nolockd" mount option is used as well. See the mount_nfs(8)
119 manual page for more information.
121 b875d4f5ddcb,0685c73cfe88:
122 The NFSv4.1/4.2 client and server will now generate console messages
123 if sessions are broken, suggesting that users check to ensure
124 that the /etc/hostid strings are unique for all NFSv4.1/4.2 clients.
127 makefs(8) has ZFS support; it can create a ZFS pool, backed by a
128 single disk vdev, containing one or more datasets populated from
129 the staging directory.
131 78ee8d1c4cda,f4f56ff43dbd:
132 The in-tree qat(4) driver has been replaced with Intel's QAT driver.
133 The new version provides additional interfaces to the chipset's
134 cryptographic and compression offload functionality.
136 This will have no visible change for most users; however, the new
137 driver does not support Atom C2000 chipsets. To preserve support for
138 those chipsets, the old driver has been renamed to qat_c2xxx and kept
139 in the tree. Users of qat(4) on C2000 hardware will thus need to
140 ensure that qat_c2xxx(4) is loaded instead of qat(4).
142 da5b7e90e740,5a8fceb3bd9f,7b0a665d72c0,13ec1e3155c7,318d0db5fe8a,1ae2c59bcf21:
143 Boottrace is a new kernel-userspace interface for capturing trace
144 events during system boot and shutdown. Event annotations are
147 - The boot and shutdown paths in the kernel
148 - Some key system utilities (init(8), shutdown(8), reboot(8))
149 - rc(8) scripts (via boottrace(8))
151 In contrast to other existing boot-time tracing facilities like TSLOG,
152 Boottrace focuses on the ease of use and is aimed primarily at system
155 It is available in the default GENERIC kernel and can be enabled by
156 toggling a single sysctl(8) variable.
158 See boottrace(4) for more details.
161 Kernel TLS offload now supports receive-side offload of TLS 1.3.
164 if_stf now supports 6rd (RFC5969).
166 c1d255d3ffdb, 3968b47cd974, bd452dcbede6:
167 Add WiFi 6 support to wpa.
169 ba48d52ca6c8,4ac3d08a9693,2533eca1c2b9:
170 The default bell tone is now 800Hz. It may be set with kbdcontrol
171 again. There's devd integration for people wishing to use their sound
175 net.inet.tcp.nolocaltimewait enabled by default. It prevents
176 creation of timewait entries for TCP connections that were
180 sh(1) is now the default shell for the root user.
183 libncursesw has been split into libtinfow and libncursesw, linker
184 scripts should make it transparent for consumers. pkg-config files
185 are also now installed to ease ports detecting the ncurses setup from
189 LLVM's MemorySanitizer can now be used in amd64 kernels. See the
190 kmsan(9) manual page for more information.
193 LLVM's AddressSanitizer can now be used in amd64 kernels. See the
194 kasan(9) manual page for more information.
196 f39dd6a97844,23f24377b1a9,628bd30ab5a4:
197 One True Awk has been updated to the latest from upstream
198 (20210727). All the FreeBSD patches, but one, have now been
199 either up streamed or discarded. Notable changes include:
200 o Locale is no longer used for ranges
202 o Better compatibility with gawk and mawk
204 The one FreeBSD change, likely to be removed in FreeBSD 14, is that
205 we still allow hex numbers, prefixed with 0x, to be parsed and
206 interpreted as hex numbers while all other awks (including one
207 true awk now) interpret them as 0 in line with awk's historic
210 A second change, less likely to be noticed, is the historic wart
211 if -Ft meaning to use hard tab characters as the field separator
212 is deprecated and will likely be removed in FreeBSD 14.
215 Commit ee29e6f31111 added a new sysctl called vfs.nfsd.srvmaxio
216 that can be used to increase the maximum I/O size for the NFS
217 server to any power of 2 up to 1Mbyte while the nfsd(8) is not running.
218 The FreeBSD NFS client can now be set to use a 1Mbyte I/O size
219 via the vfs.maxbcachebuf tunable and the Linux NFS client
220 can also do 1Mbyte I/O.
221 kern.ipc.maxsockbuf will need to be increased. A console
222 message will suggest a setting for it.
225 gconcat(8) has added support for appending devices to the device
226 not present at creation time.
229 Remove support for asymmetric cryptographic operations from
230 the kernel open cryptographic framework (OCF).
233 The NFSv4 client now uses the highest minor version of NFSv4
234 supported by the NFSv4 server by default instead of minor version 0,
236 The "minorversion" mount option may be used to override this default.