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: 282482 -->
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="266463">The default &man.newsyslog.conf.5; now
163 includes files in the
164 <filename>/etc/newsyslog.conf.d/</filename> and
165 <filename>/usr/local/etc/newsyslog.conf.d/</filename>
166 directories by default for &man.newsyslog.8;.</para>
168 <para revision="270675">The &man.mailwrapper.8; utility has been
169 updated to use &man.mailer.conf.5; from the
170 <literal>LOCALBASE</literal> environment variable, which
171 defaults to <filename class="directory">/usr/local</filename>
174 <para revision="272350">The <literal>MK_ARM_EABI</literal>
175 &man.src.conf.5; option has been removed.</para>
178 <sect2 xml:id="userland-programs">
179 <title>Userland Application Changes</title>
181 <para revision="258838" contrib="sponsor" sponsor="&ff;,
182 &google;" sponsorurl="">The &man.casperd.8; daemon has been
183 added, which provides access to functionality that is not
184 available in the <quote>capability mode</quote>
187 <para revision="260594">When unable to load a kernel module with
188 &man.kldload.8;, a message informing to view output of
189 &man.dmesg.8; is now printed, opposed to the previous output
190 <quote>Exec format error.</quote>.</para>
192 <para revision="260910">Allow &man.pciconf.8; to identify PCI
193 devices that are attached to a driver to be identified by
194 their device name instead of just the selector. Additionally,
195 an optional device argument to the <literal>-l</literal> flag
196 to restrict the output to only listing details about a single
199 <para revision="260913">A new flag, <quote>onifconsole</quote>
200 has been added to <filename>/etc/ttys</filename>. This allows
201 the system to provide a login prompt via serial console if the
202 device is an active kernel console, otherwise it is equivalent
203 to <literal>off</literal>.</para>
205 <para revision="260926">Support for displaying VPD for PCI
206 devices via &man.pciconf.8; has been added.</para>
208 <para revision="261498">&man.ping.8; protects against malicious
209 network packets using the Capsicum framework to drop
212 <para revision="265229">The &man.ps.1; utility has been
213 updated to include the <literal>-J</literal> flag, used to
214 filter output by matching &man.jail.8; IDs and names.
215 Additionally, argument <literal>0</literal> can be used to
216 <literal>-J</literal> to only list processes running on the
219 <para revision="265249">The &man.top.1; utility has been updated
220 to filter by &man.jail.8; ID or name, in followup to the
221 &man.ps.1; change in <literal>r265229</literal>.</para>
223 <para revision="266209">The &man.pmcstat.8; utility has been
224 updated to include a new flag, <literal>-l</literal>, which
225 ends event collection after the specified number of
228 <para revision="270745">The &man.ps.1; utility has been updated
229 to include a new keyword, <quote>tracer</quote>, which
230 displays the <acronym>PID</acronym> of the tracing
233 <para revision="271482">Support for adding empty partitions has
234 been added to the &man.mkimg.1; utility.</para>
236 <para revision="272166">The &man.primes.6; utility has been
237 updated to correctly enumerate prime numbers between
238 <literal>4295098369</literal> and
239 <literal>3825123056546413050</literal>, which prior to this
240 change, it would be possible for returned values to be
241 incorrectly identified as prime numbers.</para>
243 <para revision="272198">The &man.mkimg.1; utility has been
244 updated to include three options used to print information
245 about &man.mkimg.1; itself:</para>
247 <informaltable frame="none" pgwide="0">
249 <colspec colwidth="1*"/>
250 <colspec colwidth="1*"/>
253 <entry>Option</entry>
254 <entry>Output</entry>
260 <entry><literal>--version</literal></entry>
261 <entry>The current version of the &man.mkimg.1;
266 <entry><literal>--formats</literal></entry>
267 <entry>The disk image file formats supported by
268 &man.mkimg.1;</entry>
272 <entry><literal>--schemes</literal></entry>
273 <entry>The partition schemes supported by
274 &man.mkimg.1;</entry>
280 <para revision="272488">Userland &man.ctf.5; support in
281 &man.dtrace.1; has been added. With this change,
282 &man.dtrace.1; is able to resolve type info for function and
283 <acronym>USDT</acronym> probe arguments, and function return
286 <para revision="274960">The &man.elfdump.1; utility has been
287 updated to support capability mode provided by
288 &man.capsicum.4;.</para>
290 <para revision="275680" contrib="sponsor" sponsor="&ff;">The
291 &man.fstyp.8; utility has been added, which is used to
292 determine the filesystem on a specified device.</para>
294 <para revision="276881">The <literal>libedit</literal> library
295 has been updated to support <acronym>UTF</acronym>-8, which
296 additionally provides unicode support to &man.sh.1;.</para>
298 <para revision="277166" arch="powerpc">The &man.ptrace.2; system
299 call has been updated include support for Altivec registers on
300 &os;/&arch.powerpc;.</para>
302 <para revision="278320">A new device control utility,
303 &man.devctl.8; has been added, which allows making
304 administrative changes to individual devices, such as
305 attaching and detaching drivers, and enabling and disabling
306 devices. The &man.devctl.8; utility uses the new
307 &man.devctl.3; library.</para>
309 <para revision="279315" contrib="sponsor" sponsor="&ff;">The
310 &man.uefisign.8; utility has been added.</para>
312 <para revision="279571" contrib="sponsor"
313 sponsor="&scaleengine;">The &man.freebsd-update.8; utility has
314 been updated to prevent fetching updated binary patches when
315 a previous upgrade has not been thoroughly completed.</para>
317 <para revision="279122" contrib="sponsor"
318 sponsor="&juniper;">The &man.netstat.1; utility has been
319 updated to link against the &man.libxo.3; shared
322 <para revision="280870">A regression in the &man.libarchive.3;
323 library that would prevent a directory from being included in
324 the archive when <literal>--one-file-system</literal> is used
325 has been fixed.</para>
327 <para revision="281311" contrib="sponsor" sponsor="&ff;">The
328 &man.ar.1; utility has been updated to set
329 <literal>ARCHIVE_EXTRACT_SECURE_SYMLINKS</literal> and
330 <literal>ARCHIVE_EXTRACT_SECURE_NODOTDOT</literal> to disallow
331 directory traversal when extracting an archive, similar to
334 <para revision="282208" contrib="sponsor"
335 sponsor="&multiplay;">The &man.chflags.1;, &man.chgrp.1;,
336 &man.chmod.1;, and &man.chown.8; utilities now affect symbolic
337 links when the <literal>-R</literal> flag is specified, as
338 documented in &man.symlink.7;.</para>
340 <para revision="281617">A race condition in &man.wc.1; that
341 would cause final results to be sent to &man.stderr.4; when
342 receiving the <literal>SIGINFO</literal> signal has been
345 <para revision="284297" contrib="sponsor"
346 sponsor="&clusterhq;">The &man.lockstat.1; utility has been
347 updated with several improvements:</para>
351 <para>Spin locks are now reported as the amount of time
352 spinning, instead of loop iterations.</para>
356 <para>Reader locks are now recognized as adaptive and can
361 <para>Lock aquisition events for successful reader try-lock
362 events are now reported.</para>
366 <para>Spin-and-block events that occur before lock
367 acquisition are now reported.</para>
371 <para revision="284589" contrib="sponsor"
372 sponsor="&scaleengine;">The &man.fstyp.8; utility has been
373 updated to be able to detect &man.zfs.8; and &man.geli.8;
377 <sect2 xml:id="userland-contrib">
378 <title>Contributed Software</title>
380 <para revision="258884" contrib="sponsor"
381 sponsor="&darpa_afrl;">&man.lldb.1; has been updated to
382 upstream snapshot version r196259.</para>
384 <para revision="259626">Timezone data files have been updated to
385 version 2013i.</para>
387 <para revision="260445">&man.byacc.1; has been updated to
388 version 20140101.</para>
390 <para revision="261071">&man.jemalloc.3; has been updated to
391 version 3.5.0.</para>
393 <para revision="261283"><application>libc++</application> has
394 been updated to version 3.4.</para>
396 <para revision="261320"><application>OpenSSH</application> has
397 been updated to 6.5p1.</para>
399 <para revision="261344"><application>mdocml</application> has
400 been updated to version 1.12.3.</para>
402 <para revision="261991"><application>LLVM</application> and
403 <application>Clang</application> have been updated to
406 <para revision="266527"
407 role="merged"><application>Sendmail</application> has been
408 updated from 8.14.7 to 8.14.9.</para>
410 <para revision="276577"><application>file</application> has been
411 updated to version 5.22.</para>
413 <para revision="275718">The <application>binutils</application>
414 suite of utilities has been updated to include upstream
415 patches that add new relocations for &arch.powerpc;
418 <para revision="276398" contrib="sponsor" sponsor="&ff;">The
419 <application>ELF Tool Chain</application> has been updated to
420 upstream revision r3136.</para>
422 <para revision="276551">The <application>texinfo</application>
423 utility and <literal>info</literal> pages were removed from
424 the base system. The <filename
425 role="package">print/texinfo</filename> port should be
426 installed on systems where <literal>info</literal> pages are
429 <para revision="276796" contrib="sponsor" sponsor="&ff;">The ELF
430 object manipulation tools
431 <application>addr2line</application>,
432 <application>elfcopy (strip)</application>,
433 <application>nm</application>,
434 <application>readelf</application>,
435 <application>size</application>, and
436 <application>strings</application> were switched to the
437 versions from the ELF Tool Chain project.</para>
439 <para revision="276881">The <literal>libedit</literal> library
440 has been updated to include <acronym>UTF-8</acronym> support,
441 adding <acronym>UTF-8</acronym> support to the &man.sh.1;
444 <para revision="278433">The &man.xz.1; utility has been updated
445 to support multi-threaded compression.</para>
447 <para revision="280297"><application>OpenSSL</application> has
448 been updated to version 1.0.1m.</para>
450 <para revision="280932" contrib="sponsor" sponsor="&ff;">The
451 <application>elftoolchain</application> utilities have been
452 updated to version 3179.</para>
454 <para revision="281316">The &man.xz.1; utility has been updated
455 to version 5.2.1.</para>
457 <para revision="281373">The &man.nvi.1; utility has been updated
458 to version 2.1.3.</para>
460 <para revision="281396">The &man.acpi.4; subsystem has been
461 updated to version 20150410.</para>
463 <para revision="281806">The &man.wpa.supplicant.8; and
464 &man.hostapd.8; utilities have been updated to version
467 <para revision="282089">The &man.unbound.8; utility has been
468 updated to version 1.5.3.</para>
470 <para revision="282434" contrib="sponsor" sponsor="&ff;">The
471 &man.resolvconf.8; utility has been updated to version
474 <para revision="284254"><application>bmake</application> has
475 been updated to version 20150606.</para>
478 <sect2 xml:id="userland-installer">
479 <title>Installation and Configuration Tools</title>
481 <para revision="271539">The &man.bsdinstall.8; partition editor
482 and &man.sade.8; utility have been updated to include native
483 <acronym>ZFS</acronym> support.</para>
485 <para revision="272274">The &os; installation utility,
486 &man.bsdinstall.8;, has been updated to set the
487 <literal>canmount</literal> &man.zfs.8; property to
488 <literal>off</literal> for the <filename
489 class="directory">/var</filename> dataset, preventing the
490 contents of directories within <filename
491 class="directory">/var</filename> from conflicting when
492 using multiple boot environments, such as that provided by
493 <filename role="package">sysutils/beadm</filename>.</para>
495 <para revision="274394">The &man.bsdconfig.8; utility has been
496 updated to skip the initial &man.tzsetup.8;
497 <acronym>UTC</acronym> versus wall-clock time prompt when run
498 in a virtual machine, determined when the
499 <literal>kern.vm_guest</literal> &man.sysctl.8; is set to
500 <literal>1</literal>.</para>
502 <para revision="275874">The &man.bsdinstall.8; utility has been
503 updated to use the new &man.dpv.3; library to display progress
504 when extracting the &os; distributions.</para>
507 <sect2 xml:id="userland-rc">
508 <title><filename class="directory">/etc/rc.d</filename>
511 <para revision="270676">The &man.rc.8; subsystem has been
512 updated to allow configuring services in <filename
513 class="directory">${LOCALBASE}/etc/rc.conf.d/</filename>.
514 If <literal>LOCALBASE</literal> is unset, it defaults to
515 <filename class="directory">/usr/local</filename>.</para>
517 <para revision="275299">The <filename>mrouted</filename>
518 &man.rc.8; script has been removed from the base system. An
519 equivalent script is available from the <filename
520 role="package">net/mrouted</filename> port.</para>
522 <para revision="279463" contrib="sponsor"
523 sponsor="&sandvine;">A new &man.rc.8; script,
524 <filename>iovctl</filename>, has been added, which allows
525 automatically starting the &man.iovctl.8; utility at
529 <sect2 xml:id="userland-periodic">
530 <title><filename class="directory">/etc/periodic</filename>
533 <para revision="271321">The daily &man.periodic.8; script
534 <filename>110.clean-tmps</filename> has been updated to avoid
535 crossing filesystem mount boundaries when cleaning files in
536 <filename class="directory">/tmp</filename>.</para>
539 <sect2 xml:id="userland-libraries">
540 <title>Runtime Libraries and API</title>
542 <para revision="265995">The Blowfish &man.crypt.3; default
543 format has been changed to
544 <literal>$2b$</literal>.</para>
546 <para revision="268461">The &man.readline.3; library is now
547 statically linked in software within the base system, and the
548 shared library is no longer installed, allowing the Ports
549 Collection to use a modern version of the library.</para>
551 <para revision="272273">The &man.strptime.3; library has been
552 updated to add support for <acronym>POSIX</acronym>-2001
553 features <literal>%U</literal> and
554 <literal>%W</literal>.</para>
556 <para revision="272842,272848" contrib="sponsor"
557 sponsor="&ff;">The &man.dl.iterate.phdr.3; library has been
558 changed to always return the path name of the
559 <acronym>ELF</acronym> object in the
560 <literal>dlpi_name</literal> structure member.</para>
562 <para revision="273562" contrib="sponsor"
563 sponsor="&juniper;">The &man.libxo.3; library has been
564 imported to the base system.</para>
566 <para revision="273806" contrib="sponsor" sponsor="&chelsio;">A
567 userland library for Chelsio Terminator 5 based iWARP cards
568 has been added, allowing userland <acronym>RDMA</acronym>
569 applications to work over compatible
570 <acronym>NIC</acronym>s.</para>
572 <para revision="274987">The &man.gpio.3; library has been added,
573 providing a wrapper around the &man.gpio.4; kernel
576 <para revision="277610">The <literal>futimens()</literal> and
577 <literal>utimensat()</literal> system calls have been
578 added. See &man.utimensat.2; for more information.</para>
580 <para revision="278934">The &man.elf.3; compile-time dependency
581 has been removed from <filename>dtri.o</filename>, which
582 allows adding <application>DTrace</application> probes to
583 userland applications and libraries without also linking
584 against &man.elf.3;.</para>
586 <para revision="279186">The &man.setmode.3; function has been
587 updated to consistently set <literal>errno</literal> on
590 <para revision="279663">The &man.qsort.3; functions have been
591 updated to be able to handle 32-bit aligned data on 64-bit
592 platforms, also providing a significant improvement in 32-bit
595 <para revision="281130">Several standard include headers have
596 been updated to use of <application>gcc</application>
597 attributes, such as <literal>__result_use_check()</literal>,
598 <literal>__alloc_size()</literal>, and
599 <literal>__nonnull()</literal>.</para>
601 <para revision="281845">Support for file verification in
602 <acronym>MAC</acronym> has been added.</para>
604 <para revision="282973" contrib="sponsor" sponsor="&ff;">The
605 <literal>libgomp</literal> library is now only built when
606 building <acronym>GCC</acronym> from the base system. An
607 up-to-date version is available in the Ports Collection as
609 role="package">devel/libiomp5-devel</filename>.</para>
611 <para revision="282988">The <filename>stdlib.h</filename> and
612 <filename>malloc.h</filename> headers have been updated to
613 make use of the <application>gcc</application>
614 <literal>alloc_align()</literal> attribute.</para>
616 <para revision="284483" contrib="sponsor"
617 sponsor="&scaleengine;">The Blowfish &man.crypt.3; library
618 has been updated to support $2y$ hashes.</para>
621 <sect2 xml:id="userland-abi">
622 <title>ABI Compatibility</title>
624 <para revision="271982">The &linux; compatibility version has
625 been updated to <literal>2.6.18</literal>. The
626 <literal>compat.linux.osrelease</literal> &man.sysctl.8; is
627 evaluated when building the <filename
628 role="package">emulators/linux-c6</filename> and related
633 <sect1 xml:id="kernel">
634 <title>Kernel</title>
636 <para>This section covers changes to kernel configurations, system
637 tuning, and system control parameters that are not otherwise
640 <sect2 xml:id="kernel-bugfix">
641 <title>Kernel Bug Fixes</title>
643 <para revision="265876">A kernel bug that inhibited proper
644 functionality of the <literal>dev.cpu.0.freq</literal>
645 &man.sysctl.8; on &intel; processors with Turbo
646 Boost ™ enabled has been fixed.</para>
648 <para revision="271697" arch="powerpc">Support for
649 &man.dtrace.1; stack tracing has been fixed for
650 &os;/&arch.powerpc;, using the <literal>trapexit()</literal>
651 and <literal>asttrapexit()</literal> functions instead of
652 checking within addressed kernel space.</para>
654 <para revision="272089">A bug in &man.ipfw.4; that could
655 potentially lead to a kernel panic when using &man.dummynet.4;
656 at layer 2 has been fixed.</para>
658 <para revision="280930" contrib="sponsor" sponsor="&mitail;">The
659 kernel <acronym>RPC</acronym> has been updated to include
660 several enhancements:</para>
664 <para>The 45 MiB limit on requests queued for
665 &man.nfsd.8; threads has been removed.</para>
669 <para>Avoids unnecessary throttling by not deferring
670 accounting for completed requests.</para>
674 <para>Fixes an integer overflow and signedness bugs.</para>
678 <para revision="281261" arch="powerpc">Support for
679 &man.dtrace.1; has been added for the
680 Book-E ™.</para>
683 <sect2 xml:id="kernel-config">
684 <title>Kernel Configuration</title>
686 <para revision="266531">The <literal>IMAGACT_BINMISC</literal>
687 kernel configuration option has been enabled by default,
688 which enables application execution through emulators, such
689 as <application>Qemu</application>.</para>
691 <para revision="268045">The <literal>VT</literal> kernel
692 configuration file has been removed, and the &man.vt.4;
693 driver is included in the <literal>GENERIC</literal> kernel.
694 To enable &man.vt.4;, enter <literal>set kern.vty=vt</literal>
695 at the &man.loader.8; prompt during boot, or add
696 <literal>kern.vty=vt</literal> to &man.loader.conf.5; and
697 reboot the system.</para>
699 <para revision="277904">The &man.config.8; utility has been
700 updated to allow using a non-standard <filename
701 class="directory">src/</filename> tree, specified as an
702 argument to the <literal>-s</literal> flag.</para>
704 <para revision="277990" arch="powerpc64">The
705 &os;/&arch.powerpc64; kernel now builds as
706 a position-independent executable, allowing the kernel to be
707 loaded into and run from any physical or virtual
711 <para>This change requires an update to &man.loader.8;.
712 The userland and kernel must be updated before rebooting the
716 <para revision="279189" contrib="sponsor" sponsor="&ff;"
717 arch="powerpc">Kernel support for Vector-Scalar eXtension
718 (<acronym>VSX</acronym>) found on POWER7 and POWER8 hardware
719 has been added.</para>
721 <para revision="279252" contrib="sponsor" sponsor="&ff;"
722 arch="powerpc">The &man.pmap.9; implementation for 64-bit
723 &powerpc; processors has been overhaulded to improve
726 <para revision="283959" contrib="sponsor"
727 sponsor="&limelight;">A new kernel configuration option,
728 <literal>EM_MULTIQUEUE</literal>, has been added which enables
729 multi-queue support in the &man.em.4; driver.</para>
732 <para>Multi-queue support in the &man.em.4; driver is not
733 officially supported by &intel;.</para>
737 <sect2 xml:id="kernel-sysctl">
738 <title>System Tuning and Controls</title>
740 <para revision="275140" contrib="sponsor" sponsor="&ff;">The
741 &man.hwpmc.4; default and maximum callchain depths have been
742 increased. The default has been increased from 16 to 32, and
743 the maximum increased from 32 to 128.</para>
745 <para revision="279361">The <literal>kern.osrelease</literal>
746 and <literal>kern.osreldate</literal> are now configurable
747 &man.jail.8; parameters.</para>
749 <para revision="280308,280949" contrib="sponsor"
750 sponsor="&ix;, &ff;">The &man.devfs.5; device filesystem has
751 been changed to update timestamps for read/write operations
752 using seconds precision. A new &man.sysctl.8;,
753 <literal>vfs.devfs.dotimes</literal> has been added, which
754 when set to a non-zero value, enables default precision
755 timestamps for these operations.</para>
757 <para revision="282213" contrib="sponsor" sponsor="&ff;">A new
758 &man.sysctl.8;, <literal>kern.racct.enable</literal>, has been
759 added, which when set to a non-zero value allows using
760 &man.rctl.8; with the <literal>GENERIC</literal> kernel.
761 A new kernel configuration option,
762 <literal>RACCT_DISABLED</literal> has also been added.</para>
764 <para revision="282901" contrib="sponsor" sponsor="&ff;">The
765 <literal>GENERIC</literal> kernel configuration now includes
766 <literal>RACCT</literal> and <literal>RCTL</literal> by
770 <para>To enable <literal>RACCT</literal> and
771 <literal>RCTL</literal> on a system using the
772 <literal>GENERIC</literal> kernel configuration, add
773 <literal>kern.racct.enable=1</literal> to
774 &man.loader.conf.5;, and reboot the system.</para>
777 <para revision="283136" contrib="sponsor"
778 sponsor="&limelight;">A new &man.sysctl.8;,
779 <literal>net.inet.tcp.hostcache.purgenow</literal>, has
780 been added, which when set to <literal>1</literal> during
781 runtime will flush all
782 <literal>net.inet.tcp.hostcache</literal> entries.</para>
786 <sect1 xml:id="drivers">
787 <title>Devices and Drivers</title>
789 <para>This section covers changes and additions to devices and
790 device drivers since &release.prev;.</para>
792 <sect2 xml:id="drivers-device">
793 <title>Device Drivers</title>
795 <para revision="260903">Support for GPS ports has been added to
798 <para revision="265132">The &man.full.4; device has been added,
799 and the <literal>lindev(4)</literal> device has been removed.
800 Prior to this change, <literal>lindev(4)</literal> provided
801 only the <filename>/dev/full</filename> character device,
802 returning <literal>ENOSPC</literal> on write attempts. As
803 this device is not specific to &linux;, a native &os; version
804 has been added.</para>
806 <para revision="271705">Hardware context support has been
807 added to the <literal>drm/i915</literal> driver, adding
808 support for <application>Mesa</application> 9.2 and
811 <para revision="273178">The &man.vt.4; driver has been updated,
812 replacing the bitmapped <literal>kern.vt.spclkeys</literal>
813 &man.sysctl.8; with individual
814 <literal>kern.vt.kbd_*</literal> variants.</para>
816 <para revision="273598">The &man.hpet.4; driver has been updated
818 <filename>/dev/hpet<replaceable>N</replaceable></filename>
819 device, providing access to <acronym>HPET</acronym> from
822 <para revision="280183">The <literal>drm</literal> code has
823 been updated to match &linux; version 3.8.13.</para>
825 <para revision="282783" arch="powerpc">Support for the Freescale
826 <acronym>PCI</acronym> Root Complex device has been
830 <sect2 xml:id="drivers-storage">
831 <title>Storage Drivers</title>
833 <para revision="265236" contrib="sponsor"
834 sponsor="&lsi;, &spectralogic;" sponsorurl="">The &man.mpr.4;
835 device has been added, providing support for LSI Fusion-MPT
836 3 12Gb SCSI/SATA controllers.</para>
838 <para revision="265555" contrib="sponsor"
839 sponsor="&lsi;">The &man.mrsas.4; driver has been added,
840 providing support for LSI MegaRAID SAS controllers. The
841 &man.mfi.4; driver will attach to the controller, by default.
842 To enable &man.mrsas.4; add
843 <literal>hw.mfi.mrsas_enable=1</literal> to
844 <filename>/boot/loader.conf</filename>, which turns off
845 &man.mfi.4; device probing.</para>
848 <para>At this time, the &man.mfiutil.8; utility and the &os;
849 version of <application>MegaCLI</application> and
850 <application>StorCli</application> do not work with
851 &man.mrsas.4;.</para>
854 <para revision="275461" contrib="sponsor" sponsor="&ix;">The
855 &man.ctl.4; subsystem has been updated, increasing the ports
856 limit from <literal>128</literal> to <literal>256</literal>,
857 and <acronym>LUN</acronym> limit from <literal>256</literal>
858 to <literal>1024</literal>.</para>
860 <para revision="276526">The <literal>asr(4)</literal> driver has
861 been removed, and is no longer supported.</para>
863 <para revision="281387">The &man.hptnr.4; driver has been
864 updated to version 1.1.1.</para>
867 <sect2 xml:id="drivers-network">
868 <title>Network Drivers</title>
870 <para revision="258830">Support for Broadcom chipsets BCM57764,
871 BCM57767, BCM57782, BCM57786 and BCM57787 has been added to
874 <para revision="260448">Support for the &intel; Centrino™
875 Wireless-N 135 chipset has been added.</para>
877 <para revision="260552">Firmware for &intel; Centrino™
878 Wireless-N 105 devices has been added to the base
881 <para revision="261975">The deprecated nve(4) driver has been
882 removed. Users of NVIDIA nForce MCP network adapters are
883 advised to use the &man.nfe.4; driver instead, which has been
884 the default driver for this hardware since
885 &os; 7.0.</para>
887 <para revision="264601" contrib="sponsor"
888 sponsor="&darpa_afrl;">The <literal>if_nf10bmac(4)</literal>
889 device has been added, providing support for NetFPGA-10G
890 Embedded CPU Ethernet Core.</para>
893 <para>The <literal>if_nf10bmac(4)</literal> driver operates on
894 the FPGA, and is not suited for the PCI host
898 <para revision="265348" contrib="sponsor"
899 sponsor="&netgate;">The &man.ath.hal.4; driver has been
900 updated to support the Atheros AR1111 chipset.</para>
902 <para revision="266770">Support for the &intel; Centrino™
903 Wireless-N 105 chipset has been added.</para>
905 <para revision="266757" contrib="sponsor"
906 sponsor="&chelsio;">Support for the &man.cxgbe.4; Terminator
907 5 (T5) 10G/40G cards has been added to &man.netmap.4;.</para>
909 <para revision="272730">The &man.alc.4; driver has been updated
910 to support AR816x and AR817x ethernet controllers.</para>
912 <para revision="273331">The &man.vxlan.4; driver has been added,
913 which creates a virtual Layer 2 (Ethernet) network overlaid in
914 a Layer 3 (IP/UDP) network. The &man.vxlan.4; driver is
915 analogous to &man.vlan.4;, but is designed to be better suited
916 for large, multiple-tenant datacenter environments.</para>
918 <para revision="274246" contrib="sponsor" sponsor="&yandex;">The
919 &man.gre.4; driver has been significantly overhauled, and has
920 been split into two separate modules, &man.gre.4; and
923 <para revision="283766" contrib="sponsor"
924 sponsor="&limelight;">The &man.em.4; driver has been updated
925 with improved transmission queue hang detection.</para>
929 <sect1 xml:id="hardware">
930 <title>Hardware Support</title>
932 <para>This section covers general hardware support for physical
933 machines, hypervisors, and virtualization environments, as well
934 as hardware changes and updates that do not otherwise fit in
935 other sections of this document.</para>
937 <sect2 xml:id="hardware-support">
938 <title>Hardware Support</title>
940 <para revision="268303">The &man.asmc.4; driver has been
941 updated to support the &apple; MacMini 3,1.</para>
943 <para revision="268351">Support for &os;/ia64 has been dropped
944 as of &os; 11.</para>
946 <para revision="274386">An issue that could cause a system to
947 hang when entering <acronym>ACPI</acronym>
948 <literal>S3</literal> state (suspend to
949 <acronym>RAM</acronym>) has been corrected in the &man.acpi.4;
950 and &man.pci.4; drivers.</para>
952 <para revision="274733" arch="powerpc">The power management unit
953 subsystem has been updated to support power button events on
954 certain &arch.powerpc; hardware, such as aluminum
955 PowerBook ®.</para>
957 <para revision="275171,275190" arch="powerpc">The &man.hwpmc.4;
958 driver has been updated to correct performance counter
959 sampling on G4 (MPC74xxx) and G5 class processors.</para>
961 <para revision="281713" arch="powerpc">The &man.hwpmc.4;
962 driver has been updated to support the Freescale e500
965 <para revision="275732" contrib="sponsor"
966 sponsor="&ff;,&netgate;">The
967 <application>OpenCrypto</application> framework has been
968 updated to include <literal>AES-ICM</literal> and
969 <literal>AES-GCM</literal> modes, both of which have also been
970 added to the &man.aesni.4; driver.</para>
972 <para revision="283766">The &man.ig4.4; driver has been added,
973 providing support for the fourth generation &intel;
974 <acronym>I2C</acronym> SMBus.</para>
977 <sect2 xml:id="hardware-virtualization">
978 <title>Virtualization Support</title>
980 <para revision="260410">Support for the <quote>Virtual Interrupt
981 Delivery</quote> feature of &intel; VT-x is enabled if
982 supported by the CPU. This feature can be disabled by running
983 <literal>sysctl hw.vmm.vmx.use_apic_vid=0</literal>.
984 Additionally, to persist this setting across reboots, add
985 <literal>hw.vmm.vmx.use_apic_vid=0</literal> to
986 <filename>/etc/sysctl.conf</filename>.</para>
988 <para revision="260532">Support for <quote>Posted Interrupt
989 Processing</quote> is enabled if supported by the CPU. This
990 feature can be disabled by running <literal>sysctl
991 hw.vmm.vmx.use_apic_pir=0</literal>. Additionally, to
992 persist this setting across reboots, add
993 <literal>hw.vmm.vmx.use_apic_pir=0</literal> to
994 <filename>/etc/sysctl.conf</filename>.</para>
996 <para revision="260582">Unmapped IO support has been added to
997 &man.virtio_blk.4;.</para>
999 <para revision="260583">Unmapped IO support has been added to
1000 &man.virtio_scsi.4;.</para>
1002 <para revision="260847">The &man.virtio_random.4; driver has
1003 been added to harvest entropy from the host system.</para>
1005 <para revision="261504">&os;/&arch.i386; guests can be run under
1008 <para revision="267536" contrib="sponsor"
1009 sponsor="&citrix.rd;">Support for running a &os;/&arch.amd64;
1010 <application>Xen</application> guest instance as
1011 <acronym>PVH</acronym> guest has been added.
1012 <acronym>PVH</acronym> mode, short for <quote>Para-Virtualized
1013 Hardware</quote>, uses para-virtualized drivers for boot and
1014 I/O, and uses hardware virtualization extensions for all other
1015 tasks, without the need for emulation.</para>
1017 <para revision="273515">The &man.virtio.console.4; driver has
1018 been added, which provides an interface to VirtIO console
1019 devices through a &man.tty.4; device.</para>
1021 <para revision="279957">The &man.bhyve.8; hypervisor has been
1022 updated to support <literal>DSM TRIM</literal> commands for
1023 virtual <acronym>AHCI</acronym> disks.</para>
1025 <para revision="281439" arch="arm">Support for the
1026 <application>QEMU</application> <literal>virt</literal> system
1027 has been added.</para>
1029 <para revision="282212" contrib="sponsor" sponsor="&msostc;">The
1030 HyperV™ drivers have been updated with several
1031 enhancements:</para>
1035 <para>The &man.hv.vmbus.4; driver now has multi-channel
1040 <para>The &man.hv.storvsc.4; driver now has scatter/gather
1041 support, in addition to performance improvements.</para>
1045 <para>The &man.hv.kvp.4; driver has received several bug
1050 <para revision="282274">Support for &man.xen.4; para-virtualized
1051 <literal>domU</literal> kernels has been removed.</para>
1054 <sect2 xml:id="hardware-arm">
1055 <title>ARM Support</title>
1057 <para revision="260921">The &man.nand.4; device is enabled for
1058 ARM devices by default.</para>
1060 <para revision="273264" arch="armv6">An issue that could cause
1061 instability when detecting <acronym>SD</acronym> cards on the
1062 Raspberry Pi <acronym>SOC</acronym> has been fixed.</para>
1064 <para revision="275963">The <literal>bcm2835_cpufreq</literal>
1065 driver has been added, which supports <acronym>CPU</acronym>
1066 frequency and voltage control on the Raspberry Pi
1067 <acronym>SOC</acronym>.</para>
1069 <para revision="280259" contrib="sponsor" sponsor="&ff;">Initial
1070 support for the ARM AArch64 architecture has been
1073 <para revision="282779" arch="arm">Kernel support for Thumb-2
1074 has been added.</para>
1076 <para revision="282827">Support for the hardware power button
1077 on the BeagleBone Black system has been added.</para>
1079 <para revision="284273" contrib="sponsor"
1080 sponsor="&ff;">Initial
1081 <acronym>ACPI</acronym> support has been added for
1082 &os;/&arch.arm64;.</para>
1086 <sect1 xml:id="storage">
1087 <title>Storage</title>
1089 <para>This section covers changes and additions to file systems
1090 and other storage subsystems, both local and networked.</para>
1092 <sect2 xml:id="storage-general">
1093 <title>General Storage</title>
1095 <para revision="278037" contrib="sponsor" sponsor="&ix;">The
1096 &man.ctl.4; <acronym>LUN</acronym> mapping has been rewritten,
1097 replacing <acronym>iSCSI</acronym>-specific mapping mechanisms
1098 with a new mechanism that works for any port.</para>
1100 <para revision="278354" contrib="sponsor" sponsor="&ix;">The
1101 &man.ctld.8; utility has been updated to allow controlling
1102 non-<acronym>iSCSI</acronym> &man.ctl.4; ports.</para>
1105 <sect2 xml:id="storage-net">
1106 <title>Networked Storage</title>
1108 <para revision="270096" contrib="sponsor" sponsor="&ff;">The new
1109 filesystem automount facility, &man.autofs.5;, has been added.
1110 The new &man.autofs.5; facility is similar to that found in
1111 other &unix;-like operating systems, such as OS X™
1112 and Solaris™. The &man.autofs.5; facility uses
1113 a &sun;-compatible &man.auto.master.5; configuration file, and
1114 is administered with the &man.automount.8; userland utility,
1115 and the &man.automountd.8; and &man.autounmountd.8;
1119 <sect2 xml:id="storage-zfs">
1122 <para revision="275748">The <literal>arc_meta_limit</literal>
1123 statistics are now visible through the
1124 <literal>kstat</literal> &man.sysctl.8;. As a result of this
1125 change, the <literal>vfs.zfs.arc_meta_used</literal>
1126 &man.sysctl.8; has been removed, and replaced with the
1127 <literal>kstat.zfs.misc.arcstats.arc_meta_used</literal>
1128 &man.sysctl.8;.</para>
1131 <sect2 xml:id="storage-geom">
1132 <title>&man.geom.4;</title>
1134 <para revision="267359">Support for the
1135 <literal>disklabel64</literal> partitioning scheme has been
1136 added to &man.gpart.8;.</para>
1140 <sect1 xml:id="boot">
1141 <title>Boot Loader Changes</title>
1143 <para>This section covers the boot loader, boot menu, and other
1144 boot-related changes.</para>
1146 <sect2 xml:id="boot-loader">
1147 <title>Boot Loader Changes</title>
1149 <para revision="274085">The &man.vt.4; driver has been made the
1150 default system console driver. The &man.syscons.4; driver is
1151 still available, and can be enabled by adding
1152 <literal>kern.vty=sc</literal> in &man.loader.conf.5;.
1153 Alternatively, &man.syscons.4; can be enabled at boot time by
1154 entering <literal>set kern.vty=sc</literal> at the
1155 &man.loader.8; prompt.</para>
1157 <para revision="281616">The boot loader has been updated to
1158 support entering the <acronym>GELI</acronym> passphrase before
1159 loading the kernel. To enable this behavior, add
1160 <literal>geom_eli_passphrase_prompt="YES"</literal> to
1161 &man.loader.conf.5;.</para>
1164 <sect2 xml:id="boot-menu">
1165 <title>Boot Menu Changes</title>
1171 <sect1 xml:id="network">
1172 <title>Networking</title>
1174 <para>This section describes changes that affect networking in
1177 <sect2 xml:id="network-protocols">
1178 <title>Network Procols</title>
1180 <para revision="263140">Support for the IPX network transport
1181 protocol has been removed, and will not be supported in
1182 &os; 11 and later releases.</para>
1184 <para revision="272720" contrib="sponsor"
1185 sponsor="&limelight;">Support for <acronym>PLPMTUD</acronym>
1186 blackhole detection (<acronym>RFC</acronym> 4821) has been
1187 added to the &man.tcp.4; stack, disabled by default. New
1188 control tunables have been added:</para>
1190 <informaltable frame="none" pgwide="0">
1192 <colspec colwidth="1*"/>
1193 <colspec colwidth="1*"/>
1196 <entry>Tunable</entry>
1197 <entry>Description</entry>
1203 <entry><literal>net.inet.tcp.pmtud_blackhole_detection</literal></entry>
1204 <entry>Enables or disables <acronym>PLPMTUD</acronym>
1205 blackhole detection</entry>
1209 <entry><literal>net.inet.tcp.pmtud_blackhole_mss</literal></entry>
1210 <entry><acronym>MSS</acronym> to try for IPv4</entry>
1214 <entry><literal>net.inet.tcp.v6pmtud_blackhole_mss</literal></entry>
1215 <entry><acronym>MSS to try for IPv6</acronym></entry>
1221 <para>New monitoring &man.sysctl.8;s haven been added:</para>
1223 <informaltable frame="none" pgwide="0">
1225 <colspec colwidth="1*"/>
1226 <colspec colwidth="1*"/>
1229 <entry>Tunable</entry>
1230 <entry>Description</entry>
1236 <entry><literal>net.inet.tcp.pmtud_blackhole_activated</literal></entry>
1237 <entry>Number of times the code was activated to attempt
1238 downshifting the <acronym>MSS</acronym></entry>
1242 <entry><literal>net.inet.tcp.pmtud_blackhole_min_activated</literal></entry>
1243 <entry>Number of times the blackhole
1244 <acronym>MSS</acronym> was used in an attempt to
1249 <entry><literal>net.inet.tcp.pmtud_blackhole_failed</literal></entry>
1250 <entry>Number of times that the blackhole failed to
1251 connect after downshifting the
1252 <acronym>MSS</acronym></entry>
1258 <para revision="280971" contrib="sponsor"
1259 sponsor="&netflix;, &nginx;">Support for <acronym>IP</acronym>
1260 identification for atomic datagrams (<acronym>RFC</acronym>
1261 6864) has been added. Support for this feature can be toggled
1262 with the <literal>net.inet.ip.rfc6864</literal>
1263 &man.sysctl.8;, which is enabled by default.</para>
1267 <sect1 xml:id="ports">
1268 <title>Ports Collection and Package Infrastructure</title>
1270 <para>This section covers changes to the &os; Ports
1271 Collection, package infrastructure, and package maintenance and
1272 installation tools.</para>
1274 <sect2 xml:id="ports-infrastructure">
1275 <title>Infrastructure Changes</title>
1280 <sect2 xml:id="ports-packages ">
1281 <title>Packaging Changes</title>
1287 <sect1 xml:id="doc">
1288 <title>Documentation</title>
1290 <para>This section covers changes to the &os; Documentation
1291 Project sources and toolchain.</para>
1293 <sect2 xml:id="doc-sources">
1294 <title>Documentation Source Changes</title>
1299 <sect2 xml:id="doc-toolchain">
1300 <title>Documentation Toolchain Changes</title>
1306 <sect1 xml:id="releng">
1307 <title>Release Engineering and Integration</title>
1309 <para>This section convers changes that are specific to the
1310 &os; Release Engineering processes.</para>
1312 <sect2 xml:id="releng-changes">
1313 <title>Integration Changes</title>
1315 <para revision="277458" contrib="sponsor" sponsor="&ff;">The
1316 Release Engineering build tools have been updated to include
1317 support for producing virtual machine disk images for various
1318 cloud hosting providers.</para>
1320 <para revision="278926">The Release Engineering build tools have
1321 been updated to use multi-threaded &man.xz.1;. By default,
1322 the number of &man.xz.1; threads is set to the number of cores
1325 <para revision="281802" contrib="sponsor" sponsor="&ff;">The
1326 Release Engineering build tools have been updated to include
1327 support for building &os;/&arch.arm64; virtual machine and
1328 memory stick installation images.</para>