1Release notes for FreeBSD 16.0. 2 3This file describes new user-visible features, changes and updates relevant to 4users of binary FreeBSD releases. Each entry should describe the change in no 5more than several sentences and should reference manual pages where an 6interested user can find more information. Entries should wrap after 80 7columns. Each entry should begin with one or more commit IDs on one line, 8specified as a comma separated list and/or range, followed by a colon and a 9newline. Entries should be separated by a newline. 10 11Changes to this file should not be MFCed. 12 134c486fe40267: 14 The multicast routing modules, ip_mroute and ip6_mroute, are now FIB-aware. 15 That is, there is a multicast routing table per FIB, rather than a global 16 table. One can run a multicast routing daemon within each FIB; the FIB of 17 the routing socket determines the corresponding multicast routing table. 18 1965f5dd42f11c: 20 sh(1) add -l option which makes sh act as a login shell and read the profile. 21 22beab8b1ddf86: 23 bintrans(1) now supports the RFC2047 variant of quoted print 24 259dc96d8bc3f2: 26 libusb(3) hotplug event are now really hotplugged using either 27 nlsysevent or devd(9) if available. 28 29d64db8892f85: 30 sh(1) is the default shell in the release media. 31 3268ad2b0d7af2: 33 ncurses has been updated to 6.6 34 3552d19df19ed6: 36 nvi(1) has been update to 2.2.2 37 384d5c434ed16e, 2cfca8e710f2: 39 diff3(1) has replaced GNU diff3 and is now fully compatible. 40 41625dc44832cd: 42 tr(1) is now UTF-8 compliant. 43 4462fba0054d9e: 45 ee(1) is now UTF-8 compliant. 46 475df6aca10906: 48 ed(1) is now UTF-8 compliant. 49 5028ff4d35f8b9: 51 Update libedit to 2026-04-03. 52 53b42e852e89cb: 54 Add a new pkg-serve(8) to serve packages over TCP via inetd. 55 568b9775912cbc, 53b4ae3bf0f7: 57 Add support for an NFSv4 root file system. 58 Note that NFSv3 is still used for bootstrapping. See 59 "Diskless Operation with PXE" under "Advanced Networking" in the 60 FreeBSD Handbook. To configure an NFSv4 root fs, you will need 61 a line in /boot/loader.conf like boot.nfsroot.options="nfsv4" and 62 either a line in /etc/sysctl.conf like vfs.nfs.enable_uidtostring=1 63 or an additional line in /boot/loader.conf like 64 boot.nfsroot.user_domain="<user-domain>", 65 if you are running nfsuserd(8). 66 67ab9257599a5: 68 The src.conf(5) options WITHOUT_BZIP2 and WITHOUT_BZIP2_SUPPORT 69 have been removed. 70 71af099eaa5ec: 72 Users belonging to the new vmm group can now create bhyve VMs. See the 73 vmm(4) man page for details. 74 75c71354030a2: 76 Users wishing to use bhyve PCI passthrough in jails must create the 77 jail with the allow.vmm_ppt option configured. 78 794d707825bf62: 80 The pdwait(2) system call was added. It provides wait(2)-like 81 functionality for a process descriptor (see procdesc(4)). 82 835c2ee618d5ec: 84 The pdrfork(2) system call was added. It behaves like rfork(2) but 85 additionally returns a process descriptor (see procdesc(4)). 86 8741ccf82b29f3, 591c7a08bf8a: 88 On arm64, memcpy(3), memmove(3) and memset(3) are now implemented using 89 the MOPS (Memory Operations) feature instructions when they are 90 implemented by the system. 91 923f0aea09689f: 93 posix_spawnattr_getexecfd_np(3) and posix_spawnattr_setexecfd_np(3) 94 functions were added to libc. The latter causes posix_spawn(3) to 95 call fexecve(2) on the specified file descriptor rather than executing 96 the file at the provided path. 97 98fb4b0c911951: 99 witness(4) now prints additional information to the system console when 100 a lock order reversal is detected, making debugging such issues easier. 101 1021322760fd127: 103 It is now possible to compile both the 4BSD and ULE schedulers into the 104 same kernel. The scheduler is selectable at boot-time using a tunable. 105 See the SCHEDULERS section of the tuning(7) man page for details. 106 107627e126dbb07: 108 The default value of the net.inet6.ip6.connect_in6addr_wild has changed 109 to 0. This means that connecting to the all-zeroes IPv6 address no longer 110 implicitly results in a loopback connection. 111 112afa70a8496e9: 113 The pthread_tryjoin_np(3) function was added to libthr(3). It provides 114 the same functionality as pthread_join(3) but returns instead of 115 blocking if the target thread has not yet exited. 116 117ecc039be7fdd: 118 NanoBSD images can now be built as a non-root user. 119 1207f54c65abc67: 121 Update smartpqi(4) to vendor version 14.4690.0.2008 - 15.2.0.2008 122 for the SmartArray storage controllers. This adds support for new 123 controllers, adds code that utilizes the new BIG_IOCTL_Command_struct 124 and allows the I/O buffer size for a single passthrough ioctl to be 125 stored as a 32 bit integer instead of the original 16 bit integer. 126 127b0d997095022: 128 The pf firewall now supports passing IPv6 packets to divert(4) 129 sockets via divert-to actions. 130 1310fa7b3bee72e, c71f18998e0b, 4162a419a475, f5a77dc8f8df: 132 LinuxKPI based wireless drivers, especially iwlwifi(4) are now 133 supported on RISC-V. 134 1358254b0dec02b3, bd55cbb50c588: 136 The mac(4) framework has been extended to support jail operations, 137 allowing a policy to constrain jail creation, modification, removal, and 138 attachment. Jails have additionally been made a first-class mac(4) 139 object, and a mac.label jail(8) property has been added to facilitate 140 administration of their labels. 141 142c558eca47970: 143 The smartpqi(4) driver was updated to vendor version 4660.0.2002 144 for the SmartArry storage controllers. 145 146493d26c58e73: 147 The aq(4) driver was added, imported from the vendor repository. 148 This provides support for Aquantia / Marvell PCIe 1/2.5/5/10 Gigabit 149 Ethernet adapters (AQC107, AQC108, AQC109, AQC111, AQC112). 150 1511a7151f79664: 152 A new CAM provider was added to dtrace. This enables tracing of I/O 153 requests through the CAM layer without relying on fragile function 154 boundary tracing. See dtrace_cam(4) for details. 155 156b8c99e7d912f: 157 The tdestroy(3) function was added to libc. The tdestroy() function 158 destroys a whole search tree, freeing all allocated nodes. 159 1604bf8ce037dc8: 161 The rge(4) driver was added, ported from OpenBSD. This provides 162 support for RealTek RTL8125, RTL8126 and RTL8127 PCIe Ethernet 163 controllers. 164 165cbc6f7e941e4: 166 bhyve(8)'s VNC device can now listen on a unix(4) socket for VNC client 167 connections. 168 16939ee24182b92: 170 An rc(8) service can now be started as a specific user for auditing 171 purposes by setting the <service>_audit_user rc.conf(5) variable. 172 173dcb0790bad43: 174 A setaudit(8) utility was added to the base system. This provides a 175 simple command-line wrapper for the setaudit(2) and setaudit_addr(2) 176 system calls. 177 1788e3fd450cc53, 949cff4dceff, 0e724de9ed6f, 9f49f436a9ec, e35191ccf3b3: 179 Add support for an extension to NFSv4.2 (RFCnnnn) that 180 supports handling of POSIX draft ACLs via getfacl(1)/setfacl(1). 181 182dbac191956f9, fe21dbf70aa8: 183 Support for the kcmp(2) system call and fcntl(F_DUPFD_QUERY) for Linux 184 binaries. 185 186a86dc94b84d1: 187 tzdata2025c was imported. 188 189a98e5d785001: 190 Add strdupa(3) and strndupa(3) macros for compatability with glibc. 191 192e967a2a03677: 193 divert socket compat removal, consumers must use PF_DIVERT instead of 194 PF_INET. 195 1964453ec5b8716b, 2a3b1641756a: 197 The reboot(8) and halt(8) commands now perform a graceful shutdown similar 198 to the shutdown(8) command including invoking rc.d scripts to shutdown 199 services. The fastboot(8) and fasthalt(8) commands still perform a "fast" 200 reboot or shutdown. 201 202d9788eabffa4: 203 ipfilter cannot be used in a jail by default. 204 2050ff0c19e7f70: 206 ipfs(8) is no longer built by default. 207 208575efcfff22f: 209 sendfile(2)'s SF_SYNC flag was removed. 210 211057dae35ffc6, 51a01f3debff, ca3e47b0ea68: 212 hwpmc(4) support for Intel Alder Lake 6-B7, 6-BA, and 6-BF CPU 213 hwpmc(4) support for Intel Emerald Rapids CPUs 214 hwpmc(4) support for Intel Alder Lake-N CPUs 215 2161ecf01065b45: 217 New library libuvmem provides the vmem(9) API to userspace applications. 218 219b6cad334e64: 220 Make game controller devices accessible by members of the "game" group 221 by default. 222 223791c531402bd: 224 Add driver for Feature Integration Technology Inc. (aka Fintek) F81232 225 USB to serial devices. 226 227ec0cd287f55f: 228 Support for NVMe/TCP offload on Chelsio T7 adapters. The nvmf_che(4) 229 module enables T7 adapters to process NVMe/TCP PDUs directly similar to 230 the PDU offload provided by cxgbei(4) for iSCSI. 231