1a16fdef5SMark JohnstonRelease notes for FreeBSD 16.0. 28dbc2b6eSMark Johnston 38dbc2b6eSMark JohnstonThis file describes new user-visible features, changes and updates relevant to 48dbc2b6eSMark Johnstonusers of binary FreeBSD releases. Each entry should describe the change in no 58dbc2b6eSMark Johnstonmore than several sentences and should reference manual pages where an 68dbc2b6eSMark Johnstoninterested user can find more information. Entries should wrap after 80 78dbc2b6eSMark Johnstoncolumns. Each entry should begin with one or more commit IDs on one line, 8cda1f88dSWarner Loshspecified as a comma separated list and/or range, followed by a colon and a 9cda1f88dSWarner Loshnewline. Entries should be separated by a newline. 108dbc2b6eSMark Johnston 118dbc2b6eSMark JohnstonChanges to this file should not be MFCed. 129734ca05SMark Johnston 13*7f7e9584SXin LI4523eebc6c18: 14*7f7e9584SXin LI less(1) has been updated to version 710. The obsolete lesskey(1) 15*7f7e9584SXin LI utility has been removed; less(1) reads plain-text lesskey files 16*7f7e9584SXin LI such as ~/.lesskey and /etc/syslesskey directly, and the file format 17*7f7e9584SXin LI is now documented in lesskey(5). New features in this release 18*7f7e9584SXin LI include the || command, the right-limit-scroll command, underlining 19*7f7e9584SXin LI of OSC 8 hyperlinks, -DO for coloring them, and LESSMSG, which 20*7f7e9584SXin LI allows less(1) messages to be translated into other languages. 21*7f7e9584SXin LI 22a53aee1cSDevin Teske3fe5961a0b70: 23a53aee1cSDevin Teske sysconf(8) and libbsdconf(3) have been added. sysconf(8) queries 24a53aee1cSDevin Teske and edits loader.conf(5), sysctl.conf(5), and the make.conf(5) 25a53aee1cSDevin Teske family (make.conf, src.conf, and src-env.conf) in the style of 26a53aee1cSDevin Teske sysrc(8). The rc target passes through to sysrc(8). 27a53aee1cSDevin Teske 289bec8a95SRick Macklem7144a1d58c5c, a311bd18a6fb, 884ee8d6c9b4: 299bec8a95SRick Macklem These three patches add the required "glue" so that the 309bec8a95SRick Macklem nfsrdma.ko and nfsclrdma.ko modules can be loaded. 319bec8a95SRick Macklem These modules provide server and client support for 329bec8a95SRick Macklem NFS over RDMA. 339bec8a95SRick Macklem 3489d15536SShengYi Hung34bb38445b07: 3589d15536SShengYi Hung libusb has been updated to upstream 1.0.27 compatible. 3689d15536SShengYi Hung All missing part is implemented and version tag is bumped. 3789d15536SShengYi Hung 3846dc4af5SMark Johnston6563dcb6b1f5: 3946dc4af5SMark Johnston It is now possible to use connectat(2) to connect to a unix(4) socket 4046dc4af5SMark Johnston directly, i.e., without having to specify a name in the sockaddr. 4146dc4af5SMark Johnston 42575af5e2SRick Macklem72e57bc26417, 3dfbbe8586bb, d8e8f9251975: 43575af5e2SRick Macklem These patches provide improvements for the pNFS server 44575af5e2SRick Macklem configuration. New optional features include: 45575af5e2SRick Macklem - Support for striped Flexible File Layouts (RFC8435). 46575af5e2SRick Macklem - Support for pre-creation of files, allowing the 47575af5e2SRick Macklem Open/Create to be done without communicating with 48575af5e2SRick Macklem any DSs, so long as the cache of pre-created files 49575af5e2SRick Macklem is not depleted. 50575af5e2SRick Macklem 51074c42adSRick Macklemb92b9da33006, 13d3bd165e22: 52074c42adSRick Macklem This patch allows vfs.nfsd.srvmaxio to be set to 53074c42adSRick Macklem a value as high as 4Mbytes. It is usually set 54074c42adSRick Macklem via the nfs_server_maxio variable in /etc/rc.conf. 55074c42adSRick Macklem 566c09b760SMark Johnston4c486fe40267: 576c09b760SMark Johnston The multicast routing modules, ip_mroute and ip6_mroute, are now FIB-aware. 586c09b760SMark Johnston That is, there is a multicast routing table per FIB, rather than a global 596c09b760SMark Johnston table. One can run a multicast routing daemon within each FIB; the FIB of 606c09b760SMark Johnston the routing socket determines the corresponding multicast routing table. 615dc4da1aSBaptiste Daroussin 629823698aSJohn Baldwin5c2186b99254,628d7a3270b6: 639823698aSJohn Baldwin When the sector size for an NVMe namespace changes, nda(4) now 649823698aSJohn Baldwin reports this as a media change rather than a disk resize 659823698aSJohn Baldwin event. nda(4) also no longer reports a disk resize event in 669823698aSJohn Baldwin some cases when the namespace's size had not changed. nda(4) 679823698aSJohn Baldwin also reprobes NVMe namespaces each time they are opened to 689823698aSJohn Baldwin check for a new sector size or namespace size. 699823698aSJohn Baldwin 709823698aSJohn Baldwin7a323f873662: 719823698aSJohn Baldwin Remove the le(4) driver. This driver supported older 10Mbps 729823698aSJohn Baldwin and 100Mbps Ethernet adapters. True hardware devices have not 739823698aSJohn Baldwin been used in FreeBSD systems in many years, but the driver was 749823698aSJohn Baldwin previously retained for use with MIPS QEMU virtual machines. 759823698aSJohn Baldwin 769823698aSJohn Baldwine51ef8ae490f: 779823698aSJohn Baldwin Add initial support for instruction-based sampling (IBS) 789823698aSJohn Baldwin performance counters on AMD processors to hwpmc(4). 799823698aSJohn Baldwin 809823698aSJohn Baldwind69fc3a9dc71: 819823698aSJohn Baldwin The EFI boot loader now tries all ZFS pools found during 829823698aSJohn Baldwin probing when looking for a boot pool. Previously it would try 839823698aSJohn Baldwin only the first pool found. 849823698aSJohn Baldwin 859823698aSJohn Baldwin4d5c434ed16e: 869823698aSJohn Baldwin Use the BSD-licensed implementation of diff3 instead of GNU diff3 879823698aSJohn Baldwin by default. 889823698aSJohn Baldwin 899823698aSJohn Baldwin7f54c65abc67: 909823698aSJohn Baldwin Update the smartpqi(4) driver to vendor version 14.4690.0.2008 919823698aSJohn Baldwin - 15.2.0.2008. This includes support for new controllers and 929823698aSJohn Baldwin renaming Microsemi to Microchip. 939823698aSJohn Baldwin 949823698aSJohn Baldwin350c1232a57a: 959823698aSJohn Baldwin nvmecontrol(8)'s telemetry-log now works reliably. 969823698aSJohn Baldwin 979823698aSJohn Baldwind14e018024bb,b125c4d13095,1322760fd127,0730a05cd383: 989823698aSJohn Baldwin Permit both SCHED_ULE and SCHED_4BSD to be compiled into the 999823698aSJohn Baldwin same kernel. The scheduler can be selected at boot time by 1009823698aSJohn Baldwin setting the kern.sched_name tunable to the scheduler name 1019823698aSJohn Baldwin ("4BSD" or "ULE"). The default scheduler is ULE. This is 1029823698aSJohn Baldwin currently enabled in amd64 kernels by default. 1039823698aSJohn Baldwin 1049823698aSJohn Baldwin90a7728cd890: 1059823698aSJohn Baldwin Update nuageinit to request configuration on all network 1069823698aSJohn Baldwin interfaces. nuageinit will now issue DHCP requests on all 1079823698aSJohn Baldwin network interfaces and request configuration data from the 1089823698aSJohn Baldwin first interface which successfully obtains a lease. 1099823698aSJohn Baldwin 1109823698aSJohn Baldwin92ba9b2fe589: 1119823698aSJohn Baldwin Add RoCE support for Broadcom BCM576xx controllers. 1129823698aSJohn Baldwin 1139823698aSJohn Baldwinfb4b0c911951: 1149823698aSJohn Baldwin Add a facility to witness(4) to provide more detailed information 1159823698aSJohn Baldwin about lock order reversals detailing when initial lock orders were 1169823698aSJohn Baldwin established. 1179823698aSJohn Baldwin 1185dc4da1aSBaptiste Daroussin65f5dd42f11c: 1195dc4da1aSBaptiste Daroussin sh(1) add -l option which makes sh act as a login shell and read the profile. 1205dc4da1aSBaptiste Daroussin 1215dc4da1aSBaptiste Daroussinbeab8b1ddf86: 1225dc4da1aSBaptiste Daroussin bintrans(1) now supports the RFC2047 variant of quoted print 1235dc4da1aSBaptiste Daroussin 1245dc4da1aSBaptiste Daroussin9dc96d8bc3f2: 1255dc4da1aSBaptiste Daroussin libusb(3) hotplug event are now really hotplugged using either 1265dc4da1aSBaptiste Daroussin nlsysevent or devd(9) if available. 1275dc4da1aSBaptiste Daroussin 1285dc4da1aSBaptiste Daroussind64db8892f85: 1295dc4da1aSBaptiste Daroussin sh(1) is the default shell in the release media. 1305dc4da1aSBaptiste Daroussin 1315dc4da1aSBaptiste Daroussin68ad2b0d7af2: 1325dc4da1aSBaptiste Daroussin ncurses has been updated to 6.6 1335dc4da1aSBaptiste Daroussin 1345dc4da1aSBaptiste Daroussin52d19df19ed6: 1355dc4da1aSBaptiste Daroussin nvi(1) has been update to 2.2.2 1365dc4da1aSBaptiste Daroussin 1375dc4da1aSBaptiste Daroussin4d5c434ed16e, 2cfca8e710f2: 1385dc4da1aSBaptiste Daroussin diff3(1) has replaced GNU diff3 and is now fully compatible. 1395dc4da1aSBaptiste Daroussin 1405dc4da1aSBaptiste Daroussin625dc44832cd: 1415dc4da1aSBaptiste Daroussin tr(1) is now UTF-8 compliant. 1425dc4da1aSBaptiste Daroussin 1435dc4da1aSBaptiste Daroussin62fba0054d9e: 1445dc4da1aSBaptiste Daroussin ee(1) is now UTF-8 compliant. 1455dc4da1aSBaptiste Daroussin 1465dc4da1aSBaptiste Daroussin5df6aca10906: 1475dc4da1aSBaptiste Daroussin ed(1) is now UTF-8 compliant. 1485dc4da1aSBaptiste Daroussin 1495dc4da1aSBaptiste Daroussin28ff4d35f8b9: 1505dc4da1aSBaptiste Daroussin Update libedit to 2026-04-03. 1515dc4da1aSBaptiste Daroussin 1525dc4da1aSBaptiste Daroussinb42e852e89cb: 1535dc4da1aSBaptiste Daroussin Add a new pkg-serve(8) to serve packages over TCP via inetd. 1545dc4da1aSBaptiste Daroussin 155dc752c26SRick Macklem8b9775912cbc, 53b4ae3bf0f7: 156dc752c26SRick Macklem Add support for an NFSv4 root file system. 157cc2f8f37SRick Macklem Note that NFSv3 is still used for bootstrapping. See 158cc2f8f37SRick Macklem "Diskless Operation with PXE" under "Advanced Networking" in the 159cc2f8f37SRick Macklem FreeBSD Handbook. To configure an NFSv4 root fs, you will need 160cc2f8f37SRick Macklem a line in /boot/loader.conf like boot.nfsroot.options="nfsv4" and 161cc2f8f37SRick Macklem either a line in /etc/sysctl.conf like vfs.nfs.enable_uidtostring=1 162cc2f8f37SRick Macklem or an additional line in /boot/loader.conf like 163cc2f8f37SRick Macklem boot.nfsroot.user_domain="<user-domain>", 164cc2f8f37SRick Macklem if you are running nfsuserd(8). 165dc752c26SRick Macklem 1662d843b7cSLexi Winterab9257599a5: 1672d843b7cSLexi Winter The src.conf(5) options WITHOUT_BZIP2 and WITHOUT_BZIP2_SUPPORT 1682d843b7cSLexi Winter have been removed. 1692d843b7cSLexi Winter 17083cf9b52SMark Johnstonaf099eaa5ec: 17183cf9b52SMark Johnston Users belonging to the new vmm group can now create bhyve VMs. See the 17283cf9b52SMark Johnston vmm(4) man page for details. 17383cf9b52SMark Johnston 17483cf9b52SMark Johnstonc71354030a2: 17583cf9b52SMark Johnston Users wishing to use bhyve PCI passthrough in jails must create the 17683cf9b52SMark Johnston jail with the allow.vmm_ppt option configured. 17783cf9b52SMark Johnston 178997bfa20SMark Johnston4d707825bf62: 179997bfa20SMark Johnston The pdwait(2) system call was added. It provides wait(2)-like 180997bfa20SMark Johnston functionality for a process descriptor (see procdesc(4)). 181997bfa20SMark Johnston 182997bfa20SMark Johnston5c2ee618d5ec: 183997bfa20SMark Johnston The pdrfork(2) system call was added. It behaves like rfork(2) but 184997bfa20SMark Johnston additionally returns a process descriptor (see procdesc(4)). 185997bfa20SMark Johnston 186997bfa20SMark Johnston41ccf82b29f3, 591c7a08bf8a: 187997bfa20SMark Johnston On arm64, memcpy(3), memmove(3) and memset(3) are now implemented using 188997bfa20SMark Johnston the MOPS (Memory Operations) feature instructions when they are 189997bfa20SMark Johnston implemented by the system. 190997bfa20SMark Johnston 191997bfa20SMark Johnston3f0aea09689f: 192997bfa20SMark Johnston posix_spawnattr_getexecfd_np(3) and posix_spawnattr_setexecfd_np(3) 193997bfa20SMark Johnston functions were added to libc. The latter causes posix_spawn(3) to 194997bfa20SMark Johnston call fexecve(2) on the specified file descriptor rather than executing 195997bfa20SMark Johnston the file at the provided path. 196997bfa20SMark Johnston 197997bfa20SMark Johnstonfb4b0c911951: 198997bfa20SMark Johnston witness(4) now prints additional information to the system console when 199997bfa20SMark Johnston a lock order reversal is detected, making debugging such issues easier. 200997bfa20SMark Johnston 201997bfa20SMark Johnston1322760fd127: 202997bfa20SMark Johnston It is now possible to compile both the 4BSD and ULE schedulers into the 203997bfa20SMark Johnston same kernel. The scheduler is selectable at boot-time using a tunable. 204997bfa20SMark Johnston See the SCHEDULERS section of the tuning(7) man page for details. 205997bfa20SMark Johnston 206997bfa20SMark Johnston627e126dbb07: 207997bfa20SMark Johnston The default value of the net.inet6.ip6.connect_in6addr_wild has changed 208997bfa20SMark Johnston to 0. This means that connecting to the all-zeroes IPv6 address no longer 209997bfa20SMark Johnston implicitly results in a loopback connection. 210997bfa20SMark Johnston 211997bfa20SMark Johnstonafa70a8496e9: 212997bfa20SMark Johnston The pthread_tryjoin_np(3) function was added to libthr(3). It provides 213997bfa20SMark Johnston the same functionality as pthread_join(3) but returns instead of 214997bfa20SMark Johnston blocking if the target thread has not yet exited. 215997bfa20SMark Johnston 216997bfa20SMark Johnstonecc039be7fdd: 217997bfa20SMark Johnston NanoBSD images can now be built as a non-root user. 218997bfa20SMark Johnston 21969f53556SJohn Hall7f54c65abc67: 22069f53556SJohn Hall Update smartpqi(4) to vendor version 14.4690.0.2008 - 15.2.0.2008 22169f53556SJohn Hall for the SmartArray storage controllers. This adds support for new 22269f53556SJohn Hall controllers, adds code that utilizes the new BIG_IOCTL_Command_struct 22369f53556SJohn Hall and allows the I/O buffer size for a single passthrough ioctl to be 22469f53556SJohn Hall stored as a 32 bit integer instead of the original 16 bit integer. 22569f53556SJohn Hall 2260dba3626SMark Johnstonb0d997095022: 2270dba3626SMark Johnston The pf firewall now supports passing IPv6 packets to divert(4) 2280dba3626SMark Johnston sockets via divert-to actions. 2290dba3626SMark Johnston 230c940f5c7SBjoern A. Zeeb0fa7b3bee72e, c71f18998e0b, 4162a419a475, f5a77dc8f8df: 231c940f5c7SBjoern A. Zeeb LinuxKPI based wireless drivers, especially iwlwifi(4) are now 232c940f5c7SBjoern A. Zeeb supported on RISC-V. 233c940f5c7SBjoern A. Zeeb 234c18631feSKyle Evans8254b0dec02b3, bd55cbb50c588: 235c18631feSKyle Evans The mac(4) framework has been extended to support jail operations, 236c18631feSKyle Evans allowing a policy to constrain jail creation, modification, removal, and 237c18631feSKyle Evans attachment. Jails have additionally been made a first-class mac(4) 238c18631feSKyle Evans object, and a mac.label jail(8) property has been added to facilitate 239c18631feSKyle Evans administration of their labels. 240c18631feSKyle Evans 2411971c31cSJohn Hallc558eca47970: 242a3f28d70SJohn Hall The smartpqi(4) driver was updated to vendor version 4660.0.2002 243a3f28d70SJohn Hall for the SmartArry storage controllers. 244a3f28d70SJohn Hall 245e3bfcf6bSMark Johnston493d26c58e73: 246e3bfcf6bSMark Johnston The aq(4) driver was added, imported from the vendor repository. 247e3bfcf6bSMark Johnston This provides support for Aquantia / Marvell PCIe 1/2.5/5/10 Gigabit 248e3bfcf6bSMark Johnston Ethernet adapters (AQC107, AQC108, AQC109, AQC111, AQC112). 249e3bfcf6bSMark Johnston 250e3bfcf6bSMark Johnston1a7151f79664: 251e3bfcf6bSMark Johnston A new CAM provider was added to dtrace. This enables tracing of I/O 252e3bfcf6bSMark Johnston requests through the CAM layer without relying on fragile function 253e3bfcf6bSMark Johnston boundary tracing. See dtrace_cam(4) for details. 254e3bfcf6bSMark Johnston 255e3bfcf6bSMark Johnstonb8c99e7d912f: 256e3bfcf6bSMark Johnston The tdestroy(3) function was added to libc. The tdestroy() function 257e3bfcf6bSMark Johnston destroys a whole search tree, freeing all allocated nodes. 258e3bfcf6bSMark Johnston 259e3bfcf6bSMark Johnston4bf8ce037dc8: 260e3bfcf6bSMark Johnston The rge(4) driver was added, ported from OpenBSD. This provides 261e3bfcf6bSMark Johnston support for RealTek RTL8125, RTL8126 and RTL8127 PCIe Ethernet 262e3bfcf6bSMark Johnston controllers. 263e3bfcf6bSMark Johnston 264e3bfcf6bSMark Johnstoncbc6f7e941e4: 265e3bfcf6bSMark Johnston bhyve(8)'s VNC device can now listen on a unix(4) socket for VNC client 266e3bfcf6bSMark Johnston connections. 267e3bfcf6bSMark Johnston 268e3bfcf6bSMark Johnston39ee24182b92: 269e3bfcf6bSMark Johnston An rc(8) service can now be started as a specific user for auditing 270e3bfcf6bSMark Johnston purposes by setting the <service>_audit_user rc.conf(5) variable. 271e3bfcf6bSMark Johnston 272e3bfcf6bSMark Johnstondcb0790bad43: 273e3bfcf6bSMark Johnston A setaudit(8) utility was added to the base system. This provides a 274e3bfcf6bSMark Johnston simple command-line wrapper for the setaudit(2) and setaudit_addr(2) 275e3bfcf6bSMark Johnston system calls. 276e3bfcf6bSMark Johnston 277b94e4c70SRick Macklem8e3fd450cc53, 949cff4dceff, 0e724de9ed6f, 9f49f436a9ec, e35191ccf3b3: 278b94e4c70SRick Macklem Add support for an extension to NFSv4.2 (RFCnnnn) that 279b94e4c70SRick Macklem supports handling of POSIX draft ACLs via getfacl(1)/setfacl(1). 280b94e4c70SRick Macklem 2819734ca05SMark Johnstondbac191956f9, fe21dbf70aa8: 2829734ca05SMark Johnston Support for the kcmp(2) system call and fcntl(F_DUPFD_QUERY) for Linux 2839734ca05SMark Johnston binaries. 2849734ca05SMark Johnston 2859734ca05SMark Johnstona86dc94b84d1: 2869734ca05SMark Johnston tzdata2025c was imported. 2879734ca05SMark Johnston 2889734ca05SMark Johnstona98e5d785001: 2899734ca05SMark Johnston Add strdupa(3) and strndupa(3) macros for compatability with glibc. 2909734ca05SMark Johnston 2919734ca05SMark Johnstone967a2a03677: 2929734ca05SMark Johnston divert socket compat removal, consumers must use PF_DIVERT instead of 2939734ca05SMark Johnston PF_INET. 2949734ca05SMark Johnston 2959734ca05SMark Johnston4453ec5b8716b, 2a3b1641756a: 2969734ca05SMark Johnston The reboot(8) and halt(8) commands now perform a graceful shutdown similar 2979734ca05SMark Johnston to the shutdown(8) command including invoking rc.d scripts to shutdown 2989734ca05SMark Johnston services. The fastboot(8) and fasthalt(8) commands still perform a "fast" 2999734ca05SMark Johnston reboot or shutdown. 3009734ca05SMark Johnston 3019734ca05SMark Johnstond9788eabffa4: 3029734ca05SMark Johnston ipfilter cannot be used in a jail by default. 3039734ca05SMark Johnston 3049734ca05SMark Johnston0ff0c19e7f70: 3059734ca05SMark Johnston ipfs(8) is no longer built by default. 3069734ca05SMark Johnston 3079734ca05SMark Johnston575efcfff22f: 3089734ca05SMark Johnston sendfile(2)'s SF_SYNC flag was removed. 3099734ca05SMark Johnston 3109734ca05SMark Johnston057dae35ffc6, 51a01f3debff, ca3e47b0ea68: 3119734ca05SMark Johnston hwpmc(4) support for Intel Alder Lake 6-B7, 6-BA, and 6-BF CPU 3129734ca05SMark Johnston hwpmc(4) support for Intel Emerald Rapids CPUs 3139734ca05SMark Johnston hwpmc(4) support for Intel Alder Lake-N CPUs 3149734ca05SMark Johnston 3159734ca05SMark Johnston1ecf01065b45: 3169734ca05SMark Johnston New library libuvmem provides the vmem(9) API to userspace applications. 3179734ca05SMark Johnston 3189734ca05SMark Johnstonb6cad334e64: 3199734ca05SMark Johnston Make game controller devices accessible by members of the "game" group 3209734ca05SMark Johnston by default. 3219734ca05SMark Johnston 3229734ca05SMark Johnston791c531402bd: 3239734ca05SMark Johnston Add driver for Feature Integration Technology Inc. (aka Fintek) F81232 3249734ca05SMark Johnston USB to serial devices. 3259734ca05SMark Johnston 3269734ca05SMark Johnstonec0cd287f55f: 3279734ca05SMark Johnston Support for NVMe/TCP offload on Chelsio T7 adapters. The nvmf_che(4) 3289734ca05SMark Johnston module enables T7 adapters to process NVMe/TCP PDUs directly similar to 3299734ca05SMark Johnston the PDU offload provided by cxgbei(4) for iSCSI. 330