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