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="314278"><literal>libucl</literal> has been
233 updated to version 20170219.</para>
235 <para revision="315432">&man.libarchive.3; has been updated to
236 version 3.3.1.</para>
238 <para revision="315995">&man.dma.8; has been updated to the
239 2017-02-10 snapshot.</para>
241 <para revision="316068">&man.ntpd.8; has been updated to version
244 <para revision="316303"><application>ACPICA</application> has
245 been updated to version 20170303.</para>
247 <para revision="316349">Timezone data files have been updated to
248 version 2017b.</para>
250 <para revision="316420">&man.mandoc.1; has been updated to
253 <para revision="316423"><application>Clang</application> has
254 been updated to version 4.0.0.</para>
256 <para revision="316423"><application>LLVM</application> has
257 been updated to version 4.0.0.</para>
259 <para revision="316423"><application>LLD</application> has
260 been updated to version 4.0.0.</para>
262 <para revision="316423"><application>LLDB</application> has
263 been updated to version 4.0.0.</para>
265 <para revision="316423"><application>compiler-rt</application>
266 has been updated to version 4.0.0.</para>
268 <para revision="316423"><application>libc++</application> has
269 been updated to version 4.0.0.</para>
271 <para revision="316957">&man.tcsh.1; has been updated to version
275 <sect2 xml:id="userland-installer">
276 <title>Installation and Configuration Tools</title>
281 <sect2 xml:id="userland-rc">
282 <title><filename class="directory">/etc/rc.d</filename>
288 <sect2 xml:id="userland-periodic">
289 <title><filename class="directory">/etc/periodic</filename>
292 <para revision="317857">The <filename>410.status-mfi</filename>
293 &man.periodic.8; script has been added to monitor the status
294 of &man.mfi.4; volumes.</para>
297 <sect2 xml:id="userland-libraries">
298 <title>Runtime Libraries and API</title>
300 <para revision="317618" contrib="sponsor"
301 sponsor="&dellemc;">The <function>clock_nanosleep()</function>
302 system call has been added. The
303 <function>nanosleep()</function> system call is now a wrapper
304 around <function>clock_nanosleep()</function>.</para>
307 <sect2 xml:id="userland-abi">
308 <title>ABI Compatibility</title>
310 <para revision="315274" contrib="sponsor"
311 sponsor="&dellemc;">The
312 <function>sem_clockwait_np()</function> library function has
313 been added, which allows the caller to specify the reference
314 clock and choose between absolute and relative mode.</para>
316 <para revision="315282">The <application>clang</application>
317 <literal>nullability</literal> attribute has been added to the
318 <literal>C</literal> library headers.</para>
322 <sect1 xml:id="kernel">
323 <title>Kernel</title>
325 <para>This section covers changes to kernel configurations, system
326 tuning, and system control parameters that are not otherwise
329 <sect2 xml:id="kernel-bugfix">
330 <title>Kernel Bug Fixes</title>
332 <para revision="316039">The &man.kvm.close.3; function has been
333 updated to return the accumulated error from previous
334 &man.close.2; calls.</para>
336 <para revision="317434">The &man.ipf.4; packet filter has been
337 updated to prevent "keep state" from incorrectly
338 implying "keep frags", matching the behavior
339 documented in &man.ipf.5;.</para>
342 <sect2 xml:id="kernel-config">
343 <title>Kernel Configuration</title>
345 <para revision="315514" contrib="sponsor" sponsor="&yandex;">The
346 <literal>IPSEC_NAT_T</literal> kernel configuration option has
347 been removed. Support for <acronym>NAT-T</acronym> is now
348 enabled by default.</para>
350 <para revision="315514" contrib="sponsor" sponsor="&yandex;">The
351 <literal>IPSEC_FILTERTUNNEL</literal> kernel option has been
352 removed, which was deprecated by the
353 <literal>net.inet.ipsec.filtertunnel</literal> sysctl.</para>
356 <sect2 xml:id="kernel-modules">
357 <title>Kernel Modules</title>
359 <para revision="315514" contrib="sponsor" sponsor="&yandex;">The
360 <literal>ipsec</literal> and <literal>tcpmd5</literal> kernel
361 modules have been added.</para>
363 <para revision="316274" contrib="sponsor" sponsor="&yandex;">The
364 &man.ipfw.4; packet filter has been updated to add support for
365 named dynamic states.</para>
367 <para revision="316444" contrib="sponsor" sponsor="&yandex;">The
368 <literal>ipfw_nptv6</literal> kernel module has been added,
369 implementing Network Prefix Translation for
370 <acronym>IPv6</acronym> as defined in <acronym>RFC</acronym>
373 <para revision="316446" contrib="sponsor" sponsor="&yandex;">The
374 <literal>ipfw_nat64</literal> kernel module has been added,
375 implementing stateless and stateful
376 <acronym>NAT64</acronym>.</para>
378 <para revision="316660" contrib="sponsor" sponsor="&ff;">The
379 &man.cfumass.4; device has been added, providing a storage
380 frontend to <acronym>USB</acronym>
381 <acronym>OTG</acronym>-capable hardware.</para>
383 <para revision="317045" contrib="sponsor" sponsor="&yandex;">The
384 <literal>ipfw_pmod</literal> kernel module has been added,
385 designed for modifying packets of any protocol.</para>
388 <para>At present, only <acronym>TCP</acronym>
389 <acronym>MSS</acronym> modification is implemented.</para>
393 <sect2 xml:id="kernel-sysctl">
394 <title>System Tuning and Controls</title>
396 <para revision="315539">The
397 <literal>vfs.root_mount_always_wait</literal> tunable has been
398 added, which forces the kernel to wait for root mount holds
399 even if the root device is already present.</para>
401 <para revision="316120" contrib="sponsor"
402 sponsor="&dellemc;">When the system real time clock
403 (<acronym>RTC</acronym>) is adjusted, such as by
404 <function>clock_settime()</function>, sleeping threads are now
405 awakened and absolute sleep times are reevaluated based on the
406 new value of the RTC.</para>
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>
422 <sect2 xml:id="drivers-storage">
423 <title>Storage Drivers</title>
428 <sect2 xml:id="drivers-network">
429 <title>Network Drivers</title>
431 <para revision="309377" contrib="sponsor"
432 sponsor="&broadcom;">The &man.bnxt.4; driver has been added,
433 providing support for Broadcom® NetXtreme-C™ and
434 NetXtreme-E™ devices.</para>
438 <sect1 xml:id="hardware">
439 <title>Hardware Support</title>
441 <para>This section covers general hardware support for physical
442 machines, hypervisors, and virtualization environments, as well
443 as hardware changes and updates that do not otherwise fit in
444 other sections of this document.</para>
446 <sect2 xml:id="hardware-support">
447 <title>Hardware Support</title>
452 <sect2 xml:id="hardware-virtualization">
453 <title>Virtualization Support</title>
458 <sect2 xml:id="hardware-arm">
459 <title>ARM Support</title>
461 <para revision="305436">Support for the Allwinner A13 board has
466 <sect1 xml:id="storage">
467 <title>Storage</title>
469 <para>This section covers changes and additions to file systems
470 and other storage subsystems, both local and networked.</para>
472 <sect2 xml:id="storage-general">
473 <title>General Storage</title>
478 <sect2 xml:id="storage-net">
479 <title>Networked Storage</title>
484 <sect2 xml:id="storage-zfs">
490 <sect2 xml:id="storage-geom">
491 <title>&man.geom.4;</title>
497 <sect1 xml:id="boot">
498 <title>Boot Loader Changes</title>
500 <para>This section covers the boot loader, boot menu, and other
501 boot-related changes.</para>
503 <sect2 xml:id="boot-loader">
504 <title>Boot Loader Changes</title>
506 <para revision="307632" contrib="sponsor" sponsor="&gandi;">The
507 <acronym>EFI</acronym> loader has been updated to support
508 <acronym>TFTPFS</acronym>, providing netboot support without
509 requiring an <acronym>NFS</acronym> server.</para>
512 <sect2 xml:id="boot-menu">
513 <title>Boot Menu Changes</title>
519 <sect1 xml:id="network">
520 <title>Networking</title>
522 <para>This section describes changes that affect networking in
525 <sect2 xml:id="network-general">
526 <title>General Network Changes</title>
528 <para revision="311681" contrib="sponsor" sponsor="&yandex;">The
529 network stack has been updated to include
530 <function>ip6_tryforward()</function>, providing performance
531 benefits as result of a reduced number of checks.</para>
533 <para revision="313523" contrib="sponsor"
534 sponsor="&dellemc;">The network stack has been modified to fix
535 incorrect or invalid <acronym>IP</acronym> addresses if
536 multiple threads emit a <acronym>UDP</acronym>
537 <literal>log_in_vein</literal> message concurrently.</para>
539 <para revision="317386" contrib="sponsor"
540 sponsor="&multiplay;">The <acronym>TCP</acronym> stack has
541 been changed to use the estimated <acronym>RTT</acronym>
542 instead of timestamps for receive buffer auto resizing.</para>
545 <sect2 xml:id="network-protocols">
546 <title>Network Protocols</title>
548 <para revision="309337" contrib="sponsor"
549 sponsor="&dellemc;">Support for <acronym>GARP</acronym>
550 retransmit has been added. A new &man.sysctl.8;,
551 <literal>net.link.ether.inet.garp_rexmit_count</literal>, has
552 been added, which sets the maximum number of retransmissions
553 when set to a non-zero value.</para>
555 <para revision="315514" contrib="sponsor"
556 sponsor="&yandex;">Support for the
557 <literal>UDP_ENCAP_ESPINUDP_NON_IKE</literal> encapsulation
558 type has been removed.</para>
562 <sect1 xml:id="ports">
563 <title>Ports Collection and Package Infrastructure</title>
565 <para>This section covers changes to the &os; Ports
566 Collection, package infrastructure, and package maintenance and
567 installation tools.</para>
569 <sect2 xml:id="ports-infrastructure">
570 <title>Infrastructure Changes</title>
575 <sect2 xml:id="ports-packages ">
576 <title>Packaging Changes</title>
583 <title>Documentation</title>
585 <para>This section covers changes to the &os; Documentation
586 Project sources and toolchain.</para>
588 <sect2 xml:id="doc-sources">
589 <title>Documentation Source Changes</title>
594 <sect2 xml:id="doc-toolchain">
595 <title>Documentation Toolchain Changes</title>
601 <sect1 xml:id="releng">
602 <title>Release Engineering and Integration</title>
604 <para>This section convers changes that are specific to the
605 &os; Release Engineering processes.</para>
607 <sect2 xml:id="releng-changes">
608 <title>Integration Changes</title>