Add ELF Tool Chain's ar(1) and elfdump(1) to contrib
[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: 284814 -->
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="266209">The &man.pmcstat.8; utility has been
224         updated to include a new flag, <literal>-l</literal>, which
225         ends event collection after the specified number of
226         seconds.</para>
227
228       <para revision="270745">The &man.ps.1; utility has been updated
229         to include a new keyword, <quote>tracer</quote>, which
230         displays the <acronym>PID</acronym> of the tracing
231         process.</para>
232
233       <para revision="271482">Support for adding empty partitions has
234         been added to the &man.mkimg.1; utility.</para>
235
236       <para revision="272166">The &man.primes.6; utility has been
237         updated to correctly enumerate prime numbers between
238         <literal>4295098369</literal> and
239         <literal>3825123056546413050</literal>, which prior to this
240         change, it would be possible for returned values to be
241         incorrectly identified as prime numbers.</para>
242
243       <para revision="272198">The &man.mkimg.1; utility has been
244         updated to include three options used to print information
245         about &man.mkimg.1; itself:</para>
246
247       <informaltable frame="none" pgwide="0">
248         <tgroup cols="2">
249           <colspec colwidth="1*"/>
250           <colspec colwidth="1*"/>
251           <thead>
252             <row>
253               <entry>Option</entry>
254               <entry>Output</entry>
255             </row>
256           </thead>
257
258           <tbody>
259             <row>
260               <entry><literal>--version</literal></entry>
261               <entry>The current version of the &man.mkimg.1;
262                 utility</entry>
263             </row>
264
265             <row>
266               <entry><literal>--formats</literal></entry>
267               <entry>The disk image file formats supported by
268                 &man.mkimg.1;</entry>
269             </row>
270
271             <row>
272               <entry><literal>--schemes</literal></entry>
273               <entry>The partition schemes supported by
274                 &man.mkimg.1;</entry>
275             </row>
276           </tbody>
277         </tgroup>
278       </informaltable>
279
280       <para revision="272488">Userland &man.ctf.5; support in
281         &man.dtrace.1; has been added.  With this change,
282         &man.dtrace.1; is able to resolve type info for function and
283         <acronym>USDT</acronym> probe arguments, and function return
284         values.</para>
285
286       <para revision="274960">The &man.elfdump.1; utility has been
287         updated to support capability mode provided by
288         &man.capsicum.4;.</para>
289
290       <para revision="275680" contrib="sponsor" sponsor="&ff;">The
291         &man.fstyp.8; utility has been added, which is used to
292         determine the filesystem on a specified device.</para>
293
294       <para revision="276881">The <literal>libedit</literal> library
295         has been updated to support <acronym>UTF</acronym>-8, which
296         additionally provides unicode support to &man.sh.1;.</para>
297
298       <para revision="276893" contrib="sponsor" sponsor="&ff;">The
299         &man.mkimg.1; utility has been updated to support the
300         <acronym>MBR</acronym> <acronym>EFI</acronym> partition
301         type.</para>
302
303       <para revision="277166" arch="powerpc">The &man.ptrace.2; system
304         call has been updated include support for Altivec registers on
305         &os;/&arch.powerpc;.</para>
306
307       <para revision="278320">A new device control utility,
308         &man.devctl.8; has been added, which allows making
309         administrative changes to individual devices, such as
310         attaching and detaching drivers, and enabling and disabling
311         devices.  The &man.devctl.8; utility uses the new
312         &man.devctl.3; library.</para>
313
314       <para revision="279122" contrib="sponsor"
315         sponsor="&juniper;">The &man.netstat.1; utility has been
316         updated to link against the &man.libxo.3; shared
317         library.</para>
318
319       <para revision="279139">A new flag, <literal>-c</literal>, has
320         been added to the &man.mkimg.1; utility, which allows
321         specifying the capacity of the target disk image.</para>
322
323       <para revision="279315" contrib="sponsor" sponsor="&ff;">The
324         &man.uefisign.8; utility has been added.</para>
325
326       <para revision="279571" contrib="sponsor"
327         sponsor="&scaleengine;">The &man.freebsd-update.8; utility has
328         been updated to prevent fetching updated binary patches when
329         a previous upgrade has not been thoroughly completed.</para>
330
331       <para revision="280870">A regression in the &man.libarchive.3;
332         library that would prevent a directory from being included in
333         the archive when <literal>--one-file-system</literal> is used
334         has been fixed.</para>
335
336       <para revision="281311" contrib="sponsor" sponsor="&ff;">The
337         &man.ar.1; utility has been updated to set
338         <literal>ARCHIVE_EXTRACT_SECURE_SYMLINKS</literal> and
339         <literal>ARCHIVE_EXTRACT_SECURE_NODOTDOT</literal> to disallow
340         directory traversal when extracting an archive, similar to
341         &man.tar.1;.</para>
342
343       <para revision="281617">A race condition in &man.wc.1; that
344         would cause final results to be sent to &man.stderr.4; when
345         receiving the <literal>SIGINFO</literal> signal has been
346         fixed.</para>
347
348       <para revision="282208" contrib="sponsor"
349         sponsor="&multiplay;">The &man.chflags.1;, &man.chgrp.1;,
350         &man.chmod.1;, and &man.chown.8; utilities now affect symbolic
351         links when the <literal>-R</literal> flag is specified, as
352         documented in &man.symlink.7;.</para>
353
354       <para revision="282608">The &man.date.1; utility has been
355         updated to print the modification time of the file passed as
356         an argument to the <literal>-r</literal> flag, improving
357         compatibility with the <acronym>GNU</acronym> &man.date.1;
358         utility behavior.</para>
359
360       <para revision="283961">The &man.pw.8; utility has been updated
361         with a new flag, <literal>-R</literal>, that sets the root
362         directory within which the utility will operate.</para>
363
364       <para revision="284297" contrib="sponsor"
365         sponsor="&clusterhq;">The &man.lockstat.1; utility has been
366         updated with several improvements:</para>
367
368       <itemizedlist>
369         <listitem>
370           <para>Spin locks are now reported as the amount of time
371             spinning, instead of loop iterations.</para>
372         </listitem>
373
374         <listitem>
375           <para>Reader locks are now recognized as adaptive that can
376             spin on &os;.</para>
377         </listitem>
378
379         <listitem>
380           <para>Lock aquisition events for successful reader try-lock
381             events are now reported.</para>
382         </listitem>
383
384         <listitem>
385           <para>Spin and block events are now reported before lock
386             acquisition events.</para>
387         </listitem>
388       </itemizedlist>
389
390       <para revision="284589" contrib="sponsor"
391         sponsor="&scaleengine;">The &man.fstyp.8; utility has been
392         updated to be able to detect &man.zfs.8; and &man.geli.8;
393         filesystems.</para>
394
395       <para revision="285550">The &man.w.1; utility has been updated
396         to display the full IPv6 remote address of the host from which
397         a user is connected.</para>
398     </sect2>
399
400     <sect2 xml:id="userland-contrib">
401       <title>Contributed Software</title>
402
403       <para revision="258884" contrib="sponsor"
404         sponsor="&darpa_afrl;">&man.lldb.1; has been updated to
405         upstream snapshot version r196259.</para>
406
407       <para revision="260445">&man.byacc.1; has been updated to
408         version 20140101.</para>
409
410       <para revision="261071">&man.jemalloc.3; has been updated to
411         version 3.5.0.</para>
412
413       <para revision="261283"><application>libc++</application> has
414         been updated to version 3.4.</para>
415
416       <para revision="261320"><application>OpenSSH</application> has
417         been updated to 6.5p1.</para>
418
419       <para revision="261344"><application>mdocml</application> has
420         been updated to version 1.12.3.</para>
421
422       <para revision="261991"><application>LLVM</application> and
423         <application>Clang</application> have been updated to
424         version 3.4.</para>
425
426       <para revision="275718">The <application>binutils</application>
427         suite of utilities has been updated to include upstream
428         patches that add new relocations for &arch.powerpc;
429         support.</para>
430
431       <para revision="276398" contrib="sponsor" sponsor="&ff;">The
432         <application>ELF Tool Chain</application> has been updated to
433         upstream revision r3136.</para>
434
435       <para revision="276551">The <application>texinfo</application>
436         utility and <literal>info</literal> pages were removed from
437         the base system.  The <filename
438           role="package">print/texinfo</filename> port should be
439         installed on systems where <literal>info</literal> pages are
440         needed.</para>
441
442       <para revision="276796" contrib="sponsor" sponsor="&ff;">The ELF
443         object manipulation tools
444         <application>addr2line</application>,
445         <application>elfcopy (strip)</application>,
446         <application>nm</application>,
447         <application>readelf</application>,
448         <application>size</application>, and
449         <application>strings</application> were switched to the
450         versions from the ELF Tool Chain project.</para>
451
452       <para revision="276881">The <literal>libedit</literal> library
453         has been updated to include <acronym>UTF-8</acronym> support,
454         adding <acronym>UTF-8</acronym> support to the &man.sh.1;
455         shell.</para>
456
457       <para revision="278433">The &man.xz.1; utility has been updated
458         to support multi-threaded compression.</para>
459
460       <para revision="280932" contrib="sponsor" sponsor="&ff;">The
461         <application>elftoolchain</application> utilities have been
462         updated to version 3179.</para>
463
464       <para revision="281316">The &man.xz.1; utility has been updated
465         to version 5.2.1.</para>
466
467       <para revision="281373">The &man.nvi.1; utility has been updated
468         to version 2.1.3.</para>
469
470       <para revision="281806">The &man.wpa.supplicant.8; and
471         &man.hostapd.8; utilities have been updated to version
472         2.4.</para>
473
474       <para revision="282089">The &man.unbound.8; utility has been
475         updated to version 1.5.3.</para>
476
477       <para revision="282434" contrib="sponsor" sponsor="&ff;">The
478         &man.resolvconf.8; utility has been updated to version
479         3.7.0.</para>
480
481       <para revision="282613">The &man.nc.1; utility has been updated
482         to the OpenBSD 5.7 version.</para>
483
484       <para revision="283092">The &man.acpi.4; subsystem has been
485         updated to version 20150515.</para>
486
487       <para revision="284237">The &man.file.1; utility has been
488         updated to version 5.23.</para>
489
490       <para revision="284254"><application>bmake</application> has
491         been updated to version 20150606.</para>
492
493       <para revision="284397">Timezone data files have been updated to
494         version 2015e.</para>
495
496       <para revision="285229"><application>sendmail</application> has
497         been updated to 8.15.2.  Starting with &os;&nbsp;11.0 and
498         sendmail 8.15, sendmail uses uncompressed IPv6 addresses by
499         default, i.e., they will not contain <quote>::</quote>.  For
500         example, instead of <quote>::1</quote>, it will be
501         <quote>0:0:0:0:0:0:0:1</quote>.  This permits a zero subnet to
502         have a more specific match, such as different map entries for
503         IPv6:0:0 versus IPv6:0.  This change requires that
504         configuration data (including maps, files, classes, custom
505         ruleset, etc.) must use the same format, so make certain such
506         configuration data is upgrading.  As a very simple check
507         search for patterns like 'IPv6:[0-9a-fA-F:]*::' and 'IPv6::'.
508         To return to the old behavior, set the m4 option
509         <literal>confUSE_COMPRESSED_IPV6_ADDRESSES</literal> or the cf
510         option <literal>UseCompressedIPv6Addresses</literal>.</para>
511
512       <para revision="285329"><application>OpenSSL</application> has
513         been updated to version 1.0.1p.</para>
514
515       <para revision="285642" contrib="sponsor" sponsor="&dell;">The
516         &man.ssh.1; utility has been updated to re-implement hostname
517         canonicalization before locating the host in
518         <filename>known_hosts</filename>.</para>
519     </sect2>
520
521     <sect2 xml:id="userland-installer">
522       <title>Installation and Configuration Tools</title>
523
524       <para revision="271539">The &man.bsdinstall.8; partition editor
525         and &man.sade.8; utility have been updated to include native
526         <acronym>ZFS</acronym> support.</para>
527
528       <para revision="272274">The &os; installation utility,
529         &man.bsdinstall.8;, has been updated to set the
530         <literal>canmount</literal> &man.zfs.8; property to
531         <literal>off</literal> for the <filename
532           class="directory">/var</filename> dataset, preventing the
533         contents of directories within <filename
534           class="directory">/var</filename> from conflicting when
535         using multiple boot environments, such as that provided by
536         <filename role="package">sysutils/beadm</filename>.</para>
537
538       <para revision="274394">The &man.bsdconfig.8; utility has been
539         updated to skip the initial &man.tzsetup.8;
540         <acronym>UTC</acronym> versus wall-clock time prompt when run
541         in a virtual machine, determined when the
542         <literal>kern.vm_guest</literal> &man.sysctl.8; is set to
543         <literal>1</literal>.</para>
544
545       <para revision="275874">The &man.bsdinstall.8; utility has been
546         updated to use the new &man.dpv.3; library to display progress
547         when extracting the &os; distributions.</para>
548
549       <para revision="285557" contrib="sponsor"
550         sponsor="&scaleengine;">Support for detecting and implementing
551         aligning partitions on 1Mb boundaries has been added to
552         &man.bsdinstall.8;.</para>
553
554       <para revision="285679" contrib="sponsor"
555         sponsor="&scaleengine;">Support for detecting and implementing
556         a workaround for various laptops and motherboards that do not
557         boot properly from <acronym>GPT</acronym>-partitioned disks
558         has been added to &man.bsdinstall.8;.  Additionally, the
559         <literal>active</literal> flag will be set on the partition
560         when needed.</para>
561
562       <para revision="285679" contrib="sponsor"
563         sponsor="&scaleengine;">Support for selecting the partitioning
564         scheme when installing on the <acronym>UFS</acronym>
565         filesystem has been added to &man.bsdinstall.8;.</para>
566     </sect2>
567
568     <sect2 xml:id="userland-rc">
569       <title><filename class="directory">/etc/rc.d</filename>
570         Scripts</title>
571
572       <para revision="270676">The &man.rc.8; subsystem has been
573         updated to allow configuring services in <filename
574           class="directory">&dollar;{LOCALBASE}/etc/rc.conf.d/</filename>.
575         If <literal>LOCALBASE</literal> is unset, it defaults to
576         <filename class="directory">/usr/local</filename>.</para>
577
578       <para revision="273955">A new &man.rc.8; script,
579         <filename>growfs</filename>, has been added, which will resize
580         the root filesystem on boot if <filename>/firstboot</filename>
581         exists.</para>
582
583       <para revision="275299">The <filename>mrouted</filename>
584         &man.rc.8; script has been removed from the base system.  An
585         equivalent script is available from the <filename
586           role="package">net/mrouted</filename> port.</para>
587
588       <para revision="279463" contrib="sponsor"
589         sponsor="&sandvine;">A new &man.rc.8; script,
590         <filename>iovctl</filename>, has been added, which allows
591         automatically starting the &man.iovctl.8; utility at
592         boot.</para>
593     </sect2>
594
595     <sect2 xml:id="userland-periodic">
596       <title><filename class="directory">/etc/periodic</filename>
597         Scripts</title>
598
599       <para revision="271321">The daily &man.periodic.8; script
600         <filename>110.clean-tmps</filename> has been updated to avoid
601         crossing filesystem mount boundaries when cleaning files in
602         <filename class="directory">/tmp</filename>.</para>
603
604       <para revision="277216" contrib="sponsor" sponsor="&ff;">A new
605         &man.periodic.8; script,
606         <filename>510.status-world-kernel</filename>, has been added,
607         which evaluates the running userland and kernel versions from
608         the &man.uname.1; <literal>-U</literal> and
609         <literal>-K</literal> arguments, and prints an error if the
610         system userland and kernel are not in sync.</para>
611     </sect2>
612
613     <sect2 xml:id="userland-libraries">
614       <title>Runtime Libraries and API</title>
615
616       <para revision="265995">The Blowfish &man.crypt.3; default
617         format has been changed to
618         <literal>&dollar;2b&dollar;</literal>.</para>
619
620       <para revision="268461">The &man.readline.3; library is now
621         statically linked in software within the base system, and the
622         shared library is no longer installed, allowing the Ports
623         Collection to use a modern version of the library.</para>
624
625       <para revision="272273">The &man.strptime.3; library has been
626         updated to add support for <acronym>POSIX</acronym>-2001
627         features <literal>%U</literal> and
628         <literal>%W</literal>.</para>
629
630       <para revision="272842,272848" contrib="sponsor"
631         sponsor="&ff;">The &man.dl.iterate.phdr.3; library has been
632         changed to always return the path name of the
633         <acronym>ELF</acronym> object in the
634         <literal>dlpi_name</literal> structure member.</para>
635
636       <para revision="273562" contrib="sponsor"
637         sponsor="&juniper;">The &man.libxo.3; library has been
638         imported to the base system.</para>
639
640       <para revision="273806" contrib="sponsor" sponsor="&chelsio;">A
641         userland library for Chelsio Terminator 5 based iWARP cards
642         has been added, allowing userland <acronym>RDMA</acronym>
643         applications to work over compatible
644         <acronym>NIC</acronym>s.</para>
645
646       <para revision="274987">The &man.gpio.3; library has been added,
647         providing a wrapper around the &man.gpio.4; kernel
648         interface.</para>
649
650       <para revision="275800" contrib="sponsor" sponsor="&ff;">The
651         &man.procctl.2; system call has been updated to include
652         a facility for non-&man.init.8; processes to be declared as
653         the reaper of child processes and their decendants.</para>
654
655       <para revision="277610">The <literal>futimens()</literal> and
656         <literal>utimensat()</literal> system calls have been
657         added.  See &man.utimensat.2; for more information.</para>
658
659       <para revision="278934">The &man.elf.3; compile-time dependency
660         has been removed from <filename>dtri.o</filename>, which
661         allows adding <application>DTrace</application> probes to
662         userland applications and libraries without also linking
663         against &man.elf.3;.</para>
664
665       <para revision="279186">The &man.setmode.3; function has been
666         updated to consistently set <literal>errno</literal> on
667         failure.</para>
668
669       <para revision="279663">The &man.qsort.3; functions have been
670         updated to be able to handle 32-bit aligned data on 64-bit
671         platforms, also providing a significant improvement in 32-bit
672         workloads.</para>
673
674       <para revision="281130">Several standard include headers have
675         been updated to use of <application>gcc</application>
676         attributes, such as <literal>__result_use_check()</literal>,
677         <literal>__alloc_size()</literal>, and
678         <literal>__nonnull()</literal>.</para>
679
680       <para revision="281845">Support for file verification in
681         <acronym>MAC</acronym> has been added.</para>
682
683       <para revision="282973" contrib="sponsor" sponsor="&ff;">The
684         <literal>libgomp</literal> library is now only built when
685         building <acronym>GCC</acronym> from the base system.  An
686         up-to-date version is available in the Ports Collection as
687         <filename
688           role="package">devel/libiomp5-devel</filename>.</para>
689
690       <para revision="282988">The <filename>stdlib.h</filename> and
691         <filename>malloc.h</filename> headers have been updated to
692         make use of the <application>gcc</application>
693         <literal>alloc_align()</literal> attribute.</para>
694
695       <para revision="284483" contrib="sponsor"
696         sponsor="&scaleengine;">The Blowfish &man.crypt.3; library
697         has been updated to support &dollar;2y&dollar; hashes.</para>
698     </sect2>
699
700     <sect2 xml:id="userland-abi">
701       <title>ABI Compatibility</title>
702
703       <para revision="271982">The &linux; compatibility version has
704         been updated to <literal>2.6.18</literal>.  The
705         <literal>compat.linux.osrelease</literal> &man.sysctl.8; is
706         evaluated when building the <filename
707           role="package">emulators/linux-c6</filename> and related
708         ports.</para>
709     </sect2>
710   </sect1>
711
712   <sect1 xml:id="kernel">
713     <title>Kernel</title>
714
715     <para>This section covers changes to kernel configurations, system
716       tuning, and system control parameters that are not otherwise
717       categorized.</para>
718
719     <sect2 xml:id="kernel-bugfix">
720       <title>Kernel Bug Fixes</title>
721
722       <para revision="265876">A kernel bug that inhibited proper
723         functionality of the <literal>dev.cpu.0.freq</literal>
724         &man.sysctl.8; on &intel; processors with Turbo
725         Boost&nbsp;&trade; enabled has been fixed.</para>
726
727       <para revision="271697" arch="powerpc">Support for
728         &man.dtrace.1; stack tracing has been fixed for
729         &os;/&arch.powerpc;, using the <literal>trapexit()</literal>
730         and <literal>asttrapexit()</literal> functions instead of
731         checking within addressed kernel space.</para>
732
733       <para revision="271917">A kernel panic triggered when destroying
734         a &man.vnet.9; &man.jail.8; configured with &man.gif.4; has
735         been fixed.</para>
736
737       <para revision="271918">A kernel panic triggered when destroying
738         a &man.vnet.9; &man.jail.8; configured with &man.gre.4; has
739         been fixed.</para>
740
741       <para revision="272089">A bug in &man.ipfw.4; that could
742         potentially lead to a kernel panic when using &man.dummynet.4;
743         at layer 2 has been fixed.</para>
744
745       <para revision="280930" contrib="sponsor" sponsor="&mitail;">The
746         kernel <acronym>RPC</acronym> has been updated to include
747         several enhancements:</para>
748
749       <itemizedlist>
750         <listitem>
751           <para>The 45 MiB limit on requests queued for
752             &man.nfsd.8; threads has been removed.</para>
753         </listitem>
754
755         <listitem>
756           <para>Avoids unnecessary throttling by not deferring
757             accounting for completed requests.</para>
758         </listitem>
759
760         <listitem>
761           <para>Fixes an integer overflow and signedness bugs.</para>
762         </listitem>
763       </itemizedlist>
764
765       <para revision="281261" arch="powerpc">Support for
766         &man.dtrace.1; has been added for the
767         Book-E&nbsp;&trade;.</para>
768     </sect2>
769
770     <sect2 xml:id="kernel-config">
771       <title>Kernel Configuration</title>
772
773       <para revision="266531">The <literal>IMAGACT_BINMISC</literal>
774         kernel configuration option has been enabled by default,
775         which enables application execution through emulators, such
776         as <application>Qemu</application>.</para>
777
778       <para revision="268045">The <literal>VT</literal> kernel
779         configuration file has been removed, and the &man.vt.4;
780         driver is included in the <literal>GENERIC</literal> kernel.
781         To enable &man.vt.4;, enter <literal>set kern.vty=vt</literal>
782         at the &man.loader.8; prompt during boot, or add
783         <literal>kern.vty=vt</literal> to &man.loader.conf.5; and
784         reboot the system.</para>
785
786       <para revision="277904">The &man.config.8; utility has been
787         updated to allow using a non-standard <filename
788           class="directory">src/</filename> tree, specified as an
789         argument to the <literal>-s</literal> flag.</para>
790
791       <para revision="277990" arch="powerpc64">The
792         &os;/&arch.powerpc64; kernel now builds as
793         a position-independent executable, allowing the kernel to be
794         loaded into and run from any physical or virtual
795         address.</para>
796
797       <important>
798         <para>This change requires an update to &man.loader.8;.
799           The userland and kernel must be updated before rebooting the
800           system.</para>
801       </important>
802
803       <para revision="278338" arch="arm">A new module for creating
804         <filename>rpi.dtb</filename> has been added for the Raspberry
805         Pi.</para>
806
807       <para revision="278340" arch="arm">The
808         <filename>rpi.dtb</filename> module is now installed to
809         <filename class="directory">/boot/dtb/</filename> by
810         default for the Raspberry Pi system.</para>
811
812       <para revision="279189" contrib="sponsor" sponsor="&ff;"
813         arch="powerpc">Kernel support for Vector-Scalar eXtension
814         (<acronym>VSX</acronym>) found on POWER7 and POWER8 hardware
815         has been added.</para>
816
817       <para revision="279252" contrib="sponsor" sponsor="&ff;"
818         arch="powerpc">The &man.pmap.9; implementation for 64-bit
819         &powerpc; processors has been overhaulded to improve
820         concurrency.</para>
821
822       <para revision="279824" arch="arm">A new module for creating
823         the <filename>dtb</filename> module for AM335x systems has
824         been added.</para>
825
826       <para revision="281495" contrib="sponsor" sponsor="&ff;">The
827         <literal>PAE_TABLES</literal> kernel configuration option has
828         been added for &os;/&arch.i386;, which instructs &man.pmap.9;
829         to use <acronym>PAE</acronym> format for page tables while
830         maintaining a 32-bit physical address size elsewhere in the
831         kernel.  The use of this option can enhance application-level
832         security by enabling the creation of <quote>no execute</quote>
833         mappings on modern &arch.i386; processors.  Unlike the
834         <literal>PAE</literal> option, <literal>PAE_TABLES</literal>
835         preserves kernel binary interface (<acronym>KBI</acronym>)
836         compatibility with non-<literal>PAE</literal> kernels,
837         allowing non-<literal>PAE</literal> kernel modules and drivers
838         to work with a <literal>PAE_TABLES</literal>-enabled kernel.
839         Additionally, system limits are tuned for 4GB maximum
840         <acronym>RAM</acronym>, avoiding kernel virtual address space
841         (<acronym>KVA</acronym>) exhaustion.</para>
842
843       <para revision="282215">The <literal>SIFTR</literal> kernel
844         configuration has been added, allowing building &man.siftr.4;
845         statically into the kernel.</para>
846
847       <para revision="282731" arch="arm">The &arch.arm; boot loader,
848         <filename>ubldr</filename>, is now relocatable.  In addition,
849         <filename>ubldr.bin</filename> is now created during build
850         time, which is a stripped binary with an entry point of
851         <literal>0</literal>, providing the ability to specify the
852         load address by running <literal>go
853           &dollar;{loadaddr}</literal> in
854         <literal>u-boot</literal>.</para>
855
856       <para revision="282921" contrib="sponsor" sponsor="&intelcorp;"
857         arch="amd64,i386">The &man.nvd.4; and &man.nvme.4; drivers are
858         now included in the <filename>GENERIC</filename> kernel
859         configuration by default.</para>
860
861       <para revision="283959" contrib="sponsor"
862         sponsor="&limelight;">A new kernel configuration option,
863         <literal>EM_MULTIQUEUE</literal>, has been added which enables
864         multi-queue support in the &man.em.4; driver.</para>
865
866       <note>
867         <para>Multi-queue support in the &man.em.4; driver is not
868           officially supported by &intel;.</para>
869       </note>
870     </sect2>
871
872     <sect2 xml:id="kernel-sysctl">
873       <title>System Tuning and Controls</title>
874
875       <para revision="275140" contrib="sponsor" sponsor="&ff;">The
876         &man.hwpmc.4; default and maximum callchain depths have been
877         increased.  The default has been increased from 16 to 32, and
878         the maximum increased from 32 to 128.</para>
879
880       <para revision="279361">The <literal>kern.osrelease</literal>
881         and <literal>kern.osreldate</literal> are now configurable
882         &man.jail.8; parameters.</para>
883
884       <para revision="280308,280949" contrib="sponsor"
885         sponsor="&ix;, &ff;">The &man.devfs.5; device filesystem has
886         been changed to update timestamps for read/write operations
887         using seconds precision.  A new &man.sysctl.8;,
888         <literal>vfs.devfs.dotimes</literal> has been added, which
889         when set to a non-zero value, enables default precision
890         timestamps for these operations.</para>
891
892       <para revision="282213" contrib="sponsor" sponsor="&ff;">A new
893         &man.sysctl.8;, <literal>kern.racct.enable</literal>, has been
894         added, which when set to a non-zero value allows using
895         &man.rctl.8; with the <literal>GENERIC</literal> kernel.
896         A new kernel configuration option,
897         <literal>RACCT_DISABLED</literal> has also been added.</para>
898
899       <para revision="282901" contrib="sponsor" sponsor="&ff;">The
900         <literal>GENERIC</literal> kernel configuration now includes
901         <literal>RACCT</literal> and <literal>RCTL</literal> by
902         default.</para>
903
904       <note>
905         <para>To enable <literal>RACCT</literal> and
906           <literal>RCTL</literal> on a system using the
907           <literal>GENERIC</literal> kernel configuration, add
908           <literal>kern.racct.enable=1</literal> to
909           &man.loader.conf.5;, and reboot the system.</para>
910       </note>
911
912       <para revision="283136" contrib="sponsor"
913         sponsor="&limelight;">A new &man.sysctl.8;,
914         <literal>net.inet.tcp.hostcache.purgenow</literal>, has
915         been added, which when set to <literal>1</literal> during
916         runtime will flush all
917         <literal>net.inet.tcp.hostcache</literal> entries.</para>
918     </sect2>
919   </sect1>
920
921   <sect1 xml:id="drivers">
922     <title>Devices and Drivers</title>
923
924     <para>This section covers changes and additions to devices and
925       device drivers since &release.prev;.</para>
926
927     <sect2 xml:id="drivers-device">
928       <title>Device Drivers</title>
929
930       <para revision="260903">Support for GPS ports has been added to
931         &man.uhso.4;.</para>
932
933       <para revision="265132">The &man.full.4; device has been added,
934         and the <literal>lindev(4)</literal> device has been removed.
935         Prior to this change, <literal>lindev(4)</literal> provided
936         only the <filename>/dev/full</filename> character device,
937         returning <literal>ENOSPC</literal> on write attempts.  As
938         this device is not specific to &linux;, a native &os; version
939         has been added.</para>
940
941       <para revision="271705">Hardware context support has been
942         added to the <literal>drm/i915</literal> driver, adding
943         support for <application>Mesa</application> 9.2 and
944         later.</para>
945
946       <para revision="273178">The &man.vt.4; driver has been updated,
947         replacing the bitmapped <literal>kern.vt.spclkeys</literal>
948         &man.sysctl.8; with individual
949         <literal>kern.vt.kbd_*</literal> variants.</para>
950
951       <para revision="273598">The &man.hpet.4; driver has been updated
952         to create a
953         <filename>/dev/hpet<replaceable>N</replaceable></filename>
954         device, providing access to <acronym>HPET</acronym> from
955         userspace.</para>
956
957       <para revision="280183">The <literal>drm</literal> code has
958         been updated to match &linux; version 3.8.13.</para>
959
960       <para revision="281440">The &man.psm.4; driver has been updated
961         to include improved support for newer Synaptics&nbsp;&reg;
962         touchpads and the ClickPad&nbsp;&reg; mouse on newer
963         Lenovo&nbsp;&trade; laptops.</para>
964
965       <para revision="282783" arch="powerpc">Support for the Freescale
966         <acronym>PCI</acronym> Root Complex device has been
967         added.</para>
968     </sect2>
969
970     <sect2 xml:id="drivers-storage">
971       <title>Storage Drivers</title>
972
973       <para revision="265236" contrib="sponsor"
974         sponsor="&lsi;, &spectralogic;" sponsorurl="">The &man.mpr.4;
975         device has been added, providing support for LSI Fusion-MPT
976         3 12Gb SCSI/SATA controllers.</para>
977
978       <para revision="265555" contrib="sponsor"
979           sponsor="&lsi;">The &man.mrsas.4; driver has been added,
980         providing support for LSI MegaRAID SAS controllers.  The
981         &man.mfi.4; driver will attach to the controller, by default.
982         To enable &man.mrsas.4; add
983         <literal>hw.mfi.mrsas_enable=1</literal> to
984         <filename>/boot/loader.conf</filename>, which turns off
985         &man.mfi.4; device probing.</para>
986
987       <note>
988         <para>At this time, the &man.mfiutil.8; utility and the &os;
989           version of <application>MegaCLI</application> and
990           <application>StorCli</application> do not work with
991           &man.mrsas.4;.</para>
992       </note>
993
994       <para revision="275461" contrib="sponsor" sponsor="&ix;">The
995         &man.ctl.4; subsystem has been updated, increasing the ports
996         limit from <literal>128</literal> to <literal>256</literal>,
997         and <acronym>LUN</acronym> limit from <literal>256</literal>
998         to <literal>1024</literal>.</para>
999
1000       <para revision="276526">The <literal>asr(4)</literal> driver has
1001         been removed, and is no longer supported.</para>
1002
1003       <para revision="281387">The &man.hptnr.4; driver has been
1004         updated to version 1.1.1.</para>
1005     </sect2>
1006
1007     <sect2 xml:id="drivers-network">
1008       <title>Network Drivers</title>
1009
1010       <para revision="258830">Support for Broadcom chipsets BCM57764,
1011         BCM57767, BCM57782, BCM57786 and BCM57787 has been added to
1012         &man.bge.4;.</para>
1013
1014       <para revision="260448">Support for the &intel; Centrino&trade;
1015         Wireless-N 135 chipset has been added.</para>
1016
1017       <para revision="260552">Firmware for &intel; Centrino&trade;
1018         Wireless-N 105 devices has been added to the base
1019         system.</para>
1020
1021       <para revision="261975">The deprecated nve(4) driver has been
1022         removed.  Users of NVIDIA nForce MCP network adapters are
1023         advised to use the &man.nfe.4; driver instead, which has been
1024         the default driver for this hardware since
1025         &os;&nbsp;7.0.</para>
1026
1027       <para revision="264601" contrib="sponsor"
1028         sponsor="&darpa_afrl;">The <literal>if_nf10bmac(4)</literal>
1029         device has been added, providing support for NetFPGA-10G
1030         Embedded CPU Ethernet Core.</para>
1031
1032       <note>
1033         <para>The <literal>if_nf10bmac(4)</literal> driver operates on
1034           the FPGA, and is not suited for the PCI host
1035           interface.</para>
1036       </note>
1037
1038       <para revision="265348" contrib="sponsor"
1039         sponsor="&netgate;">The &man.ath.hal.4; driver has been
1040         updated to support the Atheros AR1111 chipset.</para>
1041
1042       <para revision="266770">Support for the &intel; Centrino&trade;
1043         Wireless-N 105 chipset has been added.</para>
1044
1045       <para revision="266757" contrib="sponsor"
1046         sponsor="&chelsio;">Support for the &man.cxgbe.4; Terminator
1047         5 (T5) 10G/40G cards has been added to &man.netmap.4;.</para>
1048
1049       <para revision="272730">The &man.alc.4; driver has been updated
1050         to support AR816x and AR817x ethernet controllers.</para>
1051
1052       <para revision="272906">The &man.pf.4; packet filter default hash
1053         has been changed from <literal>Jenkins</literal> to
1054         <literal>Murmur3</literal>, providing a 3-percent performance
1055         increase in packets-per-second.</para>
1056
1057       <para revision="273331">The &man.vxlan.4; driver has been added,
1058         which creates a virtual Layer 2 (Ethernet) network overlaid in
1059         a Layer 3 (IP/UDP) network.  The &man.vxlan.4; driver is
1060         analogous to &man.vlan.4;, but is designed to be better suited
1061         for large, multiple-tenant datacenter environments.</para>
1062
1063       <para revision="274246" contrib="sponsor" sponsor="&yandex;">The
1064         &man.gre.4; driver has been significantly overhauled, and has
1065         been split into two separate modules, &man.gre.4; and
1066         &man.me.4;.</para>
1067
1068       <para revision="278551">The &man.ral.4; driver has been updated
1069         to support the RT5390 and RT5392 chipsets.</para>
1070
1071       <para revision="283514" contrib="sponsor"
1072         sponsor="&solarflare;">The &man.sfxge.4; driver has been
1073         updated to support Solarflare Flareon Ultra 7000-series
1074         chipsets.</para>
1075
1076       <para revision="283766" contrib="sponsor"
1077         sponsor="&limelight;">The &man.em.4; driver has been updated
1078         with improved transmission queue hang detection.</para>
1079
1080       <para revision="284125">The &man.cdce.4; driver has been updated
1081         to include support for the RTL8153 chipset.</para>
1082     </sect2>
1083   </sect1>
1084
1085   <sect1 xml:id="hardware">
1086     <title>Hardware Support</title>
1087
1088     <para>This section covers general hardware support for physical
1089       machines, hypervisors, and virtualization environments, as well
1090       as hardware changes and updates that do not otherwise fit in
1091       other sections of this document.</para>
1092
1093     <sect2 xml:id="hardware-support">
1094       <title>Hardware Support</title>
1095
1096       <para revision="268303">The &man.asmc.4; driver has been
1097         updated to support the &apple;&nbsp;MacMini 3,1.</para>
1098
1099       <para revision="268351">Support for &os;/ia64 has been dropped
1100         as of &os;&nbsp;11.</para>
1101
1102       <para revision="274386">An issue that could cause a system to
1103         hang when entering <acronym>ACPI</acronym>
1104         <literal>S3</literal> state (suspend to
1105         <acronym>RAM</acronym>) has been corrected in the &man.acpi.4;
1106         and &man.pci.4; drivers.</para>
1107
1108       <para revision="274733" arch="powerpc">The power management unit
1109         subsystem has been updated to support power button events on
1110         certain &arch.powerpc; hardware, such as aluminum
1111         PowerBook&nbsp;&reg;.</para>
1112
1113       <para revision="275171,275190" arch="powerpc">The &man.hwpmc.4;
1114         driver has been updated to correct performance counter
1115         sampling on G4 (MPC74xxx) and G5 class processors.</para>
1116
1117       <para revision="275732" contrib="sponsor"
1118         sponsor="&ff;,&netgate;">The
1119         <application>OpenCrypto</application> framework has been
1120         updated to include <literal>AES-ICM</literal> and
1121         <literal>AES-GCM</literal> modes, both of which have also been
1122         added to the &man.aesni.4; driver.</para>
1123
1124       <para revision="281713" arch="powerpc">The &man.hwpmc.4;
1125         driver has been updated to support the Freescale e500
1126         core.</para>
1127
1128       <para revision="283766">The &man.ig4.4; driver has been added,
1129         providing support for the fourth generation &intel;
1130         <acronym>I2C</acronym> SMBus.</para>
1131
1132       <para>The &man.uart.4; driver has been updated to support
1133         <acronym>AMT</acronym> devices on newer systems.</para>
1134     </sect2>
1135
1136     <sect2 xml:id="hardware-virtualization">
1137       <title>Virtualization Support</title>
1138
1139       <para revision="260410">Support for the <quote>Virtual Interrupt
1140           Delivery</quote> feature of &intel;&nbsp;VT-x is enabled if
1141         supported by the CPU.  This feature can be disabled by running
1142         <literal>sysctl hw.vmm.vmx.use_apic_vid=0</literal>.
1143         Additionally, to persist this setting across reboots, add
1144         <literal>hw.vmm.vmx.use_apic_vid=0</literal> to
1145         <filename>/etc/sysctl.conf</filename>.</para>
1146
1147       <para revision="260532">Support for <quote>Posted Interrupt
1148           Processing</quote> is enabled if supported by the CPU.  This
1149         feature can be disabled by running <literal>sysctl
1150           hw.vmm.vmx.use_apic_pir=0</literal>.  Additionally, to
1151         persist this setting across reboots, add
1152         <literal>hw.vmm.vmx.use_apic_pir=0</literal> to
1153         <filename>/etc/sysctl.conf</filename>.</para>
1154
1155       <para revision="260582">Unmapped IO support has been added to
1156         &man.virtio_blk.4;.</para>
1157
1158       <para revision="260583">Unmapped IO support has been added to
1159         &man.virtio_scsi.4;.</para>
1160
1161       <para revision="260847">The &man.virtio_random.4; driver has
1162         been added to harvest entropy from the host system.</para>
1163
1164       <para revision="261504">&os;/&arch.i386; guests can be run under
1165         bhyve.</para>
1166
1167       <para revision="267536" contrib="sponsor"
1168         sponsor="&citrix.rd;">Support for running a &os;/&arch.amd64;
1169         <application>Xen</application> guest instance as
1170         <acronym>PVH</acronym> guest has been added.
1171         <acronym>PVH</acronym> mode, short for <quote>Para-Virtualized
1172           Hardware</quote>, uses para-virtualized drivers for boot and
1173         I/O, and uses hardware virtualization extensions for all other
1174         tasks, without the need for emulation.</para>
1175
1176       <para revision="273375">The &man.bhyve.8; hypervisor has been
1177         updated to support &amd; processors with
1178         <acronym>SVM</acronym> and <acronym>AMD-V</acronym> hardware
1179         extensions.</para>
1180
1181       <para revision="273515">The &man.virtio.console.4; driver has
1182         been added, which provides an interface to VirtIO console
1183         devices through a &man.tty.4; device.</para>
1184
1185       <para revision="279957">The &man.bhyve.8; hypervisor has been
1186         updated to support <literal>DSM TRIM</literal> commands for
1187         virtual <acronym>AHCI</acronym> disks.</para>
1188
1189       <para revision="281439" arch="arm">Support for the
1190         <application>QEMU</application> <literal>virt</literal> system
1191         has been added.</para>
1192
1193       <para revision="282212" contrib="sponsor" sponsor="&msostc;">The
1194         Hyper-V&trade; drivers have been updated with several
1195         enhancements:</para>
1196
1197       <itemizedlist>
1198         <listitem>
1199           <para>The &man.hv.vmbus.4; driver now has multi-channel
1200             support.</para>
1201         </listitem>
1202
1203         <listitem>
1204           <para>The &man.hv.storvsc.4; driver now has scatter/gather
1205             support, in addition to performance improvements.</para>
1206         </listitem>
1207
1208         <listitem>
1209           <para>The &man.hv.kvp.4; driver has received several bug
1210             fixes.</para>
1211         </listitem>
1212       </itemizedlist>
1213
1214       <para revision="282274">Support for &man.xen.4; para-virtualized
1215         <literal>domU</literal> kernels has been removed.</para>
1216
1217       <para revision="284746" contrib="sponsor" sponsor="&msostc;">The
1218         &man.hv.netvsc.4; driver has been updated to support checksum
1219         offloading and <acronym>TSO</acronym>.</para>
1220     </sect2>
1221
1222     <sect2 xml:id="hardware-arm">
1223       <title>ARM Support</title>
1224
1225       <para revision="260921">The &man.nand.4; device is enabled for
1226         ARM devices by default.</para>
1227
1228       <para revision="266943" arch="arm">Support for the Exynos 5420
1229         Octa system has been added.</para>
1230
1231       <para revision="267390" arch="arm">The <acronym>SMP</acronym>
1232         option has been enabled for all Exynos 5 systems supported by
1233         &os;.</para>
1234
1235       <para revision="268838" arch="arm">Support for the Toradex
1236         Apalis i.MX6 development board has been added.</para>
1237
1238       <para revision="273264" arch="armv6">An issue that could cause
1239         instability when detecting <acronym>SD</acronym> cards on the
1240         Raspberry Pi <acronym>SOC</acronym> has been fixed.</para>
1241
1242       <para revision="275963">The <literal>bcm2835_cpufreq</literal>
1243         driver has been added, which supports <acronym>CPU</acronym>
1244         frequency and voltage control on the Raspberry Pi
1245         <acronym>SOC</acronym>.</para>
1246
1247       <para revision="277042" arch="arm">Support to turn off the
1248         BeagleBone Black system with the &man.shutdown.8;
1249         <literal>-p</literal> flag or by invoking &man.poweroff.8; has
1250         been added.</para>
1251
1252       <para revision="277644" arch="arm">Audio transmission drivers
1253         have been added for Digital Audio Multiplexer
1254         (<acronym>AUDMUXM</acronym>), Smart Direct Memory Access
1255         Controller (<acronym>SDMA</acronym>), and Syncronous Serial
1256         Interface (<acronym>SSI</acronym>).</para>
1257
1258       <para revision="280259" contrib="sponsor" sponsor="&ff;">Initial
1259         support for the ARM AArch64 architecture has been
1260         added.</para>
1261
1262       <para revision="282779" arch="arm">Kernel support for Thumb-2
1263         userland has been added.</para>
1264
1265       <para revision="282827">Support for the hardware power button
1266         on the BeagleBone Black system has been added.</para>
1267
1268       <para revision="284273" contrib="sponsor"
1269         sponsor="&ff;">Initial
1270         <acronym>ACPI</acronym> support has been added for
1271         &os;/&arch.arm64;.</para>
1272     </sect2>
1273   </sect1>
1274
1275   <sect1 xml:id="storage">
1276     <title>Storage</title>
1277
1278     <para>This section covers changes and additions to file systems
1279       and other storage subsystems, both local and networked.</para>
1280
1281     <sect2 xml:id="storage-general">
1282       <title>General Storage</title>
1283
1284       <para revision="278037" contrib="sponsor" sponsor="&ix;">The
1285         &man.ctl.4; <acronym>LUN</acronym> mapping has been rewritten,
1286         replacing <acronym>iSCSI</acronym>-specific mapping mechanisms
1287         with a new mechanism that works for any port.</para>
1288
1289       <para revision="278354" contrib="sponsor" sponsor="&ix;">The
1290         &man.ctld.8; utility has been updated to allow controlling
1291         non-<acronym>iSCSI</acronym> &man.ctl.4; ports.</para>
1292
1293       <para revision="275681" contrib="sponsor" sponsor="&ff;">The
1294         &man.autofs.5; subsystem has been updated to include a new
1295         &man.auto.master.5; map, <literal>-media</literal>, which
1296         allows automatically mounting removable media, such as
1297         <acronym>CD</acronym> drives or <acronym>USB</acronym> flash
1298         drives.</para>
1299
1300       <para revision="279955" contrib="sponsor" sponsor="&ff;">The
1301         &man.autofs.5; subsystem has been updated to include a new
1302         &man.auto.master.5; map, <literal>-noauto</literal>, which
1303         handles &man.fstab.5; entries set to
1304         <literal>noauto</literal>.</para>
1305     </sect2>
1306
1307     <sect2 xml:id="storage-net">
1308       <title>Networked Storage</title>
1309
1310       <para revision="270096" contrib="sponsor" sponsor="&ff;">The new
1311         filesystem automount facility, &man.autofs.5;, has been added.
1312         The new &man.autofs.5; facility is similar to that found in
1313         other &unix;-like operating systems, such as OS&nbsp;X&trade;
1314         and Solaris&trade;.  The &man.autofs.5; facility uses
1315         a &sun;-compatible &man.auto.master.5; configuration file, and
1316         is administered with the &man.automount.8; userland utility,
1317         and the &man.automountd.8; and &man.autounmountd.8;
1318         daemons.</para>
1319
1320       <para revision="273849" contrib="sponsor" sponsor="&ff;">Support
1321         for the <literal>timeo</literal>, <literal>actimeo</literal>,
1322         <literal>noac</literal>, and <literal>proto</literal> options
1323         have been added to &man.mount.nfs.8;.</para>
1324     </sect2>
1325
1326     <sect2 xml:id="storage-zfs">
1327       <title>ZFS</title>
1328
1329       <para revision="275748">The <literal>arc_meta_limit</literal>
1330         statistics are now visible through the
1331         <literal>kstat</literal> &man.sysctl.8;.  As a result of this
1332         change, the <literal>vfs.zfs.arc_meta_used</literal>
1333         &man.sysctl.8; has been removed, and replaced with the
1334         <literal>kstat.zfs.misc.arcstats.arc_meta_used</literal>
1335         &man.sysctl.8;.</para>
1336     </sect2>
1337
1338     <sect2 xml:id="storage-geom">
1339       <title>&man.geom.4;</title>
1340
1341       <para revision="267359">Support for the
1342         <literal>disklabel64</literal> partitioning scheme has been
1343         added to &man.gpart.8;.</para>
1344
1345       <para revision="282465">Support for the
1346         <literal>apple-boot</literal>, <literal>apple-hfs</literal>,
1347         and <literal>apple-ufs</literal> <acronym>MBR</acronym>
1348         partitioning schemes have been added to &man.gpart.8;.</para>
1349     </sect2>
1350   </sect1>
1351
1352   <sect1 xml:id="boot">
1353     <title>Boot Loader Changes</title>
1354
1355     <para>This section covers the boot loader, boot menu, and other
1356       boot-related changes.</para>
1357
1358     <sect2 xml:id="boot-loader">
1359       <title>Boot Loader Changes</title>
1360
1361       <para revision="258431" contrib="sponsor" sponsor="&ff;">The
1362         memory test run at boot time on &os;/&arch.amd64; platforms
1363         has been disabled by default.</para>
1364
1365       <para revision="262955">A new &man.ttys.5; class,
1366         <literal>3wire</literal>, has been added.  This is similar to
1367         the existing terminal classes, but does not have a defined
1368         baudrate.</para>
1369
1370       <para revision="274085">The &man.vt.4; driver has been made the
1371         default system console driver.  The &man.syscons.4; driver is
1372         still available, and can be enabled by adding
1373         <literal>kern.vty=sc</literal> in &man.loader.conf.5;.
1374         Alternatively, &man.syscons.4; can be enabled at boot time by
1375         entering <literal>set kern.vty=sc</literal> at the
1376         &man.loader.8; prompt.</para>
1377
1378       <para revision="279950">Support for <literal>bzipfs</literal>
1379         has been added to the <acronym>EFI</acronym> loader.</para>
1380
1381       <para revision="281616">The boot loader has been updated to
1382         support entering the <acronym>GELI</acronym> passphrase before
1383         loading the kernel.  To enable this behavior, add
1384         <literal>geom_eli_passphrase_prompt="YES"</literal> to
1385         &man.loader.conf.5;.</para>
1386
1387       <para revision="284683" contrib="sponsor" sponsor="&ff;"
1388         arch="arm">The &man.ttys.5; file for &os;/&arch.arm; has been
1389         updated to enable <filename>ttyu1</filename>,
1390         <filename>ttyu2</filename>, and <filename>ttyu3</filename> by
1391         default, if the callin port is an active console port.</para>
1392     </sect2>
1393
1394     <sect2 xml:id="boot-menu">
1395       <title>Boot Menu Changes</title>
1396
1397       <para>&nbsp;</para>
1398     </sect2>
1399   </sect1>
1400
1401   <sect1 xml:id="network">
1402     <title>Networking</title>
1403
1404     <para>This section describes changes that affect networking in
1405       &os;.</para>
1406
1407     <sect2 xml:id="network-protocols">
1408       <title>Network Procols</title>
1409
1410       <para revision="263140">Support for the IPX network transport
1411         protocol has been removed, and will not be supported in
1412         &os;&nbsp;11 and later releases.</para>
1413
1414       <para revision="272720" contrib="sponsor"
1415         sponsor="&limelight;">Support for <acronym>PLPMTUD</acronym>
1416         blackhole detection (<acronym>RFC</acronym> 4821) has been
1417         added to the &man.tcp.4; stack, disabled by default.  New
1418         control tunables have been added:</para>
1419
1420       <informaltable frame="none" pgwide="0">
1421         <tgroup cols="2">
1422           <colspec colwidth="1*"/>
1423           <colspec colwidth="1*"/>
1424           <thead>
1425             <row>
1426               <entry>Tunable</entry>
1427               <entry>Description</entry>
1428             </row>
1429           </thead>
1430
1431           <tbody>
1432             <row>
1433               <entry><literal>net.inet.tcp.pmtud_blackhole_detection</literal></entry>
1434               <entry>Enables or disables <acronym>PLPMTUD</acronym>
1435                 blackhole detection</entry>
1436             </row>
1437
1438             <row>
1439               <entry><literal>net.inet.tcp.pmtud_blackhole_mss</literal></entry>
1440               <entry><acronym>MSS</acronym> to try for IPv4</entry>
1441             </row>
1442
1443             <row>
1444               <entry><literal>net.inet.tcp.v6pmtud_blackhole_mss</literal></entry>
1445               <entry><acronym>MSS to try for IPv6</acronym></entry>
1446             </row>
1447           </tbody>
1448         </tgroup>
1449       </informaltable>
1450
1451       <para>New monitoring &man.sysctl.8;s haven been added:</para>
1452
1453       <informaltable frame="none" pgwide="0">
1454         <tgroup cols="2">
1455           <colspec colwidth="1*"/>
1456           <colspec colwidth="1*"/>
1457           <thead>
1458             <row>
1459               <entry>Tunable</entry>
1460               <entry>Description</entry>
1461             </row>
1462           </thead>
1463
1464           <tbody>
1465             <row>
1466               <entry><literal>net.inet.tcp.pmtud_blackhole_activated</literal></entry>
1467               <entry>Number of times the code was activated to attempt
1468                 downshifting the <acronym>MSS</acronym></entry>
1469             </row>
1470
1471             <row>
1472               <entry><literal>net.inet.tcp.pmtud_blackhole_min_activated</literal></entry>
1473               <entry>Number of times the blackhole
1474                 <acronym>MSS</acronym> was used in an attempt to
1475                 downshift</entry>
1476             </row>
1477
1478             <row>
1479               <entry><literal>net.inet.tcp.pmtud_blackhole_failed</literal></entry>
1480               <entry>Number of times that the blackhole failed to
1481                 connect after downshifting the
1482                 <acronym>MSS</acronym></entry>
1483             </row>
1484           </tbody>
1485         </tgroup>
1486       </informaltable>
1487
1488       <para revision="280971" contrib="sponsor"
1489         sponsor="&netflix;, &nginx;">Support for <acronym>IP</acronym>
1490         identification for atomic datagrams (<acronym>RFC</acronym>
1491         6864) has been added.  Support for this feature can be toggled
1492         with the <literal>net.inet.ip.rfc6864</literal>
1493         &man.sysctl.8;, which is enabled by default.</para>
1494     </sect2>
1495   </sect1>
1496
1497   <sect1 xml:id="ports">
1498     <title>Ports Collection and Package Infrastructure</title>
1499
1500     <para>This section covers changes to the &os;&nbsp;Ports
1501       Collection, package infrastructure, and package maintenance and
1502       installation tools.</para>
1503
1504     <sect2 xml:id="ports-infrastructure">
1505       <title>Infrastructure Changes</title>
1506
1507       <para>&nbsp;</para>
1508     </sect2>
1509
1510     <sect2 xml:id="ports-packages ">
1511       <title>Packaging Changes</title>
1512
1513       <para>&nbsp;</para>
1514     </sect2>
1515   </sect1>
1516
1517   <sect1 xml:id="doc">
1518     <title>Documentation</title>
1519
1520     <para>This section covers changes to the &os;&nbsp;Documentation
1521       Project sources and toolchain.</para>
1522
1523     <sect2 xml:id="doc-sources">
1524       <title>Documentation Source Changes</title>
1525
1526       <para>&nbsp;</para>
1527     </sect2>
1528
1529     <sect2 xml:id="doc-toolchain">
1530       <title>Documentation Toolchain Changes</title>
1531
1532       <para>&nbsp;</para>
1533     </sect2>
1534   </sect1>
1535
1536   <sect1 xml:id="releng">
1537     <title>Release Engineering and Integration</title>
1538
1539     <para>This section convers changes that are specific to the
1540       &os;&nbsp;Release Engineering processes.</para>
1541
1542     <sect2 xml:id="releng-changes">
1543       <title>Integration Changes</title>
1544
1545       <para revision="277458" contrib="sponsor" sponsor="&ff;">The
1546         Release Engineering build tools have been updated to include
1547         support for producing virtual machine disk images for various
1548         cloud hosting providers.</para>
1549
1550       <para revision="278926">The Release Engineering build tools have
1551         been updated to use multi-threaded &man.xz.1;.  By default,
1552         the number of &man.xz.1; threads is set to the number of cores
1553         available.</para>
1554
1555       <para revision="281802" contrib="sponsor" sponsor="&ff;">The
1556         Release Engineering build tools have been updated to include
1557         support for building &os;/&arch.arm64; virtual machine and
1558         memory stick installation images.</para>
1559
1560       <para revision="282693" contrib="sponsor" sponsor="&ff;">The
1561         Release Engineering build tools have been updated to support
1562         building &os;/&arch.arm; images without external utilities for
1563         supported boards where a corresponding
1564         <literal>u-boot</literal> port exists in the Ports
1565         Collection.</para>
1566
1567       <para revision="283307" contrib="sponsor" sponsor="&ff;">The
1568         &os;/&arch.i386; memory stick installation images are now
1569         created using the &man.mkimg.1; utility, matching the way
1570         the &os;/&arch.amd64; images are created.</para>
1571     </sect2>
1572   </sect1>
1573 </article>