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" version="5.0">
17 <title>&os; &release.current; Release Notes</title>
20 <orgname>The &os; Project</orgname>
23 <pubdate>$FreeBSD$</pubdate>
25 <!-- Last rev: 288943 -->
29 <holder role="mailto:doc@FreeBSD.org">The &os; Documentation
33 <legalnotice xml:id="trademarks" role="trademarks">
43 <para>The release notes for &os; &release.current; contain
44 a summary of the changes made to the &os; base system on the
45 &release.branch; development line. This document lists
46 applicable security advisories that were issued since the last
47 release, as well as significant changes to the &os; kernel and
48 userland. Some brief remarks on upgrading are also
53 <sect1 xml:id="intro">
54 <title>Introduction</title>
56 <para>This document contains the release notes for &os;
57 &release.current;. It describes recently added, changed, or
58 deleted features of &os;. It also provides some notes on
59 upgrading from previous versions of &os;.</para>
61 <para releasetype="current">The &release.type; distribution to
62 which these release notes apply represents the latest point
63 along the &release.branch; development branch since
64 &release.branch; was created. Information regarding pre-built,
65 binary &release.type; distributions along this branch can be
67 xlink:href="&release.url;">&release.url;</uri>.</para>
69 <para releasetype="snapshot">The &release.type; distribution to
70 which these release notes apply represents a point along the
71 &release.branch; development branch between &release.prev; and
72 the future &release.next;. Information regarding pre-built,
73 binary &release.type; distributions along this branch can be
75 xlink:href="&release.url;">&release.url;</uri>.</para>
77 <para releasetype="release">This distribution of &os;
78 &release.current; is a &release.type; distribution. It can be
79 found at <uri xlink:href="&release.url;">&release.url;</uri> or
80 any of its mirrors. More information on obtaining this (or
81 other) &release.type; distributions of &os; can be found in the
83 xlink:href="&url.books.handbook;/mirrors.html"><quote>Obtaining
84 &os;</quote> appendix</link> to the <link
85 xlink:href="&url.books.handbook;/">&os;
86 Handbook</link>.</para>
88 <para>All users are encouraged to consult the release errata
89 before installing &os;. The errata document is updated with
90 <quote>late-breaking</quote> information discovered late in the
91 release cycle or after the release. Typically, it contains
92 information on known bugs, security advisories, and corrections
93 to documentation. An up-to-date copy of the errata for &os;
94 &release.current; can be found on the &os; Web site.</para>
96 <para>This document describes the most user-visible new or changed
97 features in &os; since &release.prev;. In general, changes
98 described here are unique to the &release.branch; branch unless
99 specifically marked as &merged; features.</para>
101 <para>Typical release note items document recent security
102 advisories issued after &release.prev;, new drivers or hardware
103 support, new commands or options, major bug fixes, or
104 contributed software upgrades. They may also list changes to
105 major ports/packages or release engineering practices. Clearly
106 the release notes cannot list every single change made to &os;
107 between releases; this document focuses primarily on security
108 advisories, user-visible changes, and major architectural
112 <sect1 xml:id="upgrade">
113 <title>Upgrading from Previous Releases of &os;</title>
115 <para arch="amd64,i386">Binary upgrades between RELEASE versions
116 (and snapshots of the various security branches) are supported
117 using the &man.freebsd-update.8; utility. The binary upgrade
118 procedure will update unmodified userland utilities, as well as
119 unmodified GENERIC kernels distributed as a part of an official
120 &os; release. The &man.freebsd-update.8; utility requires that
121 the host being upgraded have Internet connectivity.</para>
123 <para>Source-based upgrades (those based on recompiling the &os;
124 base system from source code) from previous versions are
125 supported, according to the instructions in
126 <filename>/usr/src/UPDATING</filename>.</para>
129 <para>Upgrading &os; should only be attempted after backing up
130 <emphasis>all</emphasis> data and configuration files.</para>
134 <sect1 xml:id="security-errata">
135 <title>Security and Errata</title>
137 <para>This section lists the various Security Advisories and
138 Errata Notices since &release.prev;.</para>
140 <sect2 xml:id="security">
141 <title>Security Advisories</title>
146 <sect2 xml:id="errata">
147 <title>Errata Notices</title>
153 <sect1 xml:id="userland">
154 <title>Userland</title>
156 <para>This section covers changes and additions to userland
157 applications, contributed software, and system utilities.</para>
159 <sect2 xml:id="userland-config">
160 <title>Userland Configuration Changes</title>
162 <para revision="313203">The &man.inetd.8; utility can now be
163 built without <literal>libwrap</literal> support when
164 <literal>WITHOUT_TCP_WRAPPERS</literal> is set in
165 &man.src.conf.5;.</para>
167 <para revision="316045">The &man.libthr.3; library and related
168 files are now evaluated and removed by the
169 <literal>delete-old-libs</literal> target when upgrading the
170 system if <literal>WITHOUT_LIBTHR</literal> is
171 set in &man.src.conf.5;.</para>
173 <para revision="316423" contrib="sponsor" sponsor="&ff;">The
174 <literal>WITH_LLD_AS_LD</literal> build knob has been added,
175 which installs <application>LLD</application> as
176 <filename>/usr/bin/ld</filename> if set.</para>
179 <sect2 xml:id="userland-programs">
180 <title>Userland Application Changes</title>
182 <para revision="308720" contrib="sponsor" sponsor="&gandi;">The
183 &man.cron.8; utility has been updated to add support for
184 including files within <filename
185 class="directory">/etc/cron.d</filename> and <filename
186 class="directory">/usr/local/etc/cron.d</filename> by
189 <para revision="308721" contrib="sponsor" sponsor="&gandi;">The
190 &man.syslogd.8; utility has been updated to add the
191 <literal>include</literal> keyword which allows specifying
192 a directory containing configuration files to be included in
193 addition to &man.syslogd.8;. The default &man.syslogd.8; has
194 been updated to include <filename
195 class="directory">/etc/syslog.d</filename> and <filename
196 class="directory">/usr/local/etc/syslog.d</filename> by
199 <para revision="315514" contrib="sponsor" sponsor="&yandex;">The
200 &man.setkey.8; utility has been modified to show the runtime
201 <acronym>NAT-T</acronym> configuration. The
202 <literal>-g</literal> and <literal>-t</literal> flags have
203 been added, which list only global and virtual policies,
204 respectively when used with the <literal>-D</literal> and
205 <literal>-P</literal> flags.</para>
207 <para revision="316098" contrib="sponsor"
208 sponsor="&dellemc;">The &man.getaddrinfo.1; utility has been
209 added, ported from NetBSD.</para>
211 <para revision="316944" contrib="sponsor"
212 sponsor="&multiplay;">The &man.jail.8; utility has been
213 updated to allow explicitly-assigned <acronym>IPv4</acronym>
214 and <acronym>IPv6</acronym> addresses to be used within
217 <para revision="317855">The &man.daemon.8; utility has been
218 updated to allow redirecting &man.stdout.4; and &man.stderr.4;
219 output to &man.syslog.3; and to a file.</para>
222 <sect2 xml:id="userland-contrib">
223 <title>Contributed Software</title>
225 <para revision="310490">The &man.amd.8; utility has been updated
226 to version 6.2.</para>
228 <para revision="312336">The <acronym>CLDR</acronym> locales have
229 been updated to version 30.0.3. The unicode locales have been
230 updated to version 9.0.0.</para>
232 <para revision="316303"><application>ACPICA</application> has
233 been updated to version 20170303.</para>
235 <para revision="316337">&man.libarchive.3; has been updated to
236 version 3.3.1.</para>
238 <para revision="316349">Timezone data files have been updated to
239 version 2017b.</para>
241 <para revision="316420">&man.mandoc.1; has been updated to
244 <para revision="316423"><application>Clang</application> has
245 been updated to version 4.0.0.</para>
247 <para revision="316423"><application>LLVM</application> has
248 been updated to version 4.0.0.</para>
250 <para revision="316423"><application>LLD</application> has
251 been updated to version 4.0.0.</para>
253 <para revision="316423"><application>LLDB</application> has
254 been updated to version 4.0.0.</para>
256 <para revision="316423"><application>compiler-rt</application>
257 has been updated to version 4.0.0.</para>
259 <para revision="316423"><application>libc++</application> has
260 been updated to version 4.0.0.</para>
262 <para revision="316957">&man.tcsh.1; has been updated to version
266 <sect2 xml:id="userland-installer">
267 <title>Installation and Configuration Tools</title>
272 <sect2 xml:id="userland-rc">
273 <title><filename class="directory">/etc/rc.d</filename>
279 <sect2 xml:id="userland-periodic">
280 <title><filename class="directory">/etc/periodic</filename>
283 <para revision="317857">The <filename>410.status-mfi</filename>
284 &man.periodic.8; script has been added to monitor the status
285 of &man.mfi.4; volumes.</para>
288 <sect2 xml:id="userland-libraries">
289 <title>Runtime Libraries and API</title>
291 <para revision="317618" contrib="sponsor"
292 sponsor="&dellemc;">The <function>clock_nanosleep()</function>
293 system call has been added. The
294 <function>nanosleep()</function> system call is now a wrapper
295 around <function>clock_nanosleep()</function>.</para>
298 <sect2 xml:id="userland-abi">
299 <title>ABI Compatibility</title>
301 <para revision="315274" contrib="sponsor"
302 sponsor="&dellemc;">The
303 <function>sem_clockwait_np()</function> library function has
304 been added, which allows the caller to specify the reference
305 clock and choose between absolute and relative mode.</para>
307 <para revision="315282">The <application>clang</application>
308 <literal>nullability</literal> attribute has been added to the
309 <literal>C</literal> library headers.</para>
313 <sect1 xml:id="kernel">
314 <title>Kernel</title>
316 <para>This section covers changes to kernel configurations, system
317 tuning, and system control parameters that are not otherwise
320 <sect2 xml:id="kernel-bugfix">
321 <title>Kernel Bug Fixes</title>
323 <para revision="316039">The &man.kvm.close.3; function has been
324 updated to return the accumulated error from previous
325 &man.close.2; calls.</para>
327 <para revision="317434">The &man.ipf.4; packet filter has been
328 updated to prevent "keep state" from incorrectly
329 implying "keep frags", matching the behavior
330 documented in &man.ipf.5;.</para>
333 <sect2 xml:id="kernel-config">
334 <title>Kernel Configuration</title>
336 <para revision="315514" contrib="sponsor" sponsor="&yandex;">The
337 <literal>IPSEC_NAT_T</literal> kernel configuration option has
338 been removed. Support for <acronym>NAT-T</acronym> is now
339 enabled by default.</para>
341 <para revision="315514" contrib="sponsor" sponsor="&yandex;">The
342 <literal>IPSEC_FILTERTUNNEL</literal> kernel option has been
343 removed, which was deprecated by the
344 <literal>net.inet.ipsec.filtertunnel</literal> sysctl.</para>
347 <sect2 xml:id="kernel-modules">
348 <title>Kernel Modules</title>
350 <para revision="315514" contrib="sponsor" sponsor="&yandex;">The
351 <literal>ipsec</literal> and <literal>tcpmd5</literal> kernel
352 modules have been added.</para>
354 <para revision="316274" contrib="sponsor" sponsor="&yandex;">The
355 &man.ipfw.4; packet filter has been updated to add support for
356 named dynamic states.</para>
358 <para revision="316444" contrib="sponsor" sponsor="&yandex;">The
359 <literal>ipfw_nptv6</literal> kernel module has been added,
360 implementing Network Prefix Translation for
361 <acronym>IPv6</acronym> as defined in <acronym>RFC</acronym>
364 <para revision="316446" contrib="sponsor" sponsor="&yandex;">The
365 <literal>ipfw_nat64</literal> kernel module has been added,
366 implementing stateless and stateful
367 <acronym>NAT64</acronym>.</para>
369 <para revision="316660" contrib="sponsor" sponsor="&ff;">The
370 &man.cfumass.4; device has been added, providing a storage
371 frontend to <acronym>USB</acronym>
372 <acronym>OTG</acronym>-capable hardware.</para>
374 <para revision="317045" contrib="sponsor" sponsor="&yandex;">The
375 <literal>ipfw_pmod</literal> kernel module has been added,
376 designed for modifying packets of any protocol.</para>
379 <para>At present, only <acronym>TCP</acronym>
380 <acronym>MSS</acronym> modification is implemented.</para>
384 <sect2 xml:id="kernel-sysctl">
385 <title>System Tuning and Controls</title>
387 <para revision="315539">The
388 <literal>vfs.root_mount_always_wait</literal> tunable has been
389 added, which forces the kernel to wait for root mount holds
390 even if the root device is already present.</para>
392 <para revision="316120" contrib="sponsor"
393 sponsor="&dellemc;">When the system real time clock
394 (<acronym>RTC</acronym>) is adjusted, such as by
395 <function>clock_settime()</function>, sleeping threads are now
396 awakened and absolute sleep times are reevaluated based on the
397 new value of the RTC.</para>
401 <sect1 xml:id="drivers">
402 <title>Devices and Drivers</title>
404 <para>This section covers changes and additions to devices and
405 device drivers since &release.prev;.</para>
407 <sect2 xml:id="drivers-device">
408 <title>Device Drivers</title>
413 <sect2 xml:id="drivers-storage">
414 <title>Storage Drivers</title>
419 <sect2 xml:id="drivers-network">
420 <title>Network Drivers</title>
422 <para revision="309377" contrib="sponsor"
423 sponsor="&broadcom;">The &man.bnxt.4; driver has been added,
424 providing support for Broadcom® NetXtreme-C™ and
425 NetXtreme-E™ devices.</para>
429 <sect1 xml:id="hardware">
430 <title>Hardware Support</title>
432 <para>This section covers general hardware support for physical
433 machines, hypervisors, and virtualization environments, as well
434 as hardware changes and updates that do not otherwise fit in
435 other sections of this document.</para>
437 <sect2 xml:id="hardware-support">
438 <title>Hardware Support</title>
443 <sect2 xml:id="hardware-virtualization">
444 <title>Virtualization Support</title>
449 <sect2 xml:id="hardware-arm">
450 <title>ARM Support</title>
452 <para revision="305436">Support for the Allwinner A13 board has
457 <sect1 xml:id="storage">
458 <title>Storage</title>
460 <para>This section covers changes and additions to file systems
461 and other storage subsystems, both local and networked.</para>
463 <sect2 xml:id="storage-general">
464 <title>General Storage</title>
469 <sect2 xml:id="storage-net">
470 <title>Networked Storage</title>
475 <sect2 xml:id="storage-zfs">
481 <sect2 xml:id="storage-geom">
482 <title>&man.geom.4;</title>
488 <sect1 xml:id="boot">
489 <title>Boot Loader Changes</title>
491 <para>This section covers the boot loader, boot menu, and other
492 boot-related changes.</para>
494 <sect2 xml:id="boot-loader">
495 <title>Boot Loader Changes</title>
497 <para revision="307632" contrib="sponsor" sponsor="&gandi;">The
498 <acronym>EFI</acronym> loader has been updated to support
499 <acronym>TFTPFS</acronym>, providing netboot support without
500 requiring an <acronym>NFS</acronym> server.</para>
503 <sect2 xml:id="boot-menu">
504 <title>Boot Menu Changes</title>
510 <sect1 xml:id="network">
511 <title>Networking</title>
513 <para>This section describes changes that affect networking in
516 <sect2 xml:id="network-general">
517 <title>General Network Changes</title>
519 <para revision="311681" contrib="sponsor" sponsor="&yandex;">The
520 network stack has been updated to include
521 <function>ip6_tryforward()</function>, providing performance
522 benefits as result of a reduced number of checks.</para>
524 <para revision="313523" contrib="sponsor"
525 sponsor="&dellemc;">The network stack has been modified to fix
526 incorrect or invalid <acronym>IP</acronym> addresses if
527 multiple threads emit a <acronym>UDP</acronym>
528 <literal>log_in_vein</literal> message concurrently.</para>
530 <para revision="317386" contrib="sponsor"
531 sponsor="&multiplay;">The <acronym>TCP</acronym> stack has
532 been changed to use the estimated <acronym>RTT</acronym>
533 instead of timestamps for receive buffer auto resizing.</para>
536 <sect2 xml:id="network-protocols">
537 <title>Network Protocols</title>
539 <para revision="309337" contrib="sponsor"
540 sponsor="&dellemc;">Support for <acronym>GARP</acronym>
541 retransmit has been added. A new &man.sysctl.8;,
542 <literal>net.link.ether.inet.garp_rexmit_count</literal>, has
543 been added, which sets the maximum number of retransmissions
544 when set to a non-zero value.</para>
546 <para revision="315514" contrib="sponsor"
547 sponsor="&yandex;">Support for the
548 <literal>UDP_ENCAP_ESPINUDP_NON_IKE</literal> encapsulation
549 type has been removed.</para>
553 <sect1 xml:id="ports">
554 <title>Ports Collection and Package Infrastructure</title>
556 <para>This section covers changes to the &os; Ports
557 Collection, package infrastructure, and package maintenance and
558 installation tools.</para>
560 <sect2 xml:id="ports-infrastructure">
561 <title>Infrastructure Changes</title>
566 <sect2 xml:id="ports-packages ">
567 <title>Packaging Changes</title>
574 <title>Documentation</title>
576 <para>This section covers changes to the &os; Documentation
577 Project sources and toolchain.</para>
579 <sect2 xml:id="doc-sources">
580 <title>Documentation Source Changes</title>
585 <sect2 xml:id="doc-toolchain">
586 <title>Documentation Toolchain Changes</title>
592 <sect1 xml:id="releng">
593 <title>Release Engineering and Integration</title>
595 <para>This section convers changes that are specific to the
596 &os; Release Engineering processes.</para>
598 <sect2 xml:id="releng-changes">
599 <title>Integration Changes</title>