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 138b9775912cbc, 53b4ae3bf0f7: 14 Add support for an NFSv4 root file system. 15 Note that NFSv3 is still used for bootstrapping. See 16 "Diskless Operation with PXE" under "Advanced Networking" in the 17 FreeBSD Handbook. To configure an NFSv4 root fs, you will need 18 a line in /boot/loader.conf like boot.nfsroot.options="nfsv4" and 19 either a line in /etc/sysctl.conf like vfs.nfs.enable_uidtostring=1 20 or an additional line in /boot/loader.conf like 21 boot.nfsroot.user_domain="<user-domain>", 22 if you are running nfsuserd(8). 23 24ab9257599a5: 25 The src.conf(5) options WITHOUT_BZIP2 and WITHOUT_BZIP2_SUPPORT 26 have been removed. 27 28af099eaa5ec: 29 Users belonging to the new vmm group can now create bhyve VMs. See the 30 vmm(4) man page for details. 31 32c71354030a2: 33 Users wishing to use bhyve PCI passthrough in jails must create the 34 jail with the allow.vmm_ppt option configured. 35 364d707825bf62: 37 The pdwait(2) system call was added. It provides wait(2)-like 38 functionality for a process descriptor (see procdesc(4)). 39 405c2ee618d5ec: 41 The pdrfork(2) system call was added. It behaves like rfork(2) but 42 additionally returns a process descriptor (see procdesc(4)). 43 4441ccf82b29f3, 591c7a08bf8a: 45 On arm64, memcpy(3), memmove(3) and memset(3) are now implemented using 46 the MOPS (Memory Operations) feature instructions when they are 47 implemented by the system. 48 493f0aea09689f: 50 posix_spawnattr_getexecfd_np(3) and posix_spawnattr_setexecfd_np(3) 51 functions were added to libc. The latter causes posix_spawn(3) to 52 call fexecve(2) on the specified file descriptor rather than executing 53 the file at the provided path. 54 55fb4b0c911951: 56 witness(4) now prints additional information to the system console when 57 a lock order reversal is detected, making debugging such issues easier. 58 591322760fd127: 60 It is now possible to compile both the 4BSD and ULE schedulers into the 61 same kernel. The scheduler is selectable at boot-time using a tunable. 62 See the SCHEDULERS section of the tuning(7) man page for details. 63 64627e126dbb07: 65 The default value of the net.inet6.ip6.connect_in6addr_wild has changed 66 to 0. This means that connecting to the all-zeroes IPv6 address no longer 67 implicitly results in a loopback connection. 68 69afa70a8496e9: 70 The pthread_tryjoin_np(3) function was added to libthr(3). It provides 71 the same functionality as pthread_join(3) but returns instead of 72 blocking if the target thread has not yet exited. 73 74ecc039be7fdd: 75 NanoBSD images can now be built as a non-root user. 76 777f54c65abc67: 78 Update smartpqi(4) to vendor version 14.4690.0.2008 - 15.2.0.2008 79 for the SmartArray storage controllers. This adds support for new 80 controllers, adds code that utilizes the new BIG_IOCTL_Command_struct 81 and allows the I/O buffer size for a single passthrough ioctl to be 82 stored as a 32 bit integer instead of the original 16 bit integer. 83 84b0d997095022: 85 The pf firewall now supports passing IPv6 packets to divert(4) 86 sockets via divert-to actions. 87 880fa7b3bee72e, c71f18998e0b, 4162a419a475, f5a77dc8f8df: 89 LinuxKPI based wireless drivers, especially iwlwifi(4) are now 90 supported on RISC-V. 91 928254b0dec02b3, bd55cbb50c588: 93 The mac(4) framework has been extended to support jail operations, 94 allowing a policy to constrain jail creation, modification, removal, and 95 attachment. Jails have additionally been made a first-class mac(4) 96 object, and a mac.label jail(8) property has been added to facilitate 97 administration of their labels. 98 99c558eca47970: 100 The smartpqi(4) driver was updated to vendor version 4660.0.2002 101 for the SmartArry storage controllers. 102 103493d26c58e73: 104 The aq(4) driver was added, imported from the vendor repository. 105 This provides support for Aquantia / Marvell PCIe 1/2.5/5/10 Gigabit 106 Ethernet adapters (AQC107, AQC108, AQC109, AQC111, AQC112). 107 1081a7151f79664: 109 A new CAM provider was added to dtrace. This enables tracing of I/O 110 requests through the CAM layer without relying on fragile function 111 boundary tracing. See dtrace_cam(4) for details. 112 113b8c99e7d912f: 114 The tdestroy(3) function was added to libc. The tdestroy() function 115 destroys a whole search tree, freeing all allocated nodes. 116 1174bf8ce037dc8: 118 The rge(4) driver was added, ported from OpenBSD. This provides 119 support for RealTek RTL8125, RTL8126 and RTL8127 PCIe Ethernet 120 controllers. 121 122cbc6f7e941e4: 123 bhyve(8)'s VNC device can now listen on a unix(4) socket for VNC client 124 connections. 125 12639ee24182b92: 127 An rc(8) service can now be started as a specific user for auditing 128 purposes by setting the <service>_audit_user rc.conf(5) variable. 129 130dcb0790bad43: 131 A setaudit(8) utility was added to the base system. This provides a 132 simple command-line wrapper for the setaudit(2) and setaudit_addr(2) 133 system calls. 134 1358e3fd450cc53, 949cff4dceff, 0e724de9ed6f, 9f49f436a9ec, e35191ccf3b3: 136 Add support for an extension to NFSv4.2 (RFCnnnn) that 137 supports handling of POSIX draft ACLs via getfacl(1)/setfacl(1). 138 139dbac191956f9, fe21dbf70aa8: 140 Support for the kcmp(2) system call and fcntl(F_DUPFD_QUERY) for Linux 141 binaries. 142 143a86dc94b84d1: 144 tzdata2025c was imported. 145 146a98e5d785001: 147 Add strdupa(3) and strndupa(3) macros for compatability with glibc. 148 149e967a2a03677: 150 divert socket compat removal, consumers must use PF_DIVERT instead of 151 PF_INET. 152 1534453ec5b8716b, 2a3b1641756a: 154 The reboot(8) and halt(8) commands now perform a graceful shutdown similar 155 to the shutdown(8) command including invoking rc.d scripts to shutdown 156 services. The fastboot(8) and fasthalt(8) commands still perform a "fast" 157 reboot or shutdown. 158 159d9788eabffa4: 160 ipfilter cannot be used in a jail by default. 161 1620ff0c19e7f70: 163 ipfs(8) is no longer built by default. 164 165575efcfff22f: 166 sendfile(2)'s SF_SYNC flag was removed. 167 168057dae35ffc6, 51a01f3debff, ca3e47b0ea68: 169 hwpmc(4) support for Intel Alder Lake 6-B7, 6-BA, and 6-BF CPU 170 hwpmc(4) support for Intel Emerald Rapids CPUs 171 hwpmc(4) support for Intel Alder Lake-N CPUs 172 1731ecf01065b45: 174 New library libuvmem provides the vmem(9) API to userspace applications. 175 176b6cad334e64: 177 Make game controller devices accessible by members of the "game" group 178 by default. 179 180791c531402bd: 181 Add driver for Feature Integration Technology Inc. (aka Fintek) F81232 182 USB to serial devices. 183 184ec0cd287f55f: 185 Support for NVMe/TCP offload on Chelsio T7 adapters. The nvmf_che(4) 186 module enables T7 adapters to process NVMe/TCP PDUs directly similar to 187 the PDU offload provided by cxgbei(4) for iSCSI. 188