Document r282827, BeagleBone Black power button support added.
[freebsd.git] / release / doc / en_US.ISO8859-1 / relnotes / article.xml
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">
5  %release;
6 <!ENTITY % sponsor PUBLIC "-//FreeBSD//ENTITIES Sponsor Specification//EN" "sponsor.ent">
7  %sponsor;
8 <!ENTITY % vendor PUBLIC "-//FreeBSD//ENTITIES Vendor Specification//EN" "vendor.ent">
9  %vendor;
10 <!ENTITY security SYSTEM "../../share/xml/security.xml">
11 <!ENTITY errata SYSTEM "../../share/xml/errata.xml">
12 ]>
13 <article xmlns="http://docbook.org/ns/docbook"
14   xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0">
15
16   <info>
17     <title>&os; &release.current; Release Notes</title>
18
19     <author>
20       <orgname>The &os; Project</orgname>
21     </author>
22
23     <pubdate>$FreeBSD$</pubdate>
24
25     <!-- Last rev: 282482 -->
26
27     <copyright>
28       <year>2015</year>
29       <holder role="mailto:doc@FreeBSD.org">The &os; Documentation
30         Project</holder>
31     </copyright>
32
33     <legalnotice xml:id="trademarks" role="trademarks">
34       &tm-attrib.freebsd;
35       &tm-attrib.ibm;
36       &tm-attrib.ieee;
37       &tm-attrib.intel;
38       &tm-attrib.sparc;
39       &tm-attrib.general;
40     </legalnotice>
41
42     <abstract>
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
49         presented.</para>
50     </abstract>
51   </info>
52
53   <sect1 xml:id="intro">
54     <title>Introduction</title>
55
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>
60
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
66       found at <uri
67         xlink:href="&release.url;">&release.url;</uri>.</para>
68
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
74       found at <uri
75         xlink:href="&release.url;">&release.url;</uri>.</para>
76
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
82       <link
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>
87
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>
95
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>
100
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
109       improvements.</para>
110   </sect1>
111
112   <sect1 xml:id="upgrade">
113     <title>Upgrading from Previous Releases of &os;</title>
114
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>
122
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>
127
128     <important>
129       <para>Upgrading &os; should only be attempted after backing up
130         <emphasis>all</emphasis> data and configuration files.</para>
131     </important>
132   </sect1>
133
134   <sect1 xml:id="security-errata">
135     <title>Security and Errata</title>
136
137     <para>This section lists the various Security Advisories and
138       Errata Notices since &release.prev;.</para>
139
140     <sect2 xml:id="security">
141       <title>Security Advisories</title>
142
143       &security;
144     </sect2>
145
146     <sect2 xml:id="errata">
147       <title>Errata Notices</title>
148
149       &errata;
150     </sect2>
151   </sect1>
152
153   <sect1 xml:id="userland">
154     <title>Userland</title>
155
156     <para>This section covers changes and additions to userland
157       applications, contributed software, and system utilities.</para>
158
159     <sect2 xml:id="userland-config">
160       <title>Userland Configuration Changes</title>
161
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>
167
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>
172         if unset.</para>
173
174       <para revision="272350">The <literal>MK_ARM_EABI</literal>
175         &man.src.conf.5; option has been removed.</para>
176     </sect2>
177
178     <sect2 xml:id="userland-programs">
179       <title>Userland Application Changes</title>
180
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>
185         sandbox.</para>
186
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>
191
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
197         device.</para>
198
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>
204
205       <para revision="260926">Support for displaying VPD for PCI
206         devices via &man.pciconf.8; has been added.</para>
207
208       <para revision="261498">&man.ping.8; protects against malicious
209         network packets using the Capsicum framework to drop
210         privileges.</para>
211
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
217         host system.</para>
218
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>
222
223       <para revision="265995">The Blowfish &man.crypt.3; default
224         format has been changed to
225         <literal>&dollar;2b&dollar;</literal>.</para>
226
227       <para revision="266209">The &man.pmcstat.8; utility has been
228         updated to include a new flag, <literal>-l</literal>, which
229         ends event collection after the specified number of
230         seconds.</para>
231
232       <para revision="270745">The &man.ps.1; utility has been updated
233         to include a new keyword, <quote>tracer</quote>, which
234         displays the <acronym>PID</acronym> of the tracing
235         process.</para>
236
237       <para revision="271482">Support for adding empty partitions has
238         been added to the &man.mkimg.1; utility.</para>
239
240       <para revision="272166">The &man.primes.6; utility has been
241         updated to correctly enumerate prime numbers between
242         <literal>4295098369</literal> and
243         <literal>3825123056546413050</literal>, which prior to this
244         change, it would be possible for returned values to be
245         incorrectly identified as prime numbers.</para>
246
247       <para revision="272198">The &man.mkimg.1; utility has been
248         updated to include three options used to print information
249         about &man.mkimg.1; itself:</para>
250
251       <informaltable frame="none" pgwide="0">
252         <tgroup cols="2">
253           <colspec colwidth="1*"/>
254           <colspec colwidth="1*"/>
255           <thead>
256             <row>
257               <entry>Option</entry>
258               <entry>Output</entry>
259             </row>
260           </thead>
261
262           <tbody>
263             <row>
264               <entry><literal>--version</literal></entry>
265               <entry>The current version of the &man.mkimg.1;
266                 utility</entry>
267             </row>
268
269             <row>
270               <entry><literal>--formats</literal></entry>
271               <entry>The disk image file formats supported by
272                 &man.mkimg.1;</entry>
273             </row>
274
275             <row>
276               <entry><literal>--schemes</literal></entry>
277               <entry>The partition schemes supported by
278                 &man.mkimg.1;</entry>
279             </row>
280           </tbody>
281         </tgroup>
282       </informaltable>
283
284       <para revision="272488">Userland &man.ctf.5; support in
285         &man.dtrace.1; has been added.  With this change,
286         &man.dtrace.1; is able to resolve type info for function and
287         <acronym>USDT</acronym> probe arguments, and function return
288         values.</para>
289
290       <para revision="274960">The &man.elfdump.1; utility has been
291         updated to support capability mode provided by
292         &man.capsicum.4;.</para>
293
294       <para revision="275680" contrib="sponsor" sponsor="&ff;">The
295         &man.fstyp.8; utility has been added, which is used to
296         determine the filesystem on a specified device.</para>
297
298       <para revision="276881">The <literal>libedit</literal> library
299         has been updated to support <acronym>UTF</acronym>-8, which
300         additionally provides unicode support to &man.sh.1;.</para>
301
302       <para revision="277166" arch="powerpc">The &man.ptrace.2; system
303         call has been updated include support for Altivec registers on
304         &os;/&arch.powerpc;.</para>
305
306       <para revision="278320">A new device control utility,
307         &man.devctl.8; has been added, which allows making
308         administrative changes to individual devices, such as
309         attaching and detaching drivers, and enabling and disabling
310         devices.  The &man.devctl.8; utility uses the new
311         &man.devctl.3; library.</para>
312
313       <para revision="279315" contrib="sponsor" sponsor="&ff;">The
314         &man.uefisign.8; utility has been added.</para>
315
316       <para revision="279571" contrib="sponsor"
317         sponsor="&scaleengine;">The &man.freebsd-update.8; utility has
318         been updated to prevent fetching updated binary patches when
319         a previous upgrade has not been thoroughly completed.</para>
320
321       <para revision="279122" contrib="sponsor"
322         sponsor="&juniper;">The &man.netstat.1; utility has been
323         updated to link against the &man.libxo.3; shared
324         library.</para>
325
326       <para revision="280870">A regression in the &man.libarchive.3;
327         library that would prevent a directory from being included in
328         the archive when <literal>--one-file-system</literal> is used
329         has been fixed.</para>
330
331       <para revision="281311" contrib="sponsor" sponsor="&ff;">The
332         &man.ar.1; utility has been updated to set
333         <literal>ARCHIVE_EXTRACT_SECURE_SYMLINKS</literal> and
334         <literal>ARCHIVE_EXTRACT_SECURE_NODOTDOT</literal> to disallow
335         directory traversal when extracting an archive, similar to
336         &man.tar.1;.</para>
337
338       <para revision="282208" contrib="sponsor"
339         sponsor="&multiplay;">The &man.chflags.1;, &man.chgrp.1;,
340         &man.chmod.1;, and &man.chown.8; utilities now affect symbolic
341         links when the <literal>-R</literal> flag is specified, as
342         documented in &man.symlink.7;.</para>
343
344       <para revision="281617">A race condition in &man.wc.1; that
345         would cause final results to be sent to &man.stderr.4; when
346         receiving the <literal>SIGINFO</literal> signal has been
347         fixed.</para>
348     </sect2>
349
350     <sect2 xml:id="userland-contrib">
351       <title>Contributed Software</title>
352
353       <para revision="258884" contrib="sponsor"
354         sponsor="&darpa_afrl;">&man.lldb.1; has been updated to
355         upstream snapshot version r196259.</para>
356
357       <para revision="259626">Timezone data files have been updated to
358         version 2013i.</para>
359
360       <para revision="260445">&man.byacc.1; has been updated to
361         version 20140101.</para>
362
363       <para revision="261071">&man.jemalloc.3; has been updated to
364         version 3.5.0.</para>
365
366       <para revision="261283"><application>libc++</application> has
367         been updated to version 3.4.</para>
368
369       <para revision="261320"><application>OpenSSH</application> has
370         been updated to 6.5p1.</para>
371
372       <para revision="261344"><application>mdocml</application> has
373         been updated to version 1.12.3.</para>
374
375       <para revision="261991"><application>LLVM</application> and
376         <application>Clang</application> have been updated to
377         version 3.4.</para>
378
379       <para revision="266527"
380         role="merged"><application>Sendmail</application> has been
381         updated from 8.14.7 to 8.14.9.</para>
382
383       <para revision="276577"><application>file</application> has been
384         updated to version 5.22.</para>
385
386       <para revision="275718">The <application>binutils</application>
387         suite of utilities has been updated to include upstream
388         patches that add new relocations for &arch.powerpc;
389         support.</para>
390
391       <para revision="276398" contrib="sponsor" sponsor="&ff;">The
392         <application>ELF Tool Chain</application> has been updated to
393         upstream revision r3136.</para>
394
395       <para revision="276551">The <application>texinfo</application>
396         utility and <literal>info</literal> pages were removed from
397         the base system.  The <filename
398           role="package">print/texinfo</filename> port should be
399         installed on systems where <literal>info</literal> pages are
400         needed.</para>
401
402       <para revision="276796" contrib="sponsor" sponsor="&ff;">The ELF
403         object manipulation tools
404         <application>addr2line</application>,
405         <application>elfcopy (strip)</application>,
406         <application>nm</application>,
407         <application>readelf</application>,
408         <application>size</application>, and
409         <application>strings</application> were switched to the
410         versions from the ELF Tool Chain project.</para>
411
412       <para revision="276881">The <literal>libedit</literal> library
413         has been updated to include <acronym>UTF-8</acronym> support,
414         adding <acronym>UTF-8</acronym> support to the &man.sh.1;
415         shell.</para>
416
417       <para revision="278433">The &man.xz.1; utility has been updated
418         to support multi-threaded compression.</para>
419
420       <para revision="280297"><application>OpenSSL</application> has
421         been updated to version 1.0.1m.</para>
422
423       <para revision="280932" contrib="sponsor" sponsor="&ff;">The
424         <application>elftoolchain</application> utilities have been
425         updated to version 3179.</para>
426
427       <para revision="281316">The &man.xz.1; utility has been updated
428         to version 5.2.1.</para>
429
430       <para revision="281373">The &man.nvi.1; utility has been updated
431         to version 2.1.3.</para>
432
433       <para revision="281396">The &man.acpi.4; subsystem has been
434         updated to version 20150410.</para>
435
436       <para revision="281806">The &man.wpa.supplicant.8; and
437         &man.hostapd.8; utilities have been updated to version
438         2.4.</para>
439
440       <para revision="281812"><application>bmake</application> has
441         been updated to version 20150418.</para>
442
443       <para revision="282089">The &man.unbound.8; utility has been
444         updated to version 1.5.3.</para>
445
446       <para revision="282434" contrib="sponsor" sponsor="&ff;">The
447         &man.resolvconf.8; utility has been updated to version
448         3.7.0.</para>
449     </sect2>
450
451     <sect2 xml:id="userland-installer">
452       <title>Installation and Configuration Tools</title>
453
454       <para revision="271539">The &man.bsdinstall.8; partition editor
455         and &man.sade.8; utility have been updated to include native
456         <acronym>ZFS</acronym> support.</para>
457
458       <para revision="272274">The &os; installation utility,
459         &man.bsdinstall.8;, has been updated to set the
460         <literal>canmount</literal> &man.zfs.8; property to
461         <literal>off</literal> for the <filename
462           class="directory">/var</filename> dataset, preventing the
463         contents of directories within <filename
464           class="directory">/var</filename> from conflicting when
465         using multiple boot environments, such as that provided by
466         <filename role="package">sysutils/beadm</filename>.</para>
467
468       <para revision="274394">The &man.bsdconfig.8; utility has been
469         updated to skip the initial &man.tzsetup.8;
470         <acronym>UTC</acronym> versus wall-clock time prompt when run
471         in a virtual machine, determined when the
472         <literal>kern.vm_guest</literal> &man.sysctl.8; is set to
473         <literal>1</literal>.</para>
474
475       <para revision="275874">The &man.bsdinstall.8; utility has been
476         updated to use the new &man.dpv.3; library to display progress
477         when extracting the &os; distributions.</para>
478     </sect2>
479
480     <sect2 xml:id="userland-rc">
481       <title><filename class="directory">/etc/rc.d</filename>
482         Scripts</title>
483
484       <para revision="270676">The &man.rc.8; subsystem has been
485         updated to allow configuring services in <filename
486           class="directory">&dollar;{LOCALBASE}/etc/rc.conf.d/</filename>.
487         If <literal>LOCALBASE</literal> is unset, it defaults to
488         <filename class="directory">/usr/local</filename>.</para>
489
490       <para revision="275299">The <filename>mrouted</filename>
491         &man.rc.8; script has been removed from the base system.  An
492         equivalent script is available from the <filename
493           role="package">net/mrouted</filename> port.</para>
494
495       <para revision="279463" contrib="sponsor"
496         sponsor="&sandvine;">A new &man.rc.8; script,
497         <filename>iovctl</filename>, has been added, which allows
498         automatically starting the &man.iovctl.8; utility at
499         boot.</para>
500     </sect2>
501
502     <sect2 xml:id="userland-periodic">
503       <title><filename class="directory">/etc/periodic</filename>
504         Scripts</title>
505
506       <para revision="271321">The daily &man.periodic.8; script
507         <filename>110.clean-tmps</filename> has been updated to avoid
508         crossing filesystem mount boundaries when cleaning files in
509         <filename class="directory">/tmp</filename>.</para>
510     </sect2>
511
512     <sect2 xml:id="userland-libraries">
513       <title>Runtime Libraries and API</title>
514
515       <para revision="268461">The &man.readline.3; library is now
516         statically linked in software within the base system, and the
517         shared library is no longer installed, allowing the Ports
518         Collection to use a modern version of the library.</para>
519
520       <para revision="272273">The &man.strptime.3; library has been
521         updated to add support for <acronym>POSIX</acronym>-2001
522         features <literal>%U</literal> and
523         <literal>%W</literal>.</para>
524
525       <para revision="272842,272848" contrib="sponsor"
526         sponsor="&ff;">The &man.dl.iterate.phdr.3; library has been
527         changed to always return the path name of the
528         <acronym>ELF</acronym> object in the
529         <literal>dlpi_name</literal> structure member.</para>
530
531       <para revision="273562" contrib="sponsor"
532         sponsor="&juniper;">The &man.libxo.3; library has been
533         imported to the base system.</para>
534
535       <para revision="273806" contrib="sponsor" sponsor="&chelsio;">A
536         userland library for Chelsio Terminator 5 based iWARP cards
537         has been added, allowing userland <acronym>RDMA</acronym>
538         applications to work over compatible
539         <acronym>NIC</acronym>s.</para>
540
541       <para revision="274987">The &man.gpio.3; library has been added,
542         providing a wrapper around the &man.gpio.4; kernel
543         interface.</para>
544
545       <para revision="277610">The <literal>futimens()</literal> and
546         <literal>utimensat()</literal> system calls have been
547         added.  See &man.utimensat.2; for more information.</para>
548
549       <para revision="278934">The &man.elf.3; compile-time dependency
550         has been removed from <filename>dtri.o</filename>, which
551         allows adding <application>DTrace</application> probes to
552         userland applications and libraries without also linking
553         against &man.elf.3;.</para>
554
555       <para revision="279186">The &man.setmode.3; function has been
556         updated to consistently set <literal>errno</literal> on
557         failure.</para>
558
559       <para revision="279663">The &man.qsort.3; functions have been
560         updated to be able to handle 32-bit aligned data on 64-bit
561         platforms, also providing a significant improvement in 32-bit
562         workloads.</para>
563
564       <para revision="281130">Several standard include headers have
565         been updated to use of <application>gcc</application>
566         attributes, such as <literal>__result_use_check()</literal>,
567         <literal>__alloc_size()</literal>, and
568         <literal>__nonnull()</literal>.</para>
569
570       <para revision="281845">Support for file verification in
571         <acronym>MAC</acronym> has been added.</para>
572     </sect2>
573
574     <sect2 xml:id="userland-abi">
575       <title>ABI Compatibility</title>
576
577       <para revision="271982">The &linux; compatibility version has
578         been updated to <literal>2.6.18</literal>.  The
579         <literal>compat.linux.osrelease</literal> &man.sysctl.8; is
580         evaluated when building the <filename
581           role="package">emulators/linux-c6</filename> and related
582         ports.</para>
583     </sect2>
584   </sect1>
585
586   <sect1 xml:id="kernel">
587     <title>Kernel</title>
588
589     <para>This section covers changes to kernel configurations, system
590       tuning, and system control parameters that are not otherwise
591       categorized.</para>
592
593     <sect2 xml:id="kernel-bugfix">
594       <title>Kernel Bug Fixes</title>
595
596       <para revision="265876">A kernel bug that inhibited proper
597         functionality of the <literal>dev.cpu.0.freq</literal>
598         &man.sysctl.8; on &intel; processors with Turbo
599         Boost&nbsp;&trade; enabled has been fixed.</para>
600
601       <para revision="271697" arch="powerpc">Support for
602         &man.dtrace.1; stack tracing has been fixed for
603         &os;/&arch.powerpc;, using the <literal>trapexit()</literal>
604         and <literal>asttrapexit()</literal> functions instead of
605         checking within addressed kernel space.</para>
606
607       <para revision="272089">A bug in &man.ipfw.4; that could
608         potentially lead to a kernel panic when using &man.dummynet.4;
609         at layer 2 has been fixed.</para>
610
611       <para revision="280930" contrib="sponsor" sponsor="&mitail;">The
612         kernel <acronym>RPC</acronym> has been updated to include
613         several enhancements:</para>
614
615       <itemizedlist>
616         <listitem>
617           <para>The 45 MiB limit on requests queued for
618             &man.nfsd.8; threads has been removed.</para>
619         </listitem>
620
621         <listitem>
622           <para>Avoids unnecessary throttling by not deferring
623             accounting for completed requests.</para>
624         </listitem>
625
626         <listitem>
627           <para>Fixes an integer overflow and signedness bugs.</para>
628         </listitem>
629       </itemizedlist>
630
631       <para revision="281261" arch="powerpc">Support for
632         &man.dtrace.1; has been added for the
633         Book-E&nbsp;&trade;.</para>
634     </sect2>
635
636     <sect2 xml:id="kernel-config">
637       <title>Kernel Configuration</title>
638
639       <para revision="266531">The <literal>IMAGACT_BINMISC</literal>
640         kernel configuration option has been enabled by default,
641         which enables application execution through emulators, such
642         as <application>Qemu</application>.</para>
643
644       <para revision="268045">The <literal>VT</literal> kernel
645         configuration file has been removed, and the &man.vt.4;
646         driver is included in the <literal>GENERIC</literal> kernel.
647         To enable &man.vt.4;, enter <literal>set kern.vty=vt</literal>
648         at the &man.loader.8; prompt during boot, or add
649         <literal>kern.vty=vt</literal> to &man.loader.conf.5; and
650         reboot the system.</para>
651
652       <para revision="277904">The &man.config.8; utility has been
653         updated to allow using a non-standard <filename
654           class="directory">src/</filename> tree, specified as an
655         argument to the <literal>-s</literal> flag.</para>
656
657       <para revision="277990" arch="powerpc64">The
658         &os;/&arch.powerpc64; kernel now builds as
659         a position-independent executable, allowing the kernel to be
660         loaded into and run from any physical or virtual
661         address.</para>
662
663       <important>
664         <para>This change requires an update to &man.loader.8;.
665           The userland and kernel must be updated before rebooting the
666           system.</para>
667       </important>
668
669       <para revision="279189" contrib="sponsor" sponsor="&ff;"
670         arch="powerpc">Kernel support for Vector-Scalar eXtension
671         (<acronym>VSX</acronym>) found on POWER7 and POWER8 hardware
672         has been added.</para>
673
674       <para revision="279252" contrib="sponsor" sponsor="&ff;"
675         arch="powerpc">The &man.pmap.9; implementation for 64-bit
676         &powerpc; processors has been overhaulded to improve
677         concurrency.</para>
678     </sect2>
679
680     <sect2 xml:id="kernel-sysctl">
681       <title>System Tuning and Controls</title>
682
683       <para revision="275140" contrib="sponsor" sponsor="&ff;">The
684         &man.hwpmc.4; default and maximum callchain depths have been
685         increased.  The default has been increased from 16 to 32, and
686         the maximum increased from 32 to 128.</para>
687
688       <para revision="279361">The <literal>kern.osrelease</literal>
689         and <literal>kern.osreldate</literal> are now configurable
690         &man.jail.8; parameters.</para>
691
692       <para revision="280308,280949" contrib="sponsor"
693         sponsor="&ix;, &ff;">The &man.devfs.5; device filesystem has
694         been changed to update timestamps for read/write operations
695         using seconds precision.  A new &man.sysctl.8;,
696         <literal>vfs.devfs.dotimes</literal> has been added, which
697         when set to a non-zero value, enables default precision
698         timestamps for these operations.</para>
699
700       <para revision="282213" contrib="sponsor" sponsor="&ff;">A new
701         &man.sysctl.8;, <literal>kern.racct.enable</literal>, has been
702         added, which when set to a non-zero value allows using
703         &man.rctl.8; with the <literal>GENERIC</literal> kernel.
704         A new kernel configuration option,
705         <literal>RACCT_DISABLED</literal> has also been added.</para>
706     </sect2>
707   </sect1>
708
709   <sect1 xml:id="drivers">
710     <title>Devices and Drivers</title>
711
712     <para>This section covers changes and additions to devices and
713       device drivers since &release.prev;.</para>
714
715     <sect2 xml:id="drivers-device">
716       <title>Device Drivers</title>
717
718       <para revision="260903">Support for GPS ports has been added to
719         &man.uhso.4;.</para>
720
721       <para revision="265132">The &man.full.4; device has been added,
722         and the <literal>lindev(4)</literal> device has been removed.
723         Prior to this change, <literal>lindev(4)</literal> provided
724         only the <filename>/dev/full</filename> character device,
725         returning <literal>ENOSPC</literal> on write attempts.  As
726         this device is not specific to &linux;, a native &os; version
727         has been added.</para>
728
729       <para revision="271705">Hardware context support has been
730         added to the <literal>drm/i915</literal> driver, adding
731         support for <application>Mesa</application> 9.2 and
732         later.</para>
733
734       <para revision="273178">The &man.vt.4; driver has been updated,
735         replacing the bitmapped <literal>kern.vt.spclkeys</literal>
736         &man.sysctl.8; with individual
737         <literal>kern.vt.kbd_*</literal> variants.</para>
738
739       <para revision="273598">The &man.hpet.4; driver has been updated
740         to create a
741         <filename>/dev/hpet<replaceable>N</replaceable></filename>
742         device, providing access to <acronym>HPET</acronym> from
743         userspace.</para>
744
745       <para revision="280183">The <literal>drm</literal> code has
746         been updated to match &linux; version 3.8.13.</para>
747
748       <para revision="282783" arch="powerpc">Support for the Freescale
749         <acronym>PCI</acronym> Root Complex device has been
750         added.</para>
751     </sect2>
752
753     <sect2 xml:id="drivers-storage">
754       <title>Storage Drivers</title>
755
756       <para revision="265236" contrib="sponsor"
757         sponsor="&lsi;, &spectralogic;" sponsorurl="">The &man.mpr.4;
758         device has been added, providing support for LSI Fusion-MPT
759         3 12Gb SCSI/SATA controllers.</para>
760
761       <para revision="265555" contrib="sponsor"
762           sponsor="&lsi;">The &man.mrsas.4; driver has been added,
763         providing support for LSI MegaRAID SAS controllers.  The
764         &man.mfi.4; driver will attach to the controller, by default.
765         To enable &man.mrsas.4; add
766         <literal>hw.mfi.mrsas_enable=1</literal> to
767         <filename>/boot/loader.conf</filename>, which turns off
768         &man.mfi.4; device probing.</para>
769
770       <note>
771         <para>At this time, the &man.mfiutil.8; utility and the &os;
772           version of <application>MegaCLI</application> and
773           <application>StorCli</application> do not work with
774           &man.mrsas.4;.</para>
775       </note>
776
777       <para revision="275461" contrib="sponsor" sponsor="&ix;">The
778         &man.ctl.4; subsystem has been updated, increasing the ports
779         limit from <literal>128</literal> to <literal>256</literal>,
780         and <acronym>LUN</acronym> limit from <literal>256</literal>
781         to <literal>1024</literal>.</para>
782
783       <para revision="276526">The <literal>asr(4)</literal> driver has
784         been removed, and is no longer supported.</para>
785
786       <para revision="281387">The &man.hptnr.4; driver has been
787         updated to version 1.1.1.</para>
788     </sect2>
789
790     <sect2 xml:id="drivers-network">
791       <title>Network Drivers</title>
792
793       <para revision="258830">Support for Broadcom chipsets BCM57764,
794         BCM57767, BCM57782, BCM57786 and BCM57787 has been added to
795         &man.bge.4;.</para>
796
797       <para revision="260448">Support for the &intel; Centrino&trade;
798         Wireless-N 135 chipset has been added.</para>
799
800       <para revision="260552">Firmware for &intel; Centrino&trade;
801         Wireless-N 105 devices has been added to the base
802         system.</para>
803
804       <para revision="261975">The deprecated nve(4) driver has been
805         removed.  Users of NVIDIA nForce MCP network adapters are
806         advised to use the &man.nfe.4; driver instead, which has been
807         the default driver for this hardware since
808         &os;&nbsp;7.0.</para>
809
810       <para revision="264601" contrib="sponsor"
811         sponsor="&darpa_afrl;">The <literal>if_nf10bmac(4)</literal>
812         device has been added, providing support for NetFPGA-10G
813         Embedded CPU Ethernet Core.</para>
814
815       <note>
816         <para>The <literal>if_nf10bmac(4)</literal> driver operates on
817           the FPGA, and is not suited for the PCI host
818           interface.</para>
819       </note>
820
821       <para revision="265348" contrib="sponsor"
822         sponsor="&netgate;">The &man.ath.hal.4; driver has been
823         updated to support the Atheros AR1111 chipset.</para>
824
825       <para revision="266770">Support for the &intel; Centrino&trade;
826         Wireless-N 105 chipset has been added.</para>
827
828       <para revision="266757" contrib="sponsor"
829         sponsor="&chelsio;">Support for the &man.cxgbe.4; Terminator
830         5 (T5) 10G/40G cards has been added to &man.netmap.4;.</para>
831
832       <para revision="272730">The &man.alc.4; driver has been updated
833         to support AR816x and AR817x ethernet controllers.</para>
834
835       <para revision="273331">The &man.vxlan.4; driver has been added,
836         which creates a virtual Layer 2 (Ethernet) network overlaid in
837         a Layer 3 (IP/UDP) network.  The &man.vxlan.4; driver is
838         analogous to &man.vlan.4;, but is designed to be better suited
839         for large, multiple-tenant datacenter environments.</para>
840
841       <para revision="274246" contrib="sponsor" sponsor="&yandex;">The
842         &man.gre.4; driver has been significantly overhauled, and has
843         been split into two separate modules, &man.gre.4; and
844         &man.me.4;.</para>
845     </sect2>
846   </sect1>
847
848   <sect1 xml:id="hardware">
849     <title>Hardware Support</title>
850
851     <para>This section covers general hardware support for physical
852       machines, hypervisors, and virtualization environments, as well
853       as hardware changes and updates that do not otherwise fit in
854       other sections of this document.</para>
855
856     <sect2 xml:id="hardware-support">
857       <title>Hardware Support</title>
858
859       <para revision="268303">The &man.asmc.4; driver has been
860         updated to support the &apple;&nbsp;MacMini 3,1.</para>
861
862       <para revision="268351">Support for &os;/ia64 has been dropped
863         as of &os;&nbsp;11.</para>
864
865       <para revision="274386">An issue that could cause a system to
866         hang when entering <acronym>ACPI</acronym>
867         <literal>S3</literal> state (suspend to
868         <acronym>RAM</acronym>) has been corrected in the &man.acpi.4;
869         and &man.pci.4; drivers.</para>
870
871       <para revision="274733" arch="powerpc">The power management unit
872         subsystem has been updated to support power button events on
873         certain &arch.powerpc; hardware, such as aluminum
874         PowerBook&nbsp;&reg;.</para>
875
876       <para revision="275171,275190" arch="powerpc">The &man.hwpmc.4;
877         driver has been updated to correct performance counter
878         sampling on G4 (MPC74xxx) and G5 class processors.</para>
879
880       <para revision="281713" arch="powerpc">The &man.hwpmc.4;
881         driver has been updated to support the Freescale e500
882         core.</para>
883
884       <para revision="275732" contrib="sponsor"
885         sponsor="&ff;,&netgate;">The
886         <application>OpenCrypto</application> framework has been
887         updated to include <literal>AES-ICM</literal> and
888         <literal>AES-GCM</literal> modes, both of which have also been
889         added to the &man.aesni.4; driver.</para>
890     </sect2>
891
892     <sect2 xml:id="hardware-virtualization">
893       <title>Virtualization Support</title>
894
895       <para revision="260410">Support for the <quote>Virtual Interrupt
896           Delivery</quote> feature of &intel;&nbsp;VT-x is enabled if
897         supported by the CPU.  This feature can be disabled by running
898         <literal>sysctl hw.vmm.vmx.use_apic_vid=0</literal>.
899         Additionally, to persist this setting across reboots, add
900         <literal>hw.vmm.vmx.use_apic_vid=0</literal> to
901         <filename>/etc/sysctl.conf</filename>.</para>
902
903       <para revision="260532">Support for <quote>Posted Interrupt
904           Processing</quote> is enabled if supported by the CPU.  This
905         feature can be disabled by running <literal>sysctl
906           hw.vmm.vmx.use_apic_pir=0</literal>.  Additionally, to
907         persist this setting across reboots, add
908         <literal>hw.vmm.vmx.use_apic_pir=0</literal> to
909         <filename>/etc/sysctl.conf</filename>.</para>
910
911       <para revision="260582">Unmapped IO support has been added to
912         &man.virtio_blk.4;.</para>
913
914       <para revision="260583">Unmapped IO support has been added to
915         &man.virtio_scsi.4;.</para>
916
917       <para revision="260847">The &man.virtio_random.4; driver has
918         been added to harvest entropy from the host system.</para>
919
920       <para revision="261504">&os;/&arch.i386; guests can be run under
921         bhyve.</para>
922
923       <para revision="267536" contrib="sponsor"
924         sponsor="&citrix.rd;">Support for running a &os;/&arch.amd64;
925         <application>Xen</application> guest instance as
926         <acronym>PVH</acronym> guest has been added.
927         <acronym>PVH</acronym> mode, short for <quote>Para-Virtualized
928           Hardware</quote>, uses para-virtualized drivers for boot and
929         I/O, and uses hardware virtualization extensions for all other
930         tasks, without the need for emulation.</para>
931
932       <para revision="273515">The &man.virtio.console.4; driver has
933         been added, which provides an interface to VirtIO console
934         devices through a &man.tty.4; device.</para>
935
936       <para revision="279957">The &man.bhyve.8; hypervisor has been
937         updated to support <literal>DSM TRIM</literal> commands for
938         virtual <acronym>AHCI</acronym> disks.</para>
939
940       <para revision="281439" arch="arm">Support for the
941         <application>QEMU</application> <literal>virt</literal> system
942         has been added.</para>
943
944       <para revision="282212" contrib="sponsor" sponsor="&msostc;">The
945         HyperV&trade; drivers have been updated with several
946         enhancements:</para>
947
948       <itemizedlist>
949         <listitem>
950           <para>The &man.hv.vmbus.4; driver now has multi-channel
951             support.</para>
952         </listitem>
953
954         <listitem>
955           <para>The &man.hv.storvsc.4; driver now has scatter/gather
956             support, in addition to performance improvements.</para>
957         </listitem>
958
959         <listitem>
960           <para>The &man.hv.kvp.4; driver has received several bug
961             fixes.</para>
962         </listitem>
963       </itemizedlist>
964
965       <para revision="282274">Support for &man.xen.4; para-virtualized
966         <literal>domU</literal> kernels has been removed.</para>
967     </sect2>
968
969     <sect2 xml:id="hardware-arm">
970       <title>ARM Support</title>
971
972       <para revision="260921">The &man.nand.4; device is enabled for
973         ARM devices by default.</para>
974
975       <para revision="273264" arch="armv6">An issue that could cause
976         instability when detecting <acronym>SD</acronym> cards on the
977         Raspberry Pi <acronym>SOC</acronym> has been fixed.</para>
978
979       <para revision="275963">The <literal>bcm2835_cpufreq</literal>
980         driver has been added, which supports <acronym>CPU</acronym>
981         frequency and voltage control on the Raspberry Pi
982         <acronym>SOC</acronym>.</para>
983
984       <para revision="280259" contrib="sponsor" sponsor="&ff;">Initial
985         support for the ARM AArch64 architecture has been
986         added.</para>
987
988       <para revision="282779" arch="arm">Kernel support for Thumb-2
989         has been added.</para>
990
991       <para revision="282827">Support for the hardware power button
992         on the BeagleBone Black system has been added.</para>
993     </sect2>
994   </sect1>
995
996   <sect1 xml:id="storage">
997     <title>Storage</title>
998
999     <para>This section covers changes and additions to file systems
1000       and other storage subsystems, both local and networked.</para>
1001
1002     <sect2 xml:id="storage-general">
1003       <title>General Storage</title>
1004
1005       <para revision="278037" contrib="sponsor" sponsor="&ix;">The
1006         &man.ctl.4; <acronym>LUN</acronym> mapping has been rewritten,
1007         replacing <acronym>iSCSI</acronym>-specific mapping mechanisms
1008         with a new mechanism that works for any port.</para>
1009
1010       <para revision="278354" contrib="sponsor" sponsor="&ix;">The
1011         &man.ctld.8; utility has been updated to allow controlling
1012         non-<acronym>iSCSI</acronym> &man.ctl.4; ports.</para>
1013     </sect2>
1014
1015     <sect2 xml:id="storage-net">
1016       <title>Networked Storage</title>
1017
1018       <para revision="270096" contrib="sponsor" sponsor="&ff;">The new
1019         filesystem automount facility, &man.autofs.5;, has been added.
1020         The new &man.autofs.5; facility is similar to that found in
1021         other &unix;-like operating systems, such as OS&nbsp;X&trade;
1022         and Solaris&trade;.  The &man.autofs.5; facility uses
1023         a &sun;-compatible &man.auto.master.5; configuration file, and
1024         is administered with the &man.automount.8; userland utility,
1025         and the &man.automountd.8; and &man.autounmountd.8;
1026         daemons.</para>
1027     </sect2>
1028
1029     <sect2 xml:id="storage-zfs">
1030       <title>ZFS</title>
1031
1032       <para revision="275748">The <literal>arc_meta_limit</literal>
1033         statistics are now visible through the
1034         <literal>kstat</literal> &man.sysctl.8;.  As a result of this
1035         change, the <literal>vfs.zfs.arc_meta_used</literal>
1036         &man.sysctl.8; has been removed, and replaced with the
1037         <literal>kstat.zfs.misc.arcstats.arc_meta_used</literal>
1038         &man.sysctl.8;.</para>
1039     </sect2>
1040
1041     <sect2 xml:id="storage-geom">
1042       <title>&man.geom.4;</title>
1043
1044       <para revision="267359">Support for the
1045         <literal>disklabel64</literal> partitioning scheme has been
1046         added to &man.gpart.8;.</para>
1047     </sect2>
1048   </sect1>
1049
1050   <sect1 xml:id="boot">
1051     <title>Boot Loader Changes</title>
1052
1053     <para>This section covers the boot loader, boot menu, and other
1054       boot-related changes.</para>
1055
1056     <sect2 xml:id="boot-loader">
1057       <title>Boot Loader Changes</title>
1058
1059       <para revision="274085">The &man.vt.4; driver has been made the
1060         default system console driver.  The &man.syscons.4; driver is
1061         still available, and can be enabled by adding
1062         <literal>kern.vty=sc</literal> in &man.loader.conf.5;.
1063         Alternatively, &man.syscons.4; can be enabled at boot time by
1064         entering <literal>set kern.vty=sc</literal> at the
1065         &man.loader.8; prompt.</para>
1066
1067       <para revision="281616">The boot loader has been updated to
1068         support entering the <acronym>GELI</acronym> passphrase before
1069         loading the kernel.  To enable this behavior, add
1070         <literal>geom_eli_passphrase_prompt="YES"</literal> to
1071         &man.loader.conf.5;.</para>
1072     </sect2>
1073
1074     <sect2 xml:id="boot-menu">
1075       <title>Boot Menu Changes</title>
1076
1077       <para>&nbsp;</para>
1078     </sect2>
1079   </sect1>
1080
1081   <sect1 xml:id="network">
1082     <title>Networking</title>
1083
1084     <para>This section describes changes that affect networking in
1085       &os;.</para>
1086
1087     <sect2 xml:id="network-protocols">
1088       <title>Network Procols</title>
1089
1090       <para revision="263140">Support for the IPX network transport
1091         protocol has been removed, and will not be supported in
1092         &os;&nbsp;11 and later releases.</para>
1093
1094       <para revision="272720" contrib="sponsor"
1095         sponsor="&limelight;">Support for <acronym>PLPMTUD</acronym>
1096         blackhole detection (<acronym>RFC</acronym> 4821) has been
1097         added to the &man.tcp.4; stack, disabled by default.  New
1098         control tunables have been added:</para>
1099
1100       <informaltable frame="none" pgwide="0">
1101         <tgroup cols="2">
1102           <colspec colwidth="1*"/>
1103           <colspec colwidth="1*"/>
1104           <thead>
1105             <row>
1106               <entry>Tunable</entry>
1107               <entry>Description</entry>
1108             </row>
1109           </thead>
1110
1111           <tbody>
1112             <row>
1113               <entry><literal>net.inet.tcp.pmtud_blackhole_detection</literal></entry>
1114               <entry>Enables or disables <acronym>PLPMTUD</acronym>
1115                 blackhole detection</entry>
1116             </row>
1117
1118             <row>
1119               <entry><literal>net.inet.tcp.pmtud_blackhole_mss</literal></entry>
1120               <entry><acronym>MSS</acronym> to try for IPv4</entry>
1121             </row>
1122
1123             <row>
1124               <entry><literal>net.inet.tcp.v6pmtud_blackhole_mss</literal></entry>
1125               <entry><acronym>MSS to try for IPv6</acronym></entry>
1126             </row>
1127           </tbody>
1128         </tgroup>
1129       </informaltable>
1130
1131       <para>New monitoring &man.sysctl.8;s haven been added:</para>
1132
1133       <informaltable frame="none" pgwide="0">
1134         <tgroup cols="2">
1135           <colspec colwidth="1*"/>
1136           <colspec colwidth="1*"/>
1137           <thead>
1138             <row>
1139               <entry>Tunable</entry>
1140               <entry>Description</entry>
1141             </row>
1142           </thead>
1143
1144           <tbody>
1145             <row>
1146               <entry><literal>net.inet.tcp.pmtud_blackhole_activated</literal></entry>
1147               <entry>Number of times the code was activated to attempt
1148                 downshifting the <acronym>MSS</acronym></entry>
1149             </row>
1150
1151             <row>
1152               <entry><literal>net.inet.tcp.pmtud_blackhole_min_activated</literal></entry>
1153               <entry>Number of times the blackhole
1154                 <acronym>MSS</acronym> was used in an attempt to
1155                 downshift</entry>
1156             </row>
1157
1158             <row>
1159               <entry><literal>net.inet.tcp.pmtud_blackhole_failed</literal></entry>
1160               <entry>Number of times that the blackhole failed to
1161                 connect after downshifting the
1162                 <acronym>MSS</acronym></entry>
1163             </row>
1164           </tbody>
1165         </tgroup>
1166       </informaltable>
1167
1168       <para revision="280971" contrib="sponsor"
1169         sponsor="&netflix;, &nginx;">Support for <acronym>IP</acronym>
1170         identification for atomic datagrams (<acronym>RFC</acronym>
1171         6864) has been added.  Support for this feature can be toggled
1172         with the <literal>net.inet.ip.rfc6864</literal>
1173         &man.sysctl.8;, which is enabled by default.</para>
1174     </sect2>
1175   </sect1>
1176
1177   <sect1 xml:id="ports">
1178     <title>Ports Collection and Package Infrastructure</title>
1179
1180     <para>This section covers changes to the &os;&nbsp;Ports
1181       Collection, package infrastructure, and package maintenance and
1182       installation tools.</para>
1183
1184     <sect2 xml:id="ports-infrastructure">
1185       <title>Infrastructure Changes</title>
1186
1187       <para>&nbsp;</para>
1188     </sect2>
1189
1190     <sect2 xml:id="ports-packages ">
1191       <title>Packaging Changes</title>
1192
1193       <para>&nbsp;</para>
1194     </sect2>
1195   </sect1>
1196
1197   <sect1 xml:id="doc">
1198     <title>Documentation</title>
1199
1200     <para>This section covers changes to the &os;&nbsp;Documentation
1201       Project sources and toolchain.</para>
1202
1203     <sect2 xml:id="doc-sources">
1204       <title>Documentation Source Changes</title>
1205
1206       <para>&nbsp;</para>
1207     </sect2>
1208
1209     <sect2 xml:id="doc-toolchain">
1210       <title>Documentation Toolchain Changes</title>
1211
1212       <para>&nbsp;</para>
1213     </sect2>
1214   </sect1>
1215
1216   <sect1 xml:id="releng">
1217     <title>Release Engineering and Integration</title>
1218
1219     <para>This section convers changes that are specific to the
1220       &os;&nbsp;Release Engineering processes.</para>
1221
1222     <sect2 xml:id="releng-changes">
1223       <title>Integration Changes</title>
1224
1225       <para revision="277458" contrib="sponsor" sponsor="&ff;">The
1226         Release Engineering build tools have been updated to include
1227         support for producing virtual machine disk images for various
1228         cloud hosting providers.</para>
1229
1230       <para revision="278926">The Release Engineering build tools have
1231         been updated to use multi-threaded &man.xz.1;.  By default,
1232         the number of &man.xz.1; threads is set to the number of cores
1233         available.</para>
1234
1235       <para revision="281802" contrib="sponsor" sponsor="&ff;">The
1236         Release Engineering build tools have been updated to include
1237         support for building &os;/&arch.arm64; virtual machine and
1238         memory stick installation images.</para>
1239     </sect2>
1240   </sect1>
1241 </article>