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>
372 <sect2 xml:id="userland-contrib">
373 <title>Contributed Software</title>
375 <para revision="258884" contrib="sponsor"
376 sponsor="&darpa_afrl;">&man.lldb.1; has been updated to
377 upstream snapshot version r196259.</para>
379 <para revision="259626">Timezone data files have been updated to
380 version 2013i.</para>
382 <para revision="260445">&man.byacc.1; has been updated to
383 version 20140101.</para>
385 <para revision="261071">&man.jemalloc.3; has been updated to
386 version 3.5.0.</para>
388 <para revision="261283"><application>libc++</application> has
389 been updated to version 3.4.</para>
391 <para revision="261320"><application>OpenSSH</application> has
392 been updated to 6.5p1.</para>
394 <para revision="261344"><application>mdocml</application> has
395 been updated to version 1.12.3.</para>
397 <para revision="261991"><application>LLVM</application> and
398 <application>Clang</application> have been updated to
401 <para revision="266527"
402 role="merged"><application>Sendmail</application> has been
403 updated from 8.14.7 to 8.14.9.</para>
405 <para revision="276577"><application>file</application> has been
406 updated to version 5.22.</para>
408 <para revision="275718">The <application>binutils</application>
409 suite of utilities has been updated to include upstream
410 patches that add new relocations for &arch.powerpc;
413 <para revision="276398" contrib="sponsor" sponsor="&ff;">The
414 <application>ELF Tool Chain</application> has been updated to
415 upstream revision r3136.</para>
417 <para revision="276551">The <application>texinfo</application>
418 utility and <literal>info</literal> pages were removed from
419 the base system. The <filename
420 role="package">print/texinfo</filename> port should be
421 installed on systems where <literal>info</literal> pages are
424 <para revision="276796" contrib="sponsor" sponsor="&ff;">The ELF
425 object manipulation tools
426 <application>addr2line</application>,
427 <application>elfcopy (strip)</application>,
428 <application>nm</application>,
429 <application>readelf</application>,
430 <application>size</application>, and
431 <application>strings</application> were switched to the
432 versions from the ELF Tool Chain project.</para>
434 <para revision="276881">The <literal>libedit</literal> library
435 has been updated to include <acronym>UTF-8</acronym> support,
436 adding <acronym>UTF-8</acronym> support to the &man.sh.1;
439 <para revision="278433">The &man.xz.1; utility has been updated
440 to support multi-threaded compression.</para>
442 <para revision="280297"><application>OpenSSL</application> has
443 been updated to version 1.0.1m.</para>
445 <para revision="280932" contrib="sponsor" sponsor="&ff;">The
446 <application>elftoolchain</application> utilities have been
447 updated to version 3179.</para>
449 <para revision="281316">The &man.xz.1; utility has been updated
450 to version 5.2.1.</para>
452 <para revision="281373">The &man.nvi.1; utility has been updated
453 to version 2.1.3.</para>
455 <para revision="281396">The &man.acpi.4; subsystem has been
456 updated to version 20150410.</para>
458 <para revision="281806">The &man.wpa.supplicant.8; and
459 &man.hostapd.8; utilities have been updated to version
462 <para revision="282089">The &man.unbound.8; utility has been
463 updated to version 1.5.3.</para>
465 <para revision="282434" contrib="sponsor" sponsor="&ff;">The
466 &man.resolvconf.8; utility has been updated to version
469 <para revision="284254"><application>bmake</application> has
470 been updated to version 20150606.</para>
473 <sect2 xml:id="userland-installer">
474 <title>Installation and Configuration Tools</title>
476 <para revision="271539">The &man.bsdinstall.8; partition editor
477 and &man.sade.8; utility have been updated to include native
478 <acronym>ZFS</acronym> support.</para>
480 <para revision="272274">The &os; installation utility,
481 &man.bsdinstall.8;, has been updated to set the
482 <literal>canmount</literal> &man.zfs.8; property to
483 <literal>off</literal> for the <filename
484 class="directory">/var</filename> dataset, preventing the
485 contents of directories within <filename
486 class="directory">/var</filename> from conflicting when
487 using multiple boot environments, such as that provided by
488 <filename role="package">sysutils/beadm</filename>.</para>
490 <para revision="274394">The &man.bsdconfig.8; utility has been
491 updated to skip the initial &man.tzsetup.8;
492 <acronym>UTC</acronym> versus wall-clock time prompt when run
493 in a virtual machine, determined when the
494 <literal>kern.vm_guest</literal> &man.sysctl.8; is set to
495 <literal>1</literal>.</para>
497 <para revision="275874">The &man.bsdinstall.8; utility has been
498 updated to use the new &man.dpv.3; library to display progress
499 when extracting the &os; distributions.</para>
502 <sect2 xml:id="userland-rc">
503 <title><filename class="directory">/etc/rc.d</filename>
506 <para revision="270676">The &man.rc.8; subsystem has been
507 updated to allow configuring services in <filename
508 class="directory">${LOCALBASE}/etc/rc.conf.d/</filename>.
509 If <literal>LOCALBASE</literal> is unset, it defaults to
510 <filename class="directory">/usr/local</filename>.</para>
512 <para revision="275299">The <filename>mrouted</filename>
513 &man.rc.8; script has been removed from the base system. An
514 equivalent script is available from the <filename
515 role="package">net/mrouted</filename> port.</para>
517 <para revision="279463" contrib="sponsor"
518 sponsor="&sandvine;">A new &man.rc.8; script,
519 <filename>iovctl</filename>, has been added, which allows
520 automatically starting the &man.iovctl.8; utility at
524 <sect2 xml:id="userland-periodic">
525 <title><filename class="directory">/etc/periodic</filename>
528 <para revision="271321">The daily &man.periodic.8; script
529 <filename>110.clean-tmps</filename> has been updated to avoid
530 crossing filesystem mount boundaries when cleaning files in
531 <filename class="directory">/tmp</filename>.</para>
534 <sect2 xml:id="userland-libraries">
535 <title>Runtime Libraries and API</title>
537 <para revision="265995">The Blowfish &man.crypt.3; default
538 format has been changed to
539 <literal>$2b$</literal>.</para>
541 <para revision="268461">The &man.readline.3; library is now
542 statically linked in software within the base system, and the
543 shared library is no longer installed, allowing the Ports
544 Collection to use a modern version of the library.</para>
546 <para revision="272273">The &man.strptime.3; library has been
547 updated to add support for <acronym>POSIX</acronym>-2001
548 features <literal>%U</literal> and
549 <literal>%W</literal>.</para>
551 <para revision="272842,272848" contrib="sponsor"
552 sponsor="&ff;">The &man.dl.iterate.phdr.3; library has been
553 changed to always return the path name of the
554 <acronym>ELF</acronym> object in the
555 <literal>dlpi_name</literal> structure member.</para>
557 <para revision="273562" contrib="sponsor"
558 sponsor="&juniper;">The &man.libxo.3; library has been
559 imported to the base system.</para>
561 <para revision="273806" contrib="sponsor" sponsor="&chelsio;">A
562 userland library for Chelsio Terminator 5 based iWARP cards
563 has been added, allowing userland <acronym>RDMA</acronym>
564 applications to work over compatible
565 <acronym>NIC</acronym>s.</para>
567 <para revision="274987">The &man.gpio.3; library has been added,
568 providing a wrapper around the &man.gpio.4; kernel
571 <para revision="277610">The <literal>futimens()</literal> and
572 <literal>utimensat()</literal> system calls have been
573 added. See &man.utimensat.2; for more information.</para>
575 <para revision="278934">The &man.elf.3; compile-time dependency
576 has been removed from <filename>dtri.o</filename>, which
577 allows adding <application>DTrace</application> probes to
578 userland applications and libraries without also linking
579 against &man.elf.3;.</para>
581 <para revision="279186">The &man.setmode.3; function has been
582 updated to consistently set <literal>errno</literal> on
585 <para revision="279663">The &man.qsort.3; functions have been
586 updated to be able to handle 32-bit aligned data on 64-bit
587 platforms, also providing a significant improvement in 32-bit
590 <para revision="281130">Several standard include headers have
591 been updated to use of <application>gcc</application>
592 attributes, such as <literal>__result_use_check()</literal>,
593 <literal>__alloc_size()</literal>, and
594 <literal>__nonnull()</literal>.</para>
596 <para revision="281845">Support for file verification in
597 <acronym>MAC</acronym> has been added.</para>
599 <para revision="282973" contrib="sponsor" sponsor="&ff;">The
600 <literal>libgomp</literal> library is now only built when
601 building <acronym>GCC</acronym> from the base system. An
602 up-to-date version is available in the Ports Collection as
604 role="package">devel/libiomp5-devel</filename>.</para>
606 <para revision="282988">The <filename>stdlib.h</filename> and
607 <filename>malloc.h</filename> headers have been updated to
608 make use of the <application>gcc</application>
609 <literal>alloc_align()</literal> attribute.</para>
611 <para revision="284483" contrib="sponsor"
612 sponsor="&scaleengine;">The Blowfish &man.crypt.3; library
613 has been updated to support $2y$ hashes.</para>
616 <sect2 xml:id="userland-abi">
617 <title>ABI Compatibility</title>
619 <para revision="271982">The &linux; compatibility version has
620 been updated to <literal>2.6.18</literal>. The
621 <literal>compat.linux.osrelease</literal> &man.sysctl.8; is
622 evaluated when building the <filename
623 role="package">emulators/linux-c6</filename> and related
628 <sect1 xml:id="kernel">
629 <title>Kernel</title>
631 <para>This section covers changes to kernel configurations, system
632 tuning, and system control parameters that are not otherwise
635 <sect2 xml:id="kernel-bugfix">
636 <title>Kernel Bug Fixes</title>
638 <para revision="265876">A kernel bug that inhibited proper
639 functionality of the <literal>dev.cpu.0.freq</literal>
640 &man.sysctl.8; on &intel; processors with Turbo
641 Boost ™ enabled has been fixed.</para>
643 <para revision="271697" arch="powerpc">Support for
644 &man.dtrace.1; stack tracing has been fixed for
645 &os;/&arch.powerpc;, using the <literal>trapexit()</literal>
646 and <literal>asttrapexit()</literal> functions instead of
647 checking within addressed kernel space.</para>
649 <para revision="272089">A bug in &man.ipfw.4; that could
650 potentially lead to a kernel panic when using &man.dummynet.4;
651 at layer 2 has been fixed.</para>
653 <para revision="280930" contrib="sponsor" sponsor="&mitail;">The
654 kernel <acronym>RPC</acronym> has been updated to include
655 several enhancements:</para>
659 <para>The 45 MiB limit on requests queued for
660 &man.nfsd.8; threads has been removed.</para>
664 <para>Avoids unnecessary throttling by not deferring
665 accounting for completed requests.</para>
669 <para>Fixes an integer overflow and signedness bugs.</para>
673 <para revision="281261" arch="powerpc">Support for
674 &man.dtrace.1; has been added for the
675 Book-E ™.</para>
678 <sect2 xml:id="kernel-config">
679 <title>Kernel Configuration</title>
681 <para revision="266531">The <literal>IMAGACT_BINMISC</literal>
682 kernel configuration option has been enabled by default,
683 which enables application execution through emulators, such
684 as <application>Qemu</application>.</para>
686 <para revision="268045">The <literal>VT</literal> kernel
687 configuration file has been removed, and the &man.vt.4;
688 driver is included in the <literal>GENERIC</literal> kernel.
689 To enable &man.vt.4;, enter <literal>set kern.vty=vt</literal>
690 at the &man.loader.8; prompt during boot, or add
691 <literal>kern.vty=vt</literal> to &man.loader.conf.5; and
692 reboot the system.</para>
694 <para revision="277904">The &man.config.8; utility has been
695 updated to allow using a non-standard <filename
696 class="directory">src/</filename> tree, specified as an
697 argument to the <literal>-s</literal> flag.</para>
699 <para revision="277990" arch="powerpc64">The
700 &os;/&arch.powerpc64; kernel now builds as
701 a position-independent executable, allowing the kernel to be
702 loaded into and run from any physical or virtual
706 <para>This change requires an update to &man.loader.8;.
707 The userland and kernel must be updated before rebooting the
711 <para revision="279189" contrib="sponsor" sponsor="&ff;"
712 arch="powerpc">Kernel support for Vector-Scalar eXtension
713 (<acronym>VSX</acronym>) found on POWER7 and POWER8 hardware
714 has been added.</para>
716 <para revision="279252" contrib="sponsor" sponsor="&ff;"
717 arch="powerpc">The &man.pmap.9; implementation for 64-bit
718 &powerpc; processors has been overhaulded to improve
721 <para revision="283959" contrib="sponsor"
722 sponsor="&limelight;">A new kernel configuration option,
723 <literal>EM_MULTIQUEUE</literal>, has been added which enables
724 multi-queue support in the &man.em.4; driver.</para>
727 <para>Multi-queue support in the &man.em.4; driver is not
728 officially supported by &intel;.</para>
732 <sect2 xml:id="kernel-sysctl">
733 <title>System Tuning and Controls</title>
735 <para revision="275140" contrib="sponsor" sponsor="&ff;">The
736 &man.hwpmc.4; default and maximum callchain depths have been
737 increased. The default has been increased from 16 to 32, and
738 the maximum increased from 32 to 128.</para>
740 <para revision="279361">The <literal>kern.osrelease</literal>
741 and <literal>kern.osreldate</literal> are now configurable
742 &man.jail.8; parameters.</para>
744 <para revision="280308,280949" contrib="sponsor"
745 sponsor="&ix;, &ff;">The &man.devfs.5; device filesystem has
746 been changed to update timestamps for read/write operations
747 using seconds precision. A new &man.sysctl.8;,
748 <literal>vfs.devfs.dotimes</literal> has been added, which
749 when set to a non-zero value, enables default precision
750 timestamps for these operations.</para>
752 <para revision="282213" contrib="sponsor" sponsor="&ff;">A new
753 &man.sysctl.8;, <literal>kern.racct.enable</literal>, has been
754 added, which when set to a non-zero value allows using
755 &man.rctl.8; with the <literal>GENERIC</literal> kernel.
756 A new kernel configuration option,
757 <literal>RACCT_DISABLED</literal> has also been added.</para>
759 <para revision="282901" contrib="sponsor" sponsor="&ff;">The
760 <literal>GENERIC</literal> kernel configuration now includes
761 <literal>RACCT</literal> and <literal>RCTL</literal> by
765 <para>To enable <literal>RACCT</literal> and
766 <literal>RCTL</literal> on a system using the
767 <literal>GENERIC</literal> kernel configuration, add
768 <literal>kern.racct.enable=1</literal> to
769 &man.loader.conf.5;, and reboot the system.</para>
772 <para revision="283136" contrib="sponsor"
773 sponsor="&limelight;">A new &man.sysctl.8;,
774 <literal>net.inet.tcp.hostcache.purgenow</literal>, has
775 been added, which when set to <literal>1</literal> during
776 runtime will flush all
777 <literal>net.inet.tcp.hostcache</literal> entries.</para>
781 <sect1 xml:id="drivers">
782 <title>Devices and Drivers</title>
784 <para>This section covers changes and additions to devices and
785 device drivers since &release.prev;.</para>
787 <sect2 xml:id="drivers-device">
788 <title>Device Drivers</title>
790 <para revision="260903">Support for GPS ports has been added to
793 <para revision="265132">The &man.full.4; device has been added,
794 and the <literal>lindev(4)</literal> device has been removed.
795 Prior to this change, <literal>lindev(4)</literal> provided
796 only the <filename>/dev/full</filename> character device,
797 returning <literal>ENOSPC</literal> on write attempts. As
798 this device is not specific to &linux;, a native &os; version
799 has been added.</para>
801 <para revision="271705">Hardware context support has been
802 added to the <literal>drm/i915</literal> driver, adding
803 support for <application>Mesa</application> 9.2 and
806 <para revision="273178">The &man.vt.4; driver has been updated,
807 replacing the bitmapped <literal>kern.vt.spclkeys</literal>
808 &man.sysctl.8; with individual
809 <literal>kern.vt.kbd_*</literal> variants.</para>
811 <para revision="273598">The &man.hpet.4; driver has been updated
813 <filename>/dev/hpet<replaceable>N</replaceable></filename>
814 device, providing access to <acronym>HPET</acronym> from
817 <para revision="280183">The <literal>drm</literal> code has
818 been updated to match &linux; version 3.8.13.</para>
820 <para revision="282783" arch="powerpc">Support for the Freescale
821 <acronym>PCI</acronym> Root Complex device has been
825 <sect2 xml:id="drivers-storage">
826 <title>Storage Drivers</title>
828 <para revision="265236" contrib="sponsor"
829 sponsor="&lsi;, &spectralogic;" sponsorurl="">The &man.mpr.4;
830 device has been added, providing support for LSI Fusion-MPT
831 3 12Gb SCSI/SATA controllers.</para>
833 <para revision="265555" contrib="sponsor"
834 sponsor="&lsi;">The &man.mrsas.4; driver has been added,
835 providing support for LSI MegaRAID SAS controllers. The
836 &man.mfi.4; driver will attach to the controller, by default.
837 To enable &man.mrsas.4; add
838 <literal>hw.mfi.mrsas_enable=1</literal> to
839 <filename>/boot/loader.conf</filename>, which turns off
840 &man.mfi.4; device probing.</para>
843 <para>At this time, the &man.mfiutil.8; utility and the &os;
844 version of <application>MegaCLI</application> and
845 <application>StorCli</application> do not work with
846 &man.mrsas.4;.</para>
849 <para revision="275461" contrib="sponsor" sponsor="&ix;">The
850 &man.ctl.4; subsystem has been updated, increasing the ports
851 limit from <literal>128</literal> to <literal>256</literal>,
852 and <acronym>LUN</acronym> limit from <literal>256</literal>
853 to <literal>1024</literal>.</para>
855 <para revision="276526">The <literal>asr(4)</literal> driver has
856 been removed, and is no longer supported.</para>
858 <para revision="281387">The &man.hptnr.4; driver has been
859 updated to version 1.1.1.</para>
862 <sect2 xml:id="drivers-network">
863 <title>Network Drivers</title>
865 <para revision="258830">Support for Broadcom chipsets BCM57764,
866 BCM57767, BCM57782, BCM57786 and BCM57787 has been added to
869 <para revision="260448">Support for the &intel; Centrino™
870 Wireless-N 135 chipset has been added.</para>
872 <para revision="260552">Firmware for &intel; Centrino™
873 Wireless-N 105 devices has been added to the base
876 <para revision="261975">The deprecated nve(4) driver has been
877 removed. Users of NVIDIA nForce MCP network adapters are
878 advised to use the &man.nfe.4; driver instead, which has been
879 the default driver for this hardware since
880 &os; 7.0.</para>
882 <para revision="264601" contrib="sponsor"
883 sponsor="&darpa_afrl;">The <literal>if_nf10bmac(4)</literal>
884 device has been added, providing support for NetFPGA-10G
885 Embedded CPU Ethernet Core.</para>
888 <para>The <literal>if_nf10bmac(4)</literal> driver operates on
889 the FPGA, and is not suited for the PCI host
893 <para revision="265348" contrib="sponsor"
894 sponsor="&netgate;">The &man.ath.hal.4; driver has been
895 updated to support the Atheros AR1111 chipset.</para>
897 <para revision="266770">Support for the &intel; Centrino™
898 Wireless-N 105 chipset has been added.</para>
900 <para revision="266757" contrib="sponsor"
901 sponsor="&chelsio;">Support for the &man.cxgbe.4; Terminator
902 5 (T5) 10G/40G cards has been added to &man.netmap.4;.</para>
904 <para revision="272730">The &man.alc.4; driver has been updated
905 to support AR816x and AR817x ethernet controllers.</para>
907 <para revision="273331">The &man.vxlan.4; driver has been added,
908 which creates a virtual Layer 2 (Ethernet) network overlaid in
909 a Layer 3 (IP/UDP) network. The &man.vxlan.4; driver is
910 analogous to &man.vlan.4;, but is designed to be better suited
911 for large, multiple-tenant datacenter environments.</para>
913 <para revision="274246" contrib="sponsor" sponsor="&yandex;">The
914 &man.gre.4; driver has been significantly overhauled, and has
915 been split into two separate modules, &man.gre.4; and
918 <para revision="283766" contrib="sponsor"
919 sponsor="&limelight;">The &man.em.4; driver has been updated
920 with improved transmission queue hang detection.</para>
924 <sect1 xml:id="hardware">
925 <title>Hardware Support</title>
927 <para>This section covers general hardware support for physical
928 machines, hypervisors, and virtualization environments, as well
929 as hardware changes and updates that do not otherwise fit in
930 other sections of this document.</para>
932 <sect2 xml:id="hardware-support">
933 <title>Hardware Support</title>
935 <para revision="268303">The &man.asmc.4; driver has been
936 updated to support the &apple; MacMini 3,1.</para>
938 <para revision="268351">Support for &os;/ia64 has been dropped
939 as of &os; 11.</para>
941 <para revision="274386">An issue that could cause a system to
942 hang when entering <acronym>ACPI</acronym>
943 <literal>S3</literal> state (suspend to
944 <acronym>RAM</acronym>) has been corrected in the &man.acpi.4;
945 and &man.pci.4; drivers.</para>
947 <para revision="274733" arch="powerpc">The power management unit
948 subsystem has been updated to support power button events on
949 certain &arch.powerpc; hardware, such as aluminum
950 PowerBook ®.</para>
952 <para revision="275171,275190" arch="powerpc">The &man.hwpmc.4;
953 driver has been updated to correct performance counter
954 sampling on G4 (MPC74xxx) and G5 class processors.</para>
956 <para revision="281713" arch="powerpc">The &man.hwpmc.4;
957 driver has been updated to support the Freescale e500
960 <para revision="275732" contrib="sponsor"
961 sponsor="&ff;,&netgate;">The
962 <application>OpenCrypto</application> framework has been
963 updated to include <literal>AES-ICM</literal> and
964 <literal>AES-GCM</literal> modes, both of which have also been
965 added to the &man.aesni.4; driver.</para>
967 <para revision="283766">The &man.ig4.4; driver has been added,
968 providing support for the fourth generation &intel;
969 <acronym>I2C</acronym> SMBus.</para>
972 <sect2 xml:id="hardware-virtualization">
973 <title>Virtualization Support</title>
975 <para revision="260410">Support for the <quote>Virtual Interrupt
976 Delivery</quote> feature of &intel; VT-x is enabled if
977 supported by the CPU. This feature can be disabled by running
978 <literal>sysctl hw.vmm.vmx.use_apic_vid=0</literal>.
979 Additionally, to persist this setting across reboots, add
980 <literal>hw.vmm.vmx.use_apic_vid=0</literal> to
981 <filename>/etc/sysctl.conf</filename>.</para>
983 <para revision="260532">Support for <quote>Posted Interrupt
984 Processing</quote> is enabled if supported by the CPU. This
985 feature can be disabled by running <literal>sysctl
986 hw.vmm.vmx.use_apic_pir=0</literal>. Additionally, to
987 persist this setting across reboots, add
988 <literal>hw.vmm.vmx.use_apic_pir=0</literal> to
989 <filename>/etc/sysctl.conf</filename>.</para>
991 <para revision="260582">Unmapped IO support has been added to
992 &man.virtio_blk.4;.</para>
994 <para revision="260583">Unmapped IO support has been added to
995 &man.virtio_scsi.4;.</para>
997 <para revision="260847">The &man.virtio_random.4; driver has
998 been added to harvest entropy from the host system.</para>
1000 <para revision="261504">&os;/&arch.i386; guests can be run under
1003 <para revision="267536" contrib="sponsor"
1004 sponsor="&citrix.rd;">Support for running a &os;/&arch.amd64;
1005 <application>Xen</application> guest instance as
1006 <acronym>PVH</acronym> guest has been added.
1007 <acronym>PVH</acronym> mode, short for <quote>Para-Virtualized
1008 Hardware</quote>, uses para-virtualized drivers for boot and
1009 I/O, and uses hardware virtualization extensions for all other
1010 tasks, without the need for emulation.</para>
1012 <para revision="273515">The &man.virtio.console.4; driver has
1013 been added, which provides an interface to VirtIO console
1014 devices through a &man.tty.4; device.</para>
1016 <para revision="279957">The &man.bhyve.8; hypervisor has been
1017 updated to support <literal>DSM TRIM</literal> commands for
1018 virtual <acronym>AHCI</acronym> disks.</para>
1020 <para revision="281439" arch="arm">Support for the
1021 <application>QEMU</application> <literal>virt</literal> system
1022 has been added.</para>
1024 <para revision="282212" contrib="sponsor" sponsor="&msostc;">The
1025 HyperV™ drivers have been updated with several
1026 enhancements:</para>
1030 <para>The &man.hv.vmbus.4; driver now has multi-channel
1035 <para>The &man.hv.storvsc.4; driver now has scatter/gather
1036 support, in addition to performance improvements.</para>
1040 <para>The &man.hv.kvp.4; driver has received several bug
1045 <para revision="282274">Support for &man.xen.4; para-virtualized
1046 <literal>domU</literal> kernels has been removed.</para>
1049 <sect2 xml:id="hardware-arm">
1050 <title>ARM Support</title>
1052 <para revision="260921">The &man.nand.4; device is enabled for
1053 ARM devices by default.</para>
1055 <para revision="273264" arch="armv6">An issue that could cause
1056 instability when detecting <acronym>SD</acronym> cards on the
1057 Raspberry Pi <acronym>SOC</acronym> has been fixed.</para>
1059 <para revision="275963">The <literal>bcm2835_cpufreq</literal>
1060 driver has been added, which supports <acronym>CPU</acronym>
1061 frequency and voltage control on the Raspberry Pi
1062 <acronym>SOC</acronym>.</para>
1064 <para revision="280259" contrib="sponsor" sponsor="&ff;">Initial
1065 support for the ARM AArch64 architecture has been
1068 <para revision="282779" arch="arm">Kernel support for Thumb-2
1069 has been added.</para>
1071 <para revision="282827">Support for the hardware power button
1072 on the BeagleBone Black system has been added.</para>
1074 <para revision="284273" contrib="sponsor"
1075 sponsor="&ff;">Initial
1076 <acronym>ACPI</acronym> support has been added for
1077 &os;/&arch.arm64;.</para>
1081 <sect1 xml:id="storage">
1082 <title>Storage</title>
1084 <para>This section covers changes and additions to file systems
1085 and other storage subsystems, both local and networked.</para>
1087 <sect2 xml:id="storage-general">
1088 <title>General Storage</title>
1090 <para revision="278037" contrib="sponsor" sponsor="&ix;">The
1091 &man.ctl.4; <acronym>LUN</acronym> mapping has been rewritten,
1092 replacing <acronym>iSCSI</acronym>-specific mapping mechanisms
1093 with a new mechanism that works for any port.</para>
1095 <para revision="278354" contrib="sponsor" sponsor="&ix;">The
1096 &man.ctld.8; utility has been updated to allow controlling
1097 non-<acronym>iSCSI</acronym> &man.ctl.4; ports.</para>
1100 <sect2 xml:id="storage-net">
1101 <title>Networked Storage</title>
1103 <para revision="270096" contrib="sponsor" sponsor="&ff;">The new
1104 filesystem automount facility, &man.autofs.5;, has been added.
1105 The new &man.autofs.5; facility is similar to that found in
1106 other &unix;-like operating systems, such as OS X™
1107 and Solaris™. The &man.autofs.5; facility uses
1108 a &sun;-compatible &man.auto.master.5; configuration file, and
1109 is administered with the &man.automount.8; userland utility,
1110 and the &man.automountd.8; and &man.autounmountd.8;
1114 <sect2 xml:id="storage-zfs">
1117 <para revision="275748">The <literal>arc_meta_limit</literal>
1118 statistics are now visible through the
1119 <literal>kstat</literal> &man.sysctl.8;. As a result of this
1120 change, the <literal>vfs.zfs.arc_meta_used</literal>
1121 &man.sysctl.8; has been removed, and replaced with the
1122 <literal>kstat.zfs.misc.arcstats.arc_meta_used</literal>
1123 &man.sysctl.8;.</para>
1126 <sect2 xml:id="storage-geom">
1127 <title>&man.geom.4;</title>
1129 <para revision="267359">Support for the
1130 <literal>disklabel64</literal> partitioning scheme has been
1131 added to &man.gpart.8;.</para>
1135 <sect1 xml:id="boot">
1136 <title>Boot Loader Changes</title>
1138 <para>This section covers the boot loader, boot menu, and other
1139 boot-related changes.</para>
1141 <sect2 xml:id="boot-loader">
1142 <title>Boot Loader Changes</title>
1144 <para revision="274085">The &man.vt.4; driver has been made the
1145 default system console driver. The &man.syscons.4; driver is
1146 still available, and can be enabled by adding
1147 <literal>kern.vty=sc</literal> in &man.loader.conf.5;.
1148 Alternatively, &man.syscons.4; can be enabled at boot time by
1149 entering <literal>set kern.vty=sc</literal> at the
1150 &man.loader.8; prompt.</para>
1152 <para revision="281616">The boot loader has been updated to
1153 support entering the <acronym>GELI</acronym> passphrase before
1154 loading the kernel. To enable this behavior, add
1155 <literal>geom_eli_passphrase_prompt="YES"</literal> to
1156 &man.loader.conf.5;.</para>
1159 <sect2 xml:id="boot-menu">
1160 <title>Boot Menu Changes</title>
1166 <sect1 xml:id="network">
1167 <title>Networking</title>
1169 <para>This section describes changes that affect networking in
1172 <sect2 xml:id="network-protocols">
1173 <title>Network Procols</title>
1175 <para revision="263140">Support for the IPX network transport
1176 protocol has been removed, and will not be supported in
1177 &os; 11 and later releases.</para>
1179 <para revision="272720" contrib="sponsor"
1180 sponsor="&limelight;">Support for <acronym>PLPMTUD</acronym>
1181 blackhole detection (<acronym>RFC</acronym> 4821) has been
1182 added to the &man.tcp.4; stack, disabled by default. New
1183 control tunables have been added:</para>
1185 <informaltable frame="none" pgwide="0">
1187 <colspec colwidth="1*"/>
1188 <colspec colwidth="1*"/>
1191 <entry>Tunable</entry>
1192 <entry>Description</entry>
1198 <entry><literal>net.inet.tcp.pmtud_blackhole_detection</literal></entry>
1199 <entry>Enables or disables <acronym>PLPMTUD</acronym>
1200 blackhole detection</entry>
1204 <entry><literal>net.inet.tcp.pmtud_blackhole_mss</literal></entry>
1205 <entry><acronym>MSS</acronym> to try for IPv4</entry>
1209 <entry><literal>net.inet.tcp.v6pmtud_blackhole_mss</literal></entry>
1210 <entry><acronym>MSS to try for IPv6</acronym></entry>
1216 <para>New monitoring &man.sysctl.8;s haven been added:</para>
1218 <informaltable frame="none" pgwide="0">
1220 <colspec colwidth="1*"/>
1221 <colspec colwidth="1*"/>
1224 <entry>Tunable</entry>
1225 <entry>Description</entry>
1231 <entry><literal>net.inet.tcp.pmtud_blackhole_activated</literal></entry>
1232 <entry>Number of times the code was activated to attempt
1233 downshifting the <acronym>MSS</acronym></entry>
1237 <entry><literal>net.inet.tcp.pmtud_blackhole_min_activated</literal></entry>
1238 <entry>Number of times the blackhole
1239 <acronym>MSS</acronym> was used in an attempt to
1244 <entry><literal>net.inet.tcp.pmtud_blackhole_failed</literal></entry>
1245 <entry>Number of times that the blackhole failed to
1246 connect after downshifting the
1247 <acronym>MSS</acronym></entry>
1253 <para revision="280971" contrib="sponsor"
1254 sponsor="&netflix;, &nginx;">Support for <acronym>IP</acronym>
1255 identification for atomic datagrams (<acronym>RFC</acronym>
1256 6864) has been added. Support for this feature can be toggled
1257 with the <literal>net.inet.ip.rfc6864</literal>
1258 &man.sysctl.8;, which is enabled by default.</para>
1262 <sect1 xml:id="ports">
1263 <title>Ports Collection and Package Infrastructure</title>
1265 <para>This section covers changes to the &os; Ports
1266 Collection, package infrastructure, and package maintenance and
1267 installation tools.</para>
1269 <sect2 xml:id="ports-infrastructure">
1270 <title>Infrastructure Changes</title>
1275 <sect2 xml:id="ports-packages ">
1276 <title>Packaging Changes</title>
1282 <sect1 xml:id="doc">
1283 <title>Documentation</title>
1285 <para>This section covers changes to the &os; Documentation
1286 Project sources and toolchain.</para>
1288 <sect2 xml:id="doc-sources">
1289 <title>Documentation Source Changes</title>
1294 <sect2 xml:id="doc-toolchain">
1295 <title>Documentation Toolchain Changes</title>
1301 <sect1 xml:id="releng">
1302 <title>Release Engineering and Integration</title>
1304 <para>This section convers changes that are specific to the
1305 &os; Release Engineering processes.</para>
1307 <sect2 xml:id="releng-changes">
1308 <title>Integration Changes</title>
1310 <para revision="277458" contrib="sponsor" sponsor="&ff;">The
1311 Release Engineering build tools have been updated to include
1312 support for producing virtual machine disk images for various
1313 cloud hosting providers.</para>
1315 <para revision="278926">The Release Engineering build tools have
1316 been updated to use multi-threaded &man.xz.1;. By default,
1317 the number of &man.xz.1; threads is set to the number of cores
1320 <para revision="281802" contrib="sponsor" sponsor="&ff;">The
1321 Release Engineering build tools have been updated to include
1322 support for building &os;/&arch.arm64; virtual machine and
1323 memory stick installation images.</para>