1 <?xml version="1.0" encoding="iso-8859-1"?>
2 <!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V5.0-Based Extension//EN"
3 "../../../share/xml/freebsd50.dtd" [
4 <!ENTITY % release PUBLIC "-//FreeBSD//ENTITIES Release Specification//EN" "release.ent">
6 <!ENTITY % sponsor PUBLIC "-//FreeBSD//ENTITIES Sponsor Specification//EN" "sponsor.ent">
8 <!ENTITY % vendor PUBLIC "-//FreeBSD//ENTITIES Vendor Specification//EN" "vendor.ent">
10 <!ENTITY security SYSTEM "../../share/xml/security.xml">
11 <!ENTITY errata SYSTEM "../../share/xml/errata.xml">
13 <article xmlns="http://docbook.org/ns/docbook"
14 xmlns:xlink="http://www.w3.org/1999/xlink"
19 <title>&os; &release.current; Release Notes</title>
22 <orgname>The &os; Project</orgname>
25 <pubdate>$FreeBSD$</pubdate>
27 <!-- Last rev: 288943 -->
31 <holder role="mailto:doc@FreeBSD.org">The &os; Documentation
35 <legalnotice xml:id="trademarks" role="trademarks">
45 <para>The release notes for &os; &release.current; contain
46 a summary of the changes made to the &os; base system on the
47 &release.branch; development line. This document lists
48 applicable security advisories that were issued since the last
49 release, as well as significant changes to the &os; kernel and
50 userland. Some brief remarks on upgrading are also
55 <sect1 xml:id="intro">
56 <title>Introduction</title>
58 <para>This document contains the release notes for &os;
59 &release.current;. It describes recently added, changed, or
60 deleted features of &os;. It also provides some notes on
61 upgrading from previous versions of &os;.</para>
63 <para releasetype="current">The &release.type; distribution to
64 which these release notes apply represents the latest point
65 along the &release.branch; development branch since
66 &release.branch; was created. Information regarding pre-built,
67 binary &release.type; distributions along this branch can be
69 xlink:href="&release.url;">&release.url;</uri>.</para>
71 <para releasetype="snapshot">The &release.type; distribution to
72 which these release notes apply represents a point along the
73 &release.branch; development branch between &release.prev; and
74 the future &release.next;. Information regarding pre-built,
75 binary &release.type; distributions along this branch can be
77 xlink:href="&release.url;">&release.url;</uri>.</para>
79 <para releasetype="release">This distribution of &os;
80 &release.current; is a &release.type; distribution. It can be
81 found at <uri xlink:href="&release.url;">&release.url;</uri> or
82 any of its mirrors. More information on obtaining this (or
83 other) &release.type; distributions of &os; can be found in the
85 xlink:href="&url.books.handbook;/mirrors.html"><quote>Obtaining
86 &os;</quote> appendix</link> to the <link
87 xlink:href="&url.books.handbook;/">&os;
88 Handbook</link>.</para>
90 <para>All users are encouraged to consult the release errata
91 before installing &os;. The errata document is updated with
92 <quote>late-breaking</quote> information discovered late in the
93 release cycle or after the release. Typically, it contains
94 information on known bugs, security advisories, and corrections
95 to documentation. An up-to-date copy of the errata for &os;
96 &release.current; can be found on the &os; Web site.</para>
98 <para>This document describes the most user-visible new or changed
99 features in &os; since &release.prev;. In general, changes
100 described here are unique to the &release.branch; branch unless
101 specifically marked as &merged; features.</para>
103 <para>Typical release note items document recent security
104 advisories issued after &release.prev;, new drivers or hardware
105 support, new commands or options, major bug fixes, or
106 contributed software upgrades. They may also list changes to
107 major ports/packages or release engineering practices. Clearly
108 the release notes cannot list every single change made to &os;
109 between releases; this document focuses primarily on security
110 advisories, user-visible changes, and major architectural
114 <sect1 xml:id="upgrade">
115 <title>Upgrading from Previous Releases of &os;</title>
117 <para arch="amd64,i386">Binary upgrades between RELEASE versions
118 (and snapshots of the various security branches) are supported
119 using the &man.freebsd-update.8; utility. The binary upgrade
120 procedure will update unmodified userland utilities, as well as
121 unmodified GENERIC kernels distributed as a part of an official
122 &os; release. The &man.freebsd-update.8; utility requires that
123 the host being upgraded have Internet connectivity.</para>
125 <para>Source-based upgrades (those based on recompiling the &os;
126 base system from source code) from previous versions are
127 supported, according to the instructions in
128 <filename>/usr/src/UPDATING</filename>.</para>
131 <para>Upgrading &os; should only be attempted after backing up
132 <emphasis>all</emphasis> data and configuration files.</para>
136 <sect1 xml:id="security-errata">
137 <title>Security and Errata</title>
139 <para>This section lists the various Security Advisories and
140 Errata Notices since &release.prev;.</para>
142 <sect2 xml:id="security">
143 <title>Security Advisories</title>
148 <sect2 xml:id="errata">
149 <title>Errata Notices</title>
155 <sect1 xml:id="userland">
156 <title>Userland</title>
158 <para>This section covers changes and additions to userland
159 applications, contributed software, and system utilities.</para>
161 <sect2 xml:id="userland-config">
162 <title>Userland Configuration Changes</title>
164 <para revision="339446">The &man.jail.8; utility has been
165 updated to include a new &man.jail.conf.5; parameter,
166 <literal>allow.read_msgbuf</literal>, which prevents jailed
167 processes and users from accessing the &man.dmesg.8; buffer.
168 This parameter is set to <literal>false</literal> by
171 <para revision="342103">The system &man.crontab.5;,
172 <filename>/etc/crontab</filename>, has been updated to set
173 <varname>PATH</varname> for consistency with the &man.cron.8;
176 <para revision="343469">The default &man.devd.conf.5; has been
177 updated to prevent duplicated &man.hostapd.8; and
178 &man.wpa.supplicant.8; startup via &man.devd.8;.</para>
180 <para revision="346479">A new variable,
181 <literal>init_exec</literal>, has been added to &man.kenv.1;,
182 allowing &man.init.8; to run an executable file after opening
183 the console, replacing &man.init.8; as <acronym>PID</acronym>
187 <sect2 xml:id="userland-programs">
188 <title>Userland Application Changes</title>
190 <para revision="336040">The &man.cpuset.1;, &man.sockstat.1;,
191 &man.ipfw.8;, and &man.ugidfw.8; utilities have been updated
192 to support &man.jail.8; names.</para>
194 <para revision="336328">The &man.newfs.msdos.8; utililty has
195 been updated to include a new flag, <literal>-T</literal>,
196 which is used to specify the timestamp for build
197 reproducibility.</para>
199 <para revision="338364">The &man.dd.1; utility has been updated
200 to add a new <literal>status</literal>operand,
201 <literal>progress</literal>, which reports the current status
202 on a single line every second.</para>
204 <para revision="338451">The &man.last.1; utility has been
205 updated to include &man.libxo.3; support.</para>
207 <para revision="338452">The &man.lastlogin.8; utility has been
208 updated to include &man.libxo.3; support.</para>
210 <para revision="338475">The &man.traceroute.8; utility has been
211 updated to include &man.libcasper.3; support.</para>
213 <para revision="339160">The &man.diff.1; utility has been
214 updated to implement <literal>-B</literal> and
215 <literal>--ignore-blank-lines</literal> support.</para>
217 <para revision="340963">The &man.makewhatis.1; utility has been
218 updated to prevent operating within read-only
221 <para revision="341790">The &man.jail.8; utility has been
222 updated to add a new flag, <literal>-e</literal>, which takes
223 a &man.jail.conf.5; parameter as an argument and prints a list
224 of non-wildcard jails with the specified parameter.</para>
226 <para revision="342706">The &man.ktrdump.8; utility has been
227 updated to include the <literal>-l</literal> flag which
228 enables "live" mode when specified.</para>
230 <para revision="343118">The &man.trim.8; utility has been added,
231 which deletes content for blocks on flash-based storage
232 devices that use wear-leveling algorithms.</para>
234 <para revision="343251">The &man.gzip.1; utility has been
235 updated to add <literal>-l</literal> support for &man.xz.1;
238 <para revision="343538" contrib="sponsor"
239 sponsor="&netflix;">The &man.newfs.8; and &man.tunefs.8;
240 utilities have been updated to allow underscores in label
243 <para revision="344020">The &man.pfctl.8; utility has been
244 updated to provide clearer output and reference the
245 <literal>net.pf.request_maxcount</literal> &man.sysctl.8;
246 if a defined table is too large.</para>
248 <para revision="344052">The &man.newfs.8; and &man.tunefs.8;
249 utilities have been updated to allow dashes in label
252 <para revision="344490">The &man.fdisk.8; utility has been
253 updated to support sectors larger than 2048 bytes.</para>
255 <para revision="345561">The &man.sh.1; utility has been updated
256 to add the <literal>pipefail</literal> option which simplifies
257 checking the exit status of all commands in a pipeline.</para>
259 <para revision="345878">The &man.patch.1; utility has been
260 updated to exit successfully if the input patch file is
263 <para revision="346518">The &man.spi.8; utility has been added,
264 which is used to communicate with devices on an
265 <acronym>SPI</acronym> bus through the userland.</para>
268 <sect2 xml:id="userland-contrib">
269 <title>Contributed Software</title>
271 <para revision="334607">The &man.xz.1; utility has been updated
272 to version 5.2.4.</para>
274 <para revision="337827">The &man.file.1; utility has been
275 updated to version 5.34.</para>
277 <para revision="338414" contrib="sponsor" sponsor="&ff;">The
278 <application>ELF Tool Chain</application> has been updated to
279 version r3614.</para>
281 <para revision="339100" contrib="sponsor" sponsor="&ff;">The
282 <application>lld</application> utility has been updated to add
283 <literal>-z interpose</literal>, marking the object file as
284 an interposer.</para>
286 <para revision="343079">The &man.file.1; utility has been
287 updated to fix incorrect date reporting for &man.dump.8;
290 <para revision="344220">The <application>LUA</application>
291 &man.loader.8; has been merged.</para>
293 <para revision="344884">The &man.ntpd.8; utilities have been
294 updated to version 4.2.8p13.</para>
296 <para revision="346296">The <application>clang</application>,
297 <application>llvm</application>,
298 <application>lld</application>,
299 <application>lldb</application>, and
300 <application>compiler-rt</application> utilities as well as
301 <application>libc++</application> have been updated to
302 upstream version 8.0.0.</para>
304 <para revision="346981">The <application>WPA</application>
305 utilities have been updated to version 2.8.</para>
307 <para revision="348343"><application>OpenSSL</application> has
308 been updated to version 1.0.2s.</para>
310 <para revision="348607">The &man.libarchive.3; library has been
311 updated to version 3.3.3, with additional fixes from
314 <para revision="348980"><application>OpenPAM</application> has
315 been updated to the latest upstream version.</para>
318 <sect2 xml:id="userland-rc">
319 <title><filename class="directory">/etc/rc.d</filename>
322 <para revision="340611">Support for auxiliary
323 <acronym>RAM</acronym> has been added to
324 <filename>/etc/rc.initdiskless</filename>.</para>
326 <para revision="340966">The &man.rcorder.8; utility has been
327 updated to add support for
328 <filename>/etc/rc.resume</filename>.</para>
330 <para revision="341792">The <literal>jail_conf</literal>
331 definition, which defaults to
332 <filename>/etc/jail.conf</filename>, has been moved from
333 the &man.jail.8; &man.rc.8; script to
334 <filename>/etc/defaults/rc.conf</filename>.</para>
336 <para revision="343046">The <varname>rc_service</varname>
337 variable has been added to &man.rc.subr.8;, which defaults to
338 the path of the service being executed in case the service
339 needs to re-invoke itself.</para>
341 <para revision="349620">Timezone data files have been updated to
342 version 2019b.</para>
345 <sect2 xml:id="userland-periodic">
346 <title><filename class="directory">/etc/periodic</filename>
349 <para revision="341794">The &man.periodic.8; weekly
350 <filename>340.noid</filename> script has been updated to
351 prevent decending into the root directory of jails.</para>
354 <sect2 xml:id="userland-libraries">
355 <title>Runtime Libraries and API</title>
357 <para revision="335640">The &man.pcap.3; library has been
358 updated to version 1.9.0 (pre-release).</para>
360 <para revision="336449">The &man.setproctitle.fast.3; function
361 has been added, which is optimized for high-frequency process
362 title updates.</para>
364 <para revision="337418" contrib="sponsor"
365 sponsor="&dellemc;">The &man.kqueue.2; system call has been
366 updated to allow updating
367 <literal>EVFILT_TIMER</literal>.</para>
369 <para revision="338405">The &man.pthread.get.name.np.3; function
370 has been added, which is used to retrieve the function name
371 associated with a thread.</para>
373 <para revision="338707">The &man.pthread.3; library has been
374 updated to improve <acronym>POSIX</acronym> compliance.</para>
378 <sect1 xml:id="kernel">
379 <title>Kernel</title>
381 <para>This section covers changes to kernel configurations, system
382 tuning, and system control parameters that are not otherwise
385 <sect2 xml:id="kernel-general">
386 <title>General Kernel Changes</title>
388 <para revision="339857" contrib="sponsor"
389 sponsor="&panzura;">The &man.ddb.4; debugging utility has been
390 updated to print command-line arguments to a process.</para>
392 <para revision="342656">The number of <acronym>MSI</acronym>
393 <acronym>IRQ</acronym>s have been converted from a constant to
394 a tunable. The default remains at <literal>512</literal>,
395 which can now be changed during boot with the
396 <literal>machdep.num_msi_irqs</literal> &man.sysctl.8;.</para>
398 <para revision="343084" contrib="sponsor"
399 sponsor="&modirum;">The kernel will now log the &man.jail.8;
400 <acronym>ID</acronym> when logging a process exit. The
401 &man.jail.8; <acronym>ID</acronym> <literal>0</literal>
402 represents processes that are not jailed.</para>
404 <para revision="348753">Warnings for features deprecated in
405 future releases will now be printed on all &os;
410 <sect1 xml:id="drivers">
411 <title>Devices and Drivers</title>
413 <para>This section covers changes and additions to devices and
414 device drivers since &release.prev;.</para>
416 <sect2 xml:id="drivers-device">
417 <title>Device Drivers</title>
419 <para revision="340182" contrib="sponsor"
420 sponsor="&panzura;">The &man.ichwd.4; driver has been updated
421 to include support for <acronym>TCO</acronym> watchdog timers
422 in the Lewisburg <acronym>PCH</acronym> (C620) chipset.</para>
424 <para revision="345981">The &man.random.4; driver has been
425 updated to improve performance during expensive
428 <para revision="347962">The <literal>ae(4)</literal>,
429 <literal>bm(4)</literal>, <literal>cs(4)</literal>,
430 <literal>de(4)</literal>, <literal>dme(4)</literal>,
431 <literal>ed(4)</literal>, <literal>ep(4)</literal>,
432 <literal>ex(4)</literal>, <literal>fe(4)</literal>,
433 <literal>pcn(4)</literal>, <literal>sf(4)</literal>,
434 <literal>sn(4)</literal>, <literal>tl(4)</literal>,
435 <literal>tx(4)</literal>, <literal>txp(4)</literal>,
436 <literal>vx(4)</literal>, <literal>wb(4)</literal>, and
437 <literal>xe(4)</literal> drivers have been marked as
438 deprecated, and are not present in &os; 13.0.</para>
441 <sect2 xml:id="drivers-network">
442 <title>Network Drivers</title>
444 <para revision="338938">The &man.oce.4; driver has been updated
445 to version 11.0.50.0.</para>
447 <para revision="340369">The TP-Link® TL-WN321G™
448 network adapter now uses the &man.run.4; driver instead of the
449 &man.rum.4; driver.</para>
451 <para revision="341987" contrib="sponsor"
452 sponsor="&mellanox;">The &man.mlx4en.4; and &man.mlx5en.4;
453 drivers have been updated to version 3.5.0.</para>
455 <para revision="342206" contrib="sponsor" sponsor="&ix;">The
456 &man.lagg.4; driver has been updated to allow changing the
457 <acronym>MTU</acronym> without requiring destroying and
458 recreating the interface.</para>
460 <para revision="345040" contrib="sponsor"
461 sponsor="&chelsio;">The &man.ccr.4; driver has been added,
462 providing support for Chelsio® T6™ cryptography
465 <para revision="346855" contrib="sponsor"
466 sponsor="&chelsio;">The &man.cxgbe.4; driver has been updated
467 to include support for hash filters, <acronym>NAT</acronym>
469 <acronym>SMAC</acronym>/<acronym>DMAC</acronym> swapping
472 <para revision="346940" contrib="sponsor"
473 sponsor="&chelsio;">The &man.cxgbe.4; T4, T5, and T6 firmware
474 has been updated to version 1.23.0.0.</para>
476 <para revision="349181" contrib="sponsor"
477 sponsor="&intelcorp;">The &man.ixl.4; driver has been updated
478 version 1.11.9.</para>
480 <para revision="349181" contrib="sponsor"
481 sponsor="&intelcorp;">The &man.ixlv.4; driver has been updated
482 version 1.5.8.</para>
486 <sect1 xml:id="hardware">
487 <title>Hardware Support</title>
489 <para>This section covers general hardware support for physical
490 machines, hypervisors, and virtualization environments, as well
491 as hardware changes and updates that do not otherwise fit in
492 other sections of this document.</para>
494 <sect2 xml:id="hardware-support">
495 <title>Hardware Support</title>
497 <para revision="342254">The &man.vt.4; keyboard mapping has been
498 updated to include <literal>uk.macbook.kbd</literal>
502 <sect2 xml:id="hardware-virtualization">
503 <title>Virtualization Support</title>
505 <para revision="341758" contrib="sponsor" sponsor="&ix;">Support
506 for <acronym>PS/2</acronym> scan codes for
507 <literal>NumLock</literal>, <literal>ScrollLock</literal>, and
508 numerical keypad keys has been added to &man.bhyve.8;.</para>
512 <sect1 xml:id="storage">
513 <title>Storage</title>
515 <para>This section covers changes and additions to file systems
516 and other storage subsystems, both local and networked.</para>
518 <sect2 xml:id="storage-general">
519 <title>General Storage</title>
521 <para revision="348588">Deprecation warnings have been added for
522 weaker algorithms when creating &man.geli.8; providers.</para>
525 <sect2 xml:id="storage-zfs">
528 <para revision="341828" contrib="sponsor" sponsor="&klara;">An
529 issue that could result in a system hang during
530 <acronym>ZFS</acronym> vnode reclamation has been
533 <para revision="346690" contrib="sponsor" sponsor="&gandi;">The
534 <acronym>ZFS</acronym> filesystem has been updated to
535 implement parallel mounting.</para>
539 <sect1 xml:id="boot">
540 <title>Boot Loader Changes</title>
542 <para>This section covers the boot loader, boot menu, and other
543 boot-related changes.</para>
545 <sect2 xml:id="boot-loader">
546 <title>Boot Loader Changes</title>
548 <para revision="344399">The functionality provided by
549 <filename>zfsloader</filename> has been added to
550 &man.loader.8;. Once the system boot blocks have been updated
551 following <filename>UPDATING</filename>,
552 <filename>zfsloader</filename> is no longer needed. A hard
553 link to &man.loader.8; has been added to ease in the
556 <para revision="344399">The &man.loader.8; has been updated to
557 extend &man.geli.8; support to all architectures.</para>
559 <para revision="344403">The <acronym>UEFI</acronym> boot
560 &man.loader.8; has been updated to better determine the system
561 console type and device if not defined in
562 &man.loader.conf.5;.</para>
566 <sect1 xml:id="network">
567 <title>Networking</title>
569 <para>This section describes changes that affect networking in
572 <sect2 xml:id="network-general">
573 <title>General Network Changes</title>
575 <para revision="337461">The &man.ipfw.8; firewall has been
576 updated to include new rule options,
577 <literal>record-state</literal>, <literal>set-limit</literal>,
578 and <literal>defer-action</literal>.</para>
580 <para revision="346212" contrib="sponsor"
581 sponsor="&yandex;">Support for <acronym>NAT64</acronym>
582 <acronym>CLAT</acronym> has been added, as defined in
583 <acronym>RFC</acronym>6877.</para>
585 <para revision="348482">Warnings have been added for
586 <acronym>IPSec</acronym> algorithms deprecated in
587 <acronym>RFC</acronym> 8221.</para>
591 <sect1 xml:id="ports">
592 <title>Ports Collection and Package Infrastructure</title>
594 <para>This section covers changes to the &os; Ports
595 Collection, package infrastructure, and package maintenance and
596 installation tools.</para>
598 <sect2 xml:id="ports-packages ">
599 <title>Packaging Changes</title>
601 <para>The &man.pkg.8; utility has been updated to version
604 <para>The <application>KDE</application> desktop environment has
605 been updated to version 5.15.3.</para>
607 <para>The <application>GNOME</application> desktop environment
608 has been updated to version 3.28.</para>
612 <sect1 xml:id="releng">
613 <title>Release Engineering and Integration</title>
615 <para>This section convers changes that are specific to the
616 &os; Release Engineering processes.</para>
618 <sect2 xml:id="releng-changes">
619 <title>Integration Changes</title>
621 <para revision="347037" contrib="sponsor" sponsor="&ff;">The
622 default size of virtual machine disk images has been reduced
623 from 30GB to 3GB. The <literal>raw</literal> disk images may
624 be resized with &man.truncate.1;, after which the
625 <filename>growfs</filename> &man.rc.8; script will resize the
626 filesystem within the virtual machine. Other disk image
627 formats should be resized with the appropriate tool provided
628 by the hypervisor being used.</para>