Update the svn revision marker.
[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: 282146 -->
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="281311" contrib="sponsor" sponsor="&ff;">The
327         &man.ar.1; utility has been updated to set
328         <literal>ARCHIVE_EXTRACT_SECURE_SYMLINKS</literal> and
329         <literal>ARCHIVE_EXTRACT_SECURE_NODOTDOT</literal> to disallow
330         directory traversal when extracting an archive, similar to
331         &man.tar.1;.</para>
332     </sect2>
333
334     <sect2 xml:id="userland-contrib">
335       <title>Contributed Software</title>
336
337       <para revision="258884" contrib="sponsor"
338         sponsor="&darpa_afrl;">&man.lldb.1; has been updated to
339         upstream snapshot version r196259.</para>
340
341       <para revision="259626">Timezone data files have been updated to
342         version 2013i.</para>
343
344       <para revision="260445">&man.byacc.1; has been updated to
345         version 20140101.</para>
346
347       <para revision="261071">&man.jemalloc.3; has been updated to
348         version 3.5.0.</para>
349
350       <para revision="261283"><application>libc++</application> has
351         been updated to version 3.4.</para>
352
353       <para revision="261320"><application>OpenSSH</application> has
354         been updated to 6.5p1.</para>
355
356       <para revision="261344"><application>mdocml</application> has
357         been updated to version 1.12.3.</para>
358
359       <para revision="261991"><application>LLVM</application> and
360         <application>Clang</application> have been updated to
361         version 3.4.</para>
362
363       <para revision="266527"
364         role="merged"><application>Sendmail</application> has been
365         updated from 8.14.7 to 8.14.9.</para>
366
367       <para revision="276577"><application>file</application> has been
368         updated to version 5.22.</para>
369
370       <para revision="275718">The <application>binutils</application>
371         suite of utilities has been updated to include upstream
372         patches that add new relocations for &arch.powerpc;
373         support.</para>
374
375       <para revision="276398" contrib="sponsor" sponsor="&ff;">The
376         <application>ELF Tool Chain</application> has been updated to
377         upstream revision r3136.</para>
378
379       <para revision="276551">The <application>texinfo</application>
380         utility and <literal>info</literal> pages were removed from
381         the base system.  The <filename
382           role="package">print/texinfo</filename> port should be
383         installed on systems where <literal>info</literal> pages are
384         needed.</para>
385
386       <para revision="276796" contrib="sponsor" sponsor="&ff;">The ELF
387         object manipulation tools
388         <application>addr2line</application>,
389         <application>elfcopy (strip)</application>,
390         <application>nm</application>,
391         <application>readelf</application>,
392         <application>size</application>, and
393         <application>strings</application> were switched to the
394         versions from the ELF Tool Chain project.</para>
395
396       <para revision="276881">The <literal>libedit</literal> library
397         has been updated to include <acronym>UTF-8</acronym> support,
398         adding <acronym>UTF-8</acronym> support to the &man.sh.1;
399         shell.</para>
400
401       <para revision="277270"><application>OpenSSL</application> has
402         been updated to version 1.0.1l.</para>
403
404       <para revision="278433">The &man.xz.1; utility has been updated
405         to support multi-threaded compression.</para>
406
407       <para revision="278970">The &man.acpi.4; subsystem has been
408         updated to version 20150204.</para>
409
410       <para revision="280932" contrib="sponsor" sponsor="&ff;">The
411         <application>elftoolchain</application> utilities have been
412         updated to version 3179.</para>
413
414       <para revision="281316">The &man.xz.1; utility has been udpated
415         to version 5.2.1.</para>
416
417       <para revision="281373">The &man.nvi.1; utility has been updated
418         to version 2.1.3.</para>
419
420       <para revision="281806">The &man.wpa.supplicant.8; and
421         &man.hostapd.8; utilties have been updated to version
422         2.4.</para>
423
424       <para revision="281812"><application>bmake</application> has
425         been updated to version 20150418.</para>
426
427       <para revision="282089">The &man.unbound.8; utility has been
428         updated to version 1.5.3.</para>
429     </sect2>
430
431     <sect2 xml:id="userland-installer">
432       <title>Installation and Configuration Tools</title>
433
434       <para revision="271539">The &man.bsdinstall.8; partition editor
435         and &man.sade.8; utility have been updated to include native
436         <acronym>ZFS</acronym> support.</para>
437
438       <para revision="272274">The &os; installation utility,
439         &man.bsdinstall.8;, has been updated to set the
440         <literal>canmount</literal> &man.zfs.8; property to
441         <literal>off</literal> for the <filename
442           class="directory">/var</filename> dataset, preventing the
443         contents of directories within <filename
444           class="directory">/var</filename> from conflicting when
445         using multiple boot environments, such as that provided by
446         <filename role="package">sysutils/beadm</filename>.</para>
447
448       <para revision="274394">The &man.bsdconfig.8; utility has been
449         updated to skip the initial &man.tzsetup.8;
450         <acronym>UTC</acronym> versus wall-clock time prompt when run
451         in a virtual machine, determined when the
452         <literal>kern.vm_guest</literal> &man.sysctl.8; is set to
453         <literal>1</literal>.</para>
454
455       <para revision="275874">The &man.bsdinstall.8; utility has been
456         updated to use the new &man.dpv.3; library to display progress
457         when extracting the &os; distributions.</para>
458     </sect2>
459
460     <sect2 xml:id="userland-rc">
461       <title><filename class="directory">/etc/rc.d</filename>
462         Scripts</title>
463
464       <para revision="270676">The &man.rc.8; subsystem has been
465         updated to allow configuring services in <filename
466           class="directory">&dollar;{LOCALBASE}/etc/rc.conf.d/</filename>.
467         If <literal>LOCALBASE</literal> is unset, it defaults to
468         <filename class="directory">/usr/local</filename>.</para>
469
470       <para revision="275299">The <filename>mrouted</filename>
471         &man.rc.8; script has been removed from the base system.  An
472         equivalent script is available from the <filename
473           role="package">net/mrouted</filename> port.</para>
474
475       <para revision="279463" contrib="sponsor"
476         sponsor="&sandvine;">A new &man.rc.8; script,
477         <filename>iovctl</filename>, has been added, which allows
478         automatically starting the &man.iovctl.8; utility at
479         boot.</para>
480     </sect2>
481
482     <sect2 xml:id="userland-periodic">
483       <title><filename class="directory">/etc/periodic</filename>
484         Scripts</title>
485
486       <para revision="271321">The daily &man.periodic.8; script
487         <filename>110.clean-tmps</filename> has been updated to avoid
488         crossing filesystem mount boundaries when cleaning files in
489         <filename class="directory">/tmp</filename>.</para>
490     </sect2>
491
492     <sect2 xml:id="userland-libraries">
493       <title>Runtime Libraries and API</title>
494
495       <para revision="268461">The &man.readline.3; library is now
496         statically linked in software within the base system, and the
497         shared library is no longer installed, allowing the Ports
498         Collection to use a modern version of the library.</para>
499
500       <para revision="272273">The &man.strptime.3; library has been
501         updated to add support for <acronym>POSIX</acronym>-2001
502         features <literal>%U</literal> and
503         <literal>%W</literal>.</para>
504
505       <para revision="272842,272848" contrib="sponsor"
506         sponsor="&ff;">The &man.dl.iterate.phdr.3; library has been
507         changed to always return the path name of the
508         <acronym>ELF</acronym> object in the
509         <literal>dlpi_name</literal> structure member.</para>
510
511       <para revision="273562" contrib="sponsor"
512         sponsor="&juniper;">The &man.libxo.3; library has been
513         imported to the base system.</para>
514
515       <para revision="273806" contrib="sponsor" sponsor="&chelsio;">A
516         userland library for Chelsio Terminator 5 based iWARP cards
517         has been added, allowing userland <acronym>RDMA</acronym>
518         applications to work over compatible
519         <acronym>NIC</acronym>s.</para>
520
521       <para revision="274987">The &man.gpio.3; library has been added,
522         providing a wrapper around the &man.gpio.4; kernel
523         interface.</para>
524
525       <para revision="277610">The <literal>futimens()</literal> and
526         <literal>utimensat()</literal> system calls have been
527         added.  See &man.utimensat.2; for more information.</para>
528
529       <para revision="278934">The &man.elf.3; compile-time dependency
530         has been removed from <filename>dtri.o</filename>, which
531         allows adding <application>DTrace</application> probes to
532         userland applications and libraries without also linking
533         against &man.elf.3;.</para>
534
535       <para revision="279186">The &man.setmode.3; function has been
536         updated to consistently set <literal>errno</literal> on
537         failure.</para>
538
539       <para revision="279663">The &man.qsort.3; functions have been
540         updated to be able to handle 32-bit aligned data on 64-bit
541         platforms, also providing a significant improvement in 32-bit
542         workloads.</para>
543
544       <para revision="281130">Several standard include headers have
545         been updated to use of <application>gcc</application>
546         attributes, such as <literal>__result_use_check()</literal>,
547         <literal>__alloc_size()</literal>, and
548         <literal>__nonnull()</literal>.</para>
549
550       <para revision="281845">Support for file verification in
551         <acronym>MAC</acronym> has been added.</para>
552     </sect2>
553
554     <sect2 xml:id="userland-abi">
555       <title>ABI Compatibility</title>
556
557       <para revision="271982">The &linux; compatibility version has
558         been updated to <literal>2.6.18</literal>.  The
559         <literal>compat.linux.osrelease</literal> &man.sysctl.8; is
560         evaluated when building the <filename
561           role="package">emulators/linux-c6</filename> and related
562         ports.</para>
563     </sect2>
564   </sect1>
565
566   <sect1 xml:id="kernel">
567     <title>Kernel</title>
568
569     <para>This section covers changes to kernel configurations, system
570       tuning, and system control parameters that are not otherwise
571       categorized.</para>
572
573     <sect2 xml:id="kernel-bugfix">
574       <title>Kernel Bug Fixes</title>
575
576       <para revision="265876">A kernel bug that inhibited proper
577         functionality of the <literal>dev.cpu.0.freq</literal>
578         &man.sysctl.8; on &intel; processors with Turbo
579         Boost&nbsp;&trade; enabled has been fixed.</para>
580
581       <para revision="271697" arch="powerpc">Support for
582         &man.dtrace.1; stack tracing has been fixed for
583         &os;/&arch.powerpc;, using the <literal>trapexit()</literal>
584         and <literal>asttrapexit()</literal> functions instead of
585         checking within addressed kernel space.</para>
586
587       <para revision="272089">A bug in &man.ipfw.4; that could
588         potentially lead to a kernel panic when using &man.dummynet.4;
589         at layer 2 has been fixed.</para>
590
591       <para revision="280930" contrib="sponsor" sponsor="&mitail;">The
592         kernel <acronym>RPC</acronym> has been updated to include
593         several enhancements:</para>
594
595       <itemizedlist>
596         <listitem>
597           <para>The 45 MiB limit on requests queued for
598             &man.nfsd.8; threads has been removed.</para>
599         </listitem>
600
601         <listitem>
602           <para>Avoids unnecessary throttling by not deferring
603             accounting for completed requests.</para>
604         </listitem>
605
606         <listitem>
607           <para>Fixes an integer overflow and signedness bugs.</para>
608         </listitem>
609       </itemizedlist>
610
611       <para revision="281261" arch="powerpc">Support for
612         &man.dtrace.1; has been added for the
613         Book-E&nbsp;&trade;.</para>
614     </sect2>
615
616     <sect2 xml:id="kernel-config">
617       <title>Kernel Configuration</title>
618
619       <para revision="266531">The <literal>IMAGACT_BINMISC</literal>
620         kernel configuration option has been enabled by default,
621         which enables application execution through emulators, such
622         as <application>Qemu</application>.</para>
623
624       <para revision="268045">The <literal>VT</literal> kernel
625         configuration file has been removed, and the &man.vt.4;
626         driver is included in the <literal>GENERIC</literal> kernel.
627         To enable &man.vt.4;, enter <literal>set kern.vty=vt</literal>
628         at the &man.loader.8; prompt during boot, or add
629         <literal>kern.vty=vt</literal> to &man.loader.conf.5; and
630         reboot the system.</para>
631
632       <para revision="277904">The &man.config.8; utility has been
633         updated to allow using a non-standard <filename
634           class="directory">src/</filename> tree, specified as an
635         argument to the <literal>-s</literal> flag.</para>
636
637       <para revision="277990" arch="powerpc64">The
638         &os;/&arch.powerpc64; kernel now builds as
639         a position-independent executable, allowing the kernel to be
640         loaded into and run from any physical or virtual
641         address.</para>
642
643       <important>
644         <para>This change requires an update to &man.loader.8;.
645           The userland and kernel must be updated before rebooting the
646           system.</para>
647       </important>
648
649       <para revision="279189" contrib="sponsor" sponsor="&ff;"
650         arch="powerpc">Kernel support for Vector-Scalar eXtension
651         (<acronym>VSX</acronym>) found on POWER7 and POWER8 hardware
652         has been added.</para>
653
654       <para revision="279252" contrib="sponsor" sponsor="&ff;"
655         arch="powerpc">The &man.pmap.9; implementation for 64-bit
656         &powerpc; processors has been overhaulded to improve
657         concurrency.</para>
658     </sect2>
659
660     <sect2 xml:id="kernel-sysctl">
661       <title>System Tuning and Controls</title>
662
663       <para revision="275140" contrib="sponsor" sponsor="&ff;">The
664         &man.hwpmc.4; default and maximum callchain depths have been
665         increased.  The default has been increased from 16 to 32, and
666         the maximum increased from 32 to 128.</para>
667
668       <para revision="279361">The <literal>kern.osrelease</literal>
669         and <literal>kern.osreldate</literal> are now configurable
670         &man.jail.8; parameters.</para>
671
672       <para revision="280308" contrib="sponsor" sponsor="&ix;">The
673         &man.devfs.5; device filesystem has been changed to disable
674         updating timestamps for read/write operations.  A new
675         &man.sysctl.8;, <literal>vfs.devfs.dotimes</literal> has been
676         added, which when set to a non-zero value, enables updating
677         timestamps for these operations.</para>
678     </sect2>
679   </sect1>
680
681   <sect1 xml:id="drivers">
682     <title>Devices and Drivers</title>
683
684     <para>This section covers changes and additions to devices and
685       device drivers since &release.prev;.</para>
686
687     <sect2 xml:id="drivers-device">
688       <title>Device Drivers</title>
689
690       <para revision="260903">Support for GPS ports has been added to
691         &man.uhso.4;.</para>
692
693       <para revision="265132">The &man.full.4; device has been added,
694         and the <literal>lindev(4)</literal> device has been removed.
695         Prior to this change, <literal>lindev(4)</literal> provided
696         only the <filename>/dev/full</filename> character device,
697         returning <literal>ENOSPC</literal> on write attempts.  As
698         this device is not specific to &linux;, a native &os; version
699         has been added.</para>
700
701       <para revision="271705">Hardware context support has been
702         added to the <literal>drm/i915</literal> driver, adding
703         support for <application>Mesa</application> 9.2 and
704         later.</para>
705
706       <para revision="273178">The &man.vt.4; driver has been updated,
707         replacing the bitmapped <literal>kern.vt.spclkeys</literal>
708         &man.sysctl.8; with individual
709         <literal>kern.vt.kbd_*</literal> variants.</para>
710
711       <para revision="273598">The &man.hpet.4; driver has been updated
712         to create a
713         <filename>/dev/hpet<replaceable>N</replaceable></filename>
714         device, providing access to <acronym>HPET</acronym> from
715         userspace.</para>
716
717       <para revision="280183">The <literal>drm</literal> code has
718         been updated to match &linux; version 3.8.13.</para>
719     </sect2>
720
721     <sect2 xml:id="drivers-storage">
722       <title>Storage Drivers</title>
723
724       <para revision="265236" contrib="sponsor"
725         sponsor="&lsi;, &spectralogic;" sponsorurl="">The &man.mpr.4;
726         device has been added, providing support for LSI Fusion-MPT
727         3 12Gb SCSI/SATA controllers.</para>
728
729       <para revision="265555" contrib="sponsor"
730           sponsor="&lsi;">The &man.mrsas.4; driver has been added,
731         providing support for LSI MegaRAID SAS controllers.  The
732         &man.mfi.4; driver will attach to the controller, by default.
733         To enable &man.mrsas.4; add
734         <literal>hw.mfi.mrsas_enable=1</literal> to
735         <filename>/boot/loader.conf</filename>, which turns off
736         &man.mfi.4; device probing.</para>
737
738       <note>
739         <para>At this time, the &man.mfiutil.8; utility and the &os;
740           version of <application>MegaCLI</application> and
741           <application>StorCli</application> do not work with
742           &man.mrsas.4;.</para>
743       </note>
744
745       <para revision="275461" contrib="sponsor" sponsor="&ix;">The
746         &man.ctl.4; subsystem has been updated, increasing the ports
747         limit from <literal>128</literal> to <literal>256</literal>,
748         and <acronym>LUN</acronym> limit from <literal>256</literal>
749         to <literal>1024</literal>.</para>
750
751       <para revision="276526">The <literal>asr(4)</literal> driver has
752         been removed, and is no longer supported.</para>
753     </sect2>
754
755     <sect2 xml:id="drivers-network">
756       <title>Network Drivers</title>
757
758       <para revision="258830">Support for Broadcom chipsets BCM57764,
759         BCM57767, BCM57782, BCM57786 and BCM57787 has been added to
760         &man.bge.4;.</para>
761
762       <para revision="260448">Support for the &intel; Centrino&trade;
763         Wireless-N 135 chipset has been added.</para>
764
765       <para revision="260552">Firmware for &intel; Centrino&trade;
766         Wireless-N 105 devices has been added to the base
767         system.</para>
768
769       <para revision="261975">The deprecated nve(4) driver has been
770         removed.  Users of NVIDIA nForce MCP network adapters are
771         advised to use the &man.nfe.4; driver instead, which has been
772         the default driver for this hardware since
773         &os;&nbsp;7.0.</para>
774
775       <para revision="264601" contrib="sponsor"
776         sponsor="&darpa_afrl;">The <literal>if_nf10bmac(4)</literal>
777         device has been added, providing support for NetFPGA-10G
778         Embedded CPU Ethernet Core.</para>
779
780       <note>
781         <para>The <literal>if_nf10bmac(4)</literal> driver operates on
782           the FPGA, and is not suited for the PCI host
783           interface.</para>
784       </note>
785
786       <para revision="265348" contrib="sponsor"
787         sponsor="&netgate;">The &man.ath.hal.4; driver has been
788         updated to support the Atheros AR1111 chipset.</para>
789
790       <para revision="266770">Support for the &intel; Centrino&trade;
791         Wireless-N 105 chipset has been added.</para>
792
793       <para revision="266757" contrib="sponsor"
794         sponsor="&chelsio;">Support for the &man.cxgbe.4; Terminator
795         5 (T5) 10G/40G cards has been added to &man.netmap.4;.</para>
796
797       <para revision="272730">The &man.alc.4; driver has been updated
798         to support AR816x and AR817x ethernet controllers.</para>
799
800       <para revision="273331">The &man.vxlan.4; driver has been added,
801         which creates a virtual Layer 2 (Ethernet) network overlaid in
802         a Layer 3 (IP/UDP) network.  The &man.vxlan.4; driver is
803         analogous to &man.vlan.4;, but is designed to be better suited
804         for large, multiple-tenant datacenter environments.</para>
805
806       <para revision="274246" contrib="sponsor" sponsor="&yandex;">The
807         &man.gre.4; driver has been significantly overhauled, and has
808         been split into two separate modules, &man.gre.4; and
809         &man.me.4;.</para>
810     </sect2>
811   </sect1>
812
813   <sect1 xml:id="hardware">
814     <title>Hardware Support</title>
815
816     <para>This section covers general hardware support for physical
817       machines, hypervisors, and virtualization environments, as well
818       as hardware changes and updates that do not otherwise fit in
819       other sections of this document.</para>
820
821     <sect2 xml:id="hardware-support">
822       <title>Hardware Support</title>
823
824       <para revision="268303">The &man.asmc.4; driver has been
825         updated to support the &apple;&nbsp;MacMini 3,1.</para>
826
827       <para revision="268351">Support for &os;/ia64 has been dropped
828         as of &os;&nbsp;11.</para>
829
830       <para revision="274386">An issue that could cause a system to
831         hang when entering <acronym>ACPI</acronym>
832         <literal>S3</literal> state (suspend to
833         <acronym>RAM</acronym>) has been corrected in the &man.acpi.4;
834         and &man.pci.4; drivers.</para>
835
836       <para revision="274733" arch="powerpc">The power management unit
837         subsystem has been updated to support power button events on
838         certain &arch.powerpc; hardware, such as aluminum
839         PowerBook&nbsp;&reg;.</para>
840
841       <para revision="275171,275190" arch="powerpc">The &man.hwpmc.4;
842         driver has been updated to correct performance counter
843         sampling on G4 (MPC74xxx) and G5 class processors.</para>
844
845       <para revision="281713" arch="powerpc">The &man.hwpmc.4;
846         driver has been updated to support the Freescale e500
847         core.</para>
848
849       <para revision="275732" contrib="sponsor"
850         sponsor="&ff;,&netgate;">The
851         <application>OpenCrypto</application> framework has been
852         updated to include <literal>AES-ICM</literal> and
853         <literal>AES-GCM</literal> modes, both of which have also been
854         added to the &man.aesni.4; driver.</para>
855     </sect2>
856
857     <sect2 xml:id="hardware-virtualization">
858       <title>Virtualization Support</title>
859
860       <para revision="260410">Support for the <quote>Virtual Interrupt
861           Delivery</quote> feature of &intel;&nbsp;VT-x is enabled if
862         supported by the CPU.  This feature can be disabled by running
863         <literal>sysctl hw.vmm.vmx.use_apic_vid=0</literal>.
864         Additionally, to persist this setting across reboots, add
865         <literal>hw.vmm.vmx.use_apic_vid=0</literal> to
866         <filename>/etc/sysctl.conf</filename>.</para>
867
868       <para revision="260532">Support for <quote>Posted Interrupt
869           Processing</quote> is enabled if supported by the CPU.  This
870         feature can be disabled by running <literal>sysctl
871           hw.vmm.vmx.use_apic_pir=0</literal>.  Additionally, to
872         persist this setting across reboots, add
873         <literal>hw.vmm.vmx.use_apic_pir=0</literal> to
874         <filename>/etc/sysctl.conf</filename>.</para>
875
876       <para revision="260582">Unmapped IO support has been added to
877         &man.virtio_blk.4;.</para>
878
879       <para revision="260583">Unmapped IO support has been added to
880         &man.virtio_scsi.4;.</para>
881
882       <para revision="260847">The &man.virtio_random.4; driver has
883         been added to harvest entropy from the host system.</para>
884
885       <para revision="261504">&os;/&arch.i386; guests can be run under
886         bhyve.</para>
887
888       <para revision="267536" contrib="sponsor"
889         sponsor="&citrix.rd;">Support for running a &os;/&arch.amd64;
890         <application>Xen</application> guest instance as
891         <acronym>PVH</acronym> guest has been added.
892         <acronym>PVH</acronym> mode, short for <quote>Para-Virtualized
893           Hardware</quote>, uses para-virtualized drivers for boot and
894         I/O, and uses hardware virtualization extensions for all other
895         tasks, without the need for emulation.</para>
896
897       <para revision="273515">The &man.virtio.console.4; driver has
898         been added, which provides an interface to VirtIO console
899         devices through a &man.tty.4; device.</para>
900
901       <para revision="279957">The &man.bhyve.8; hypervisor has been
902         updated to support <literal>DSM TRIM</literal> commands for
903         virtual <acronym>AHCI</acronym> disks.</para>
904
905       <para revision="281439" arch="arm">Support for the
906         <application>QEMU</application> <literal>virt</literal> system
907         has been added.</para>
908     </sect2>
909
910     <sect2 xml:id="hardware-arm">
911       <title>ARM Support</title>
912
913       <para revision="260921">The &man.nand.4; device is enabled for
914         ARM devices by default.</para>
915
916       <para revision="273264" arch="armv6">An issue that could cause
917         instability when detecting <acronym>SD</acronym> cards on the
918         Raspberry Pi <acronym>SOC</acronym> has been fixed.</para>
919
920       <para revision="275963">The <literal>bcm2835_cpufreq</literal>
921         driver has been added, which supports <acronym>CPU</acronym>
922         frequency and voltage control on the Raspberry Pi
923         <acronym>SOC</acronym>.</para>
924
925       <para revision="280259" contrib="sponsor" sponsor="&ff;">Initial
926         support for the ARM AArch64 architecture has been
927         added.</para>
928     </sect2>
929   </sect1>
930
931   <sect1 xml:id="storage">
932     <title>Storage</title>
933
934     <para>This section covers changes and additions to file systems
935       and other storage subsystems, both local and networked.</para>
936
937     <sect2 xml:id="storage-general">
938       <title>General Storage</title>
939
940       <para revision="278037" contrib="sponsor" sponsor="&ix;">The
941         &man.ctl.4; <acronym>LUN</acronym> mapping has been rewritten,
942         replacing <acronym>iSCSI</acronym>-specific mapping mechanisms
943         with a new mechanism that works for any port.</para>
944
945       <para revision="278354" contrib="sponsor" sponsor="&ix;">The
946         &man.ctld.8; utility has been updated to allow controlling
947         non-<acronym>iSCSI</acronym> &man.ctl.4; ports.</para>
948     </sect2>
949
950     <sect2 xml:id="storage-net">
951       <title>Networked Storage</title>
952
953       <para revision="270096" contrib="sponsor" sponsor="&ff;">The new
954         filesystem automount facility, &man.autofs.5;, has been added.
955         The new &man.autofs.5; facility is similar to that found in
956         other &unix;-like operating systems, such as OS&nbsp;X&trade;
957         and Solaris&trade;.  The &man.autofs.5; facility uses
958         a &sun;-compatible &man.auto.master.5; configuration file, and
959         is administered with the &man.automount.8; userland utility,
960         and the &man.automountd.8; and &man.autounmountd.8;
961         daemons.</para>
962     </sect2>
963
964     <sect2 xml:id="storage-zfs">
965       <title>ZFS</title>
966
967       <para revision="275748">The <literal>arc_meta_limit</literal>
968         statistics are now visible through the
969         <literal>kstat</literal> &man.sysctl.8;.  As a result of this
970         change, the <literal>vfs.zfs.arc_meta_used</literal>
971         &man.sysctl.8; has been removed, and replaced with the
972         <literal>kstat.zfs.misc.arcstats.arc_meta_used</literal>
973         &man.sysctl.8;.</para>
974     </sect2>
975
976     <sect2 xml:id="storage-geom">
977       <title>&man.geom.4;</title>
978
979       <para revision="267359">Support for the
980         <literal>disklabel64</literal> partitioning scheme has been
981         added to &man.gpart.8;.</para>
982     </sect2>
983   </sect1>
984
985   <sect1 xml:id="boot">
986     <title>Boot Loader Changes</title>
987
988     <para>This section covers the boot loader, boot menu, and other
989       boot-related changes.</para>
990
991     <sect2 xml:id="boot-loader">
992       <title>Boot Loader Changes</title>
993
994       <para revision="274085">The &man.vt.4; driver has been made the
995         default system console driver.  The &man.syscons.4; driver is
996         still available, and can be enabled by adding
997         <literal>kern.vty=sc</literal> in &man.loader.conf.5;.
998         Alternatively, &man.syscons.4; can be enabled at boot time by
999         entering <literal>set kern.vty=sc</literal> at the
1000         &man.loader.8; prompt.</para>
1001
1002       <para revision="281616">The boot loader has been updated to
1003         support entering the <acronym>GELI</acronym> passphrase before
1004         loading the kernel.  To enable this behavior, add
1005         <literal>geom_eli_passphrase_prompt="YES"</literal> to
1006         &man.loader.conf.5;.</para>
1007     </sect2>
1008
1009     <sect2 xml:id="boot-menu">
1010       <title>Boot Menu Changes</title>
1011
1012       <para>&nbsp;</para>
1013     </sect2>
1014   </sect1>
1015
1016   <sect1 xml:id="network">
1017     <title>Networking</title>
1018
1019     <para>This section describes changes that affect networking in
1020       &os;.</para>
1021
1022     <sect2 xml:id="network-protocols">
1023       <title>Network Procols</title>
1024
1025       <para revision="263140">Support for the IPX network transport
1026         protocol has been removed, and will not be supported in
1027         &os;&nbsp;11 and later releases.</para>
1028
1029       <para revision="272720" contrib="sponsor"
1030         sponsor="&limelight;">Support for <acronym>PLPMTUD</acronym>
1031         blackhole detection (<acronym>RFC</acronym> 4821) has been
1032         added to the &man.tcp.4; stack, disabled by default.  New
1033         control tunables have been added:</para>
1034
1035       <informaltable frame="none" pgwide="0">
1036         <tgroup cols="2">
1037           <colspec colwidth="1*"/>
1038           <colspec colwidth="1*"/>
1039           <thead>
1040             <row>
1041               <entry>Tunable</entry>
1042               <entry>Description</entry>
1043             </row>
1044           </thead>
1045
1046           <tbody>
1047             <row>
1048               <entry><literal>net.inet.tcp.pmtud_blackhole_detection</literal></entry>
1049               <entry>Enables or disables <acronym>PLPMTUD</acronym>
1050                 blackhole detection</entry>
1051             </row>
1052
1053             <row>
1054               <entry><literal>net.inet.tcp.pmtud_blackhole_mss</literal></entry>
1055               <entry><acronym>MSS</acronym> to try for IPv4</entry>
1056             </row>
1057
1058             <row>
1059               <entry><literal>net.inet.tcp.v6pmtud_blackhole_mss</literal></entry>
1060               <entry><acronym>MSS to try for IPv6</acronym></entry>
1061             </row>
1062           </tbody>
1063         </tgroup>
1064       </informaltable>
1065
1066       <para>New monitoring &man.sysctl.8;s haven been added:</para>
1067
1068       <informaltable frame="none" pgwide="0">
1069         <tgroup cols="2">
1070           <colspec colwidth="1*"/>
1071           <colspec colwidth="1*"/>
1072           <thead>
1073             <row>
1074               <entry>Tunable</entry>
1075               <entry>Description</entry>
1076             </row>
1077           </thead>
1078
1079           <tbody>
1080             <row>
1081               <entry><literal>net.inet.tcp.pmtud_blackhole_activated</literal></entry>
1082               <entry>Number of times the code was activated to attempt
1083                 downshifting the <acronym>MSS</acronym></entry>
1084             </row>
1085
1086             <row>
1087               <entry><literal>net.inet.tcp.pmtud_blackhole_min_activated</literal></entry>
1088               <entry>Number of times the blackhole
1089                 <acronym>MSS</acronym> was used in an attempt to
1090                 downshift</entry>
1091             </row>
1092
1093             <row>
1094               <entry><literal>net.inet.tcp.pmtud_blackhole_failed</literal></entry>
1095               <entry>Number of times that the blackhole failed to
1096                 connect after downshifting the
1097                 <acronym>MSS</acronym></entry>
1098             </row>
1099           </tbody>
1100         </tgroup>
1101       </informaltable>
1102
1103       <para revision="280971" contrib="sponsor"
1104         sponsor="&netflix;, &nginx;">Support for <acronym>IP</acronym>
1105         identification for atomic datagrams (<acronym>RFC</acronym>
1106         6864) has been added.  Support for this feature can be toggled
1107         with the <literal>net.inet.ip.rfc6864</literal>
1108         &man.sysctl.8;, which is enabled by default.</para>
1109     </sect2>
1110   </sect1>
1111
1112   <sect1 xml:id="ports">
1113     <title>Ports Collection and Package Infrastructure</title>
1114
1115     <para>This section covers changes to the &os;&nbsp;Ports
1116       Collection, package infrastructure, and package maintenance and
1117       installation tools.</para>
1118
1119     <sect2 xml:id="ports-infrastructure">
1120       <title>Infrastructure Changes</title>
1121
1122       <para>&nbsp;</para>
1123     </sect2>
1124
1125     <sect2 xml:id="ports-packages ">
1126       <title>Packaging Changes</title>
1127
1128       <para>&nbsp;</para>
1129     </sect2>
1130   </sect1>
1131
1132   <sect1 xml:id="doc">
1133     <title>Documentation</title>
1134
1135     <para>This section covers changes to the &os;&nbsp;Documentation
1136       Project sources and toolchain.</para>
1137
1138     <sect2 xml:id="doc-sources">
1139       <title>Documentation Source Changes</title>
1140
1141       <para>&nbsp;</para>
1142     </sect2>
1143
1144     <sect2 xml:id="doc-toolchain">
1145       <title>Documentation Toolchain Changes</title>
1146
1147       <para>&nbsp;</para>
1148     </sect2>
1149   </sect1>
1150
1151   <sect1 xml:id="releng">
1152     <title>Release Engineering and Integration</title>
1153
1154     <para>This section convers changes that are specific to the
1155       &os;&nbsp;Release Engineering processes.</para>
1156
1157     <sect2 xml:id="releng-changes">
1158       <title>Integration Changes</title>
1159
1160       <para revision="277458" contrib="sponsor" sponsor="&ff;">The
1161         Release Engineering build tools have been updated to include
1162         support for producing virtual machine disk images for various
1163         cloud hosting providers.</para>
1164
1165       <para revision="278926">The Release Engineering build tools have
1166         been updated to use multi-threaded &man.xz.1;.  By default,
1167         the number of &man.xz.1; threads is set to the number of cores
1168         available.</para>
1169     </sect2>
1170   </sect1>
1171 </article>