article.xml revision 285897
1139749Simp<?xml version="1.0" encoding="iso-8859-1"?>
291355Simp<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V5.0-Based Extension//EN"
391355Simp	"../../../share/xml/freebsd50.dtd" [
491355Simp<!ENTITY % release PUBLIC "-//FreeBSD//ENTITIES Release Specification//EN" "release.ent">
591355Simp %release;
691355Simp<!ENTITY % sponsor PUBLIC "-//FreeBSD//ENTITIES Sponsor Specification//EN" "sponsor.ent">
791355Simp %sponsor;
891355Simp<!ENTITY % vendor PUBLIC "-//FreeBSD//ENTITIES Vendor Specification//EN" "vendor.ent">
991355Simp %vendor;
1091355Simp<!ENTITY security SYSTEM "../../share/xml/security.xml">
1191355Simp<!ENTITY errata SYSTEM "../../share/xml/errata.xml">
1291355Simp]>
1391355Simp<article xmlns="http://docbook.org/ns/docbook"
1491355Simp  xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0">
1591355Simp
1691355Simp  <info>
1791355Simp    <title>&os; &release.current; Release Notes</title>
1891355Simp
1991355Simp    <author>
2091355Simp      <orgname>The &os; Project</orgname>
2191355Simp    </author>
2291355Simp
2391355Simp    <pubdate>$FreeBSD: head/release/doc/en_US.ISO8859-1/relnotes/article.xml 285897 2015-07-26 19:47:05Z gjb $</pubdate>
2491355Simp
2591355Simp    <!-- Last rev: 284814 -->
2691355Simp
2791355Simp    <copyright>
2891355Simp      <year>2015</year>
2991355Simp      <holder role="mailto:doc@FreeBSD.org">The &os; Documentation
3091355Simp	Project</holder>
3191355Simp    </copyright>
3291355Simp
3391355Simp    <legalnotice xml:id="trademarks" role="trademarks">
3491355Simp      &tm-attrib.freebsd;
3591355Simp      &tm-attrib.ibm;
3691355Simp      &tm-attrib.ieee;
37154599Sjhb      &tm-attrib.intel;
3891355Simp      &tm-attrib.sparc;
39154599Sjhb      &tm-attrib.general;
40102440Sjhb    </legalnotice>
41102440Sjhb
42102440Sjhb    <abstract>
43153898Simp      <para>The release notes for &os; &release.current; contain
44153898Simp	a summary of the changes made to the &os; base system on the
45128058Simp	&release.branch; development line.  This document lists
4691355Simp	applicable security advisories that were issued since the last
4791355Simp	release, as well as significant changes to the &os; kernel and
4891355Simp	userland.  Some brief remarks on upgrading are also
4991355Simp	presented.</para>
5091355Simp    </abstract>
5191355Simp  </info>
52163163Sjmg
53163163Sjmg  <sect1 xml:id="intro">
54163163Sjmg    <title>Introduction</title>
55163163Sjmg
5691355Simp    <para>This document contains the release notes for &os;
5791355Simp      &release.current;.  It describes recently added, changed, or
5891355Simp      deleted features of &os;.  It also provides some notes on
59119266Simp      upgrading from previous versions of &os;.</para>
6091355Simp
6191355Simp    <para releasetype="current">The &release.type; distribution to
62119266Simp      which these release notes apply represents the latest point
63113544Smdodd      along the &release.branch; development branch since
64113544Smdodd      &release.branch; was created.  Information regarding pre-built,
65113544Smdodd      binary &release.type; distributions along this branch can be
66113544Smdodd      found at <uri
67153560Sjhb	xlink:href="&release.url;">&release.url;</uri>.</para>
68153560Sjhb
6991355Simp    <para releasetype="snapshot">The &release.type; distribution to
7091355Simp      which these release notes apply represents a point along the
7191355Simp      &release.branch; development branch between &release.prev; and
7291355Simp      the future &release.next;.  Information regarding pre-built,
7391355Simp      binary &release.type; distributions along this branch can be
7491355Simp      found at <uri
7592233Simp	xlink:href="&release.url;">&release.url;</uri>.</para>
7692233Simp
7791355Simp    <para releasetype="release">This distribution of &os;
7891355Simp      &release.current; is a &release.type; distribution.  It can be
79111056Simp      found at <uri xlink:href="&release.url;">&release.url;</uri> or
80111056Simp      any of its mirrors.  More information on obtaining this (or
81111056Simp      other) &release.type; distributions of &os; can be found in the
82111056Simp      <link
83117115Stmm	xlink:href="&url.books.handbook;/mirrors.html"><quote>Obtaining
84120155Siwasaki	  &os;</quote> appendix</link> to the <link
85128058Simp	xlink:href="&url.books.handbook;/">&os;
86142735Simp	Handbook</link>.</para>
87142735Simp
88164067Sjhb    <para>All users are encouraged to consult the release errata
8991355Simp      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="285679" contrib="sponsor"
550	sponsor="&scaleengine;">Support for detecting and implementing
551	a workaround for various laptops and motherboards that do not
552	boot properly from <acronym>GPT</acronym>-partitioned disks
553	has been added to &man.bsdinstall.8;.  Additionally, the
554	<literal>active</literal> flag will be set on the partition
555	when needed.</para>
556
557      <para revision="285679" contrib="sponsor"
558	sponsor="&scaleengine;">Support for selecting the partitioning
559	scheme when installing on the <acronym>UFS</acronym>
560	filesystem has been added to &man.bsdinstall.8;.</para>
561    </sect2>
562
563    <sect2 xml:id="userland-rc">
564      <title><filename class="directory">/etc/rc.d</filename>
565	Scripts</title>
566
567      <para revision="270676">The &man.rc.8; subsystem has been
568	updated to allow configuring services in <filename
569	  class="directory">&dollar;{LOCALBASE}/etc/rc.conf.d/</filename>.
570	If <literal>LOCALBASE</literal> is unset, it defaults to
571	<filename class="directory">/usr/local</filename>.</para>
572
573      <para revision="273955">A new &man.rc.8; script,
574	<filename>growfs</filename>, has been added, which will resize
575	the root filesystem on boot if <filename>/firstboot</filename>
576	exists.</para>
577
578      <para revision="275299">The <filename>mrouted</filename>
579	&man.rc.8; script has been removed from the base system.  An
580	equivalent script is available from the <filename
581	  role="package">net/mrouted</filename> port.</para>
582
583      <para revision="279463" contrib="sponsor"
584	sponsor="&sandvine;">A new &man.rc.8; script,
585	<filename>iovctl</filename>, has been added, which allows
586	automatically starting the &man.iovctl.8; utility at
587	boot.</para>
588    </sect2>
589
590    <sect2 xml:id="userland-periodic">
591      <title><filename class="directory">/etc/periodic</filename>
592	Scripts</title>
593
594      <para revision="271321">The daily &man.periodic.8; script
595	<filename>110.clean-tmps</filename> has been updated to avoid
596	crossing filesystem mount boundaries when cleaning files in
597	<filename class="directory">/tmp</filename>.</para>
598
599      <para revision="277216" contrib="sponsor" sponsor="&ff;">A new
600	&man.periodic.8; script,
601	<filename>510.status-world-kernel</filename>, has been added,
602	which evaluates the running userland and kernel versions from
603	the &man.uname.1; <literal>-U</literal> and
604	<literal>-K</literal> arguments, and prints an error if the
605	system userland and kernel are not in sync.</para>
606    </sect2>
607
608    <sect2 xml:id="userland-libraries">
609      <title>Runtime Libraries and API</title>
610
611      <para revision="265995">The Blowfish &man.crypt.3; default
612	format has been changed to
613	<literal>&dollar;2b&dollar;</literal>.</para>
614
615      <para revision="268461">The &man.readline.3; library is now
616	statically linked in software within the base system, and the
617	shared library is no longer installed, allowing the Ports
618	Collection to use a modern version of the library.</para>
619
620      <para revision="272273">The &man.strptime.3; library has been
621	updated to add support for <acronym>POSIX</acronym>-2001
622	features <literal>%U</literal> and
623	<literal>%W</literal>.</para>
624
625      <para revision="272842,272848" contrib="sponsor"
626	sponsor="&ff;">The &man.dl.iterate.phdr.3; library has been
627	changed to always return the path name of the
628	<acronym>ELF</acronym> object in the
629	<literal>dlpi_name</literal> structure member.</para>
630
631      <para revision="273562" contrib="sponsor"
632	sponsor="&juniper;">The &man.libxo.3; library has been
633	imported to the base system.</para>
634
635      <para revision="273806" contrib="sponsor" sponsor="&chelsio;">A
636	userland library for Chelsio Terminator 5 based iWARP cards
637	has been added, allowing userland <acronym>RDMA</acronym>
638	applications to work over compatible
639	<acronym>NIC</acronym>s.</para>
640
641      <para revision="274987">The &man.gpio.3; library has been added,
642	providing a wrapper around the &man.gpio.4; kernel
643	interface.</para>
644
645      <para revision="275800" contrib="sponsor" sponsor="&ff;">The
646	&man.procctl.2; system call has been updated to include
647	a facility for non-&man.init.8; processes to be declared as
648	the reaper of child processes and their decendants.</para>
649
650      <para revision="277610">The <literal>futimens()</literal> and
651	<literal>utimensat()</literal> system calls have been
652	added.  See &man.utimensat.2; for more information.</para>
653
654      <para revision="278934">The &man.elf.3; compile-time dependency
655	has been removed from <filename>dtri.o</filename>, which
656	allows adding <application>DTrace</application> probes to
657	userland applications and libraries without also linking
658	against &man.elf.3;.</para>
659
660      <para revision="279186">The &man.setmode.3; function has been
661	updated to consistently set <literal>errno</literal> on
662	failure.</para>
663
664      <para revision="279663">The &man.qsort.3; functions have been
665	updated to be able to handle 32-bit aligned data on 64-bit
666	platforms, also providing a significant improvement in 32-bit
667	workloads.</para>
668
669      <para revision="281130">Several standard include headers have
670	been updated to use of <application>gcc</application>
671	attributes, such as <literal>__result_use_check()</literal>,
672	<literal>__alloc_size()</literal>, and
673	<literal>__nonnull()</literal>.</para>
674
675      <para revision="281845">Support for file verification in
676	<acronym>MAC</acronym> has been added.</para>
677
678      <para revision="282973" contrib="sponsor" sponsor="&ff;">The
679	<literal>libgomp</literal> library is now only built when
680	building <acronym>GCC</acronym> from the base system.  An
681	up-to-date version is available in the Ports Collection as
682	<filename
683	  role="package">devel/libiomp5-devel</filename>.</para>
684
685      <para revision="282988">The <filename>stdlib.h</filename> and
686	<filename>malloc.h</filename> headers have been updated to
687	make use of the <application>gcc</application>
688	<literal>alloc_align()</literal> attribute.</para>
689
690      <para revision="284483" contrib="sponsor"
691	sponsor="&scaleengine;">The Blowfish &man.crypt.3; library
692	has been updated to support &dollar;2y&dollar; hashes.</para>
693    </sect2>
694
695    <sect2 xml:id="userland-abi">
696      <title>ABI Compatibility</title>
697
698      <para revision="271982">The &linux; compatibility version has
699	been updated to <literal>2.6.18</literal>.  The
700	<literal>compat.linux.osrelease</literal> &man.sysctl.8; is
701	evaluated when building the <filename
702	  role="package">emulators/linux-c6</filename> and related
703	ports.</para>
704    </sect2>
705  </sect1>
706
707  <sect1 xml:id="kernel">
708    <title>Kernel</title>
709
710    <para>This section covers changes to kernel configurations, system
711      tuning, and system control parameters that are not otherwise
712      categorized.</para>
713
714    <sect2 xml:id="kernel-bugfix">
715      <title>Kernel Bug Fixes</title>
716
717      <para revision="265876">A kernel bug that inhibited proper
718	functionality of the <literal>dev.cpu.0.freq</literal>
719	&man.sysctl.8; on &intel; processors with Turbo
720	Boost&nbsp;&trade; enabled has been fixed.</para>
721
722      <para revision="271697" arch="powerpc">Support for
723	&man.dtrace.1; stack tracing has been fixed for
724	&os;/&arch.powerpc;, using the <literal>trapexit()</literal>
725	and <literal>asttrapexit()</literal> functions instead of
726	checking within addressed kernel space.</para>
727
728      <para revision="271917">A kernel panic triggered when destroying
729	a &man.vnet.9; &man.jail.8; configured with &man.gif.4; has
730	been fixed.</para>
731
732      <para revision="271918">A kernel panic triggered when destroying
733	a &man.vnet.9; &man.jail.8; configured with &man.gre.4; has
734	been fixed.</para>
735
736      <para revision="272089">A bug in &man.ipfw.4; that could
737	potentially lead to a kernel panic when using &man.dummynet.4;
738	at layer 2 has been fixed.</para>
739
740      <para revision="280930" contrib="sponsor" sponsor="&mitail;">The
741	kernel <acronym>RPC</acronym> has been updated to include
742	several enhancements:</para>
743
744      <itemizedlist>
745	<listitem>
746	  <para>The 45 MiB limit on requests queued for
747	    &man.nfsd.8; threads has been removed.</para>
748	</listitem>
749
750	<listitem>
751	  <para>Avoids unnecessary throttling by not deferring
752	    accounting for completed requests.</para>
753	</listitem>
754
755	<listitem>
756	  <para>Fixes an integer overflow and signedness bugs.</para>
757	</listitem>
758      </itemizedlist>
759
760      <para revision="281261" arch="powerpc">Support for
761	&man.dtrace.1; has been added for the
762	Book-E&nbsp;&trade;.</para>
763    </sect2>
764
765    <sect2 xml:id="kernel-config">
766      <title>Kernel Configuration</title>
767
768      <para revision="266531">The <literal>IMAGACT_BINMISC</literal>
769	kernel configuration option has been enabled by default,
770	which enables application execution through emulators, such
771	as <application>Qemu</application>.</para>
772
773      <para revision="268045">The <literal>VT</literal> kernel
774	configuration file has been removed, and the &man.vt.4;
775	driver is included in the <literal>GENERIC</literal> kernel.
776	To enable &man.vt.4;, enter <literal>set kern.vty=vt</literal>
777	at the &man.loader.8; prompt during boot, or add
778	<literal>kern.vty=vt</literal> to &man.loader.conf.5; and
779	reboot the system.</para>
780
781      <para revision="277904">The &man.config.8; utility has been
782	updated to allow using a non-standard <filename
783	  class="directory">src/</filename> tree, specified as an
784	argument to the <literal>-s</literal> flag.</para>
785
786      <para revision="277990" arch="powerpc64">The
787	&os;/&arch.powerpc64; kernel now builds as
788	a position-independent executable, allowing the kernel to be
789	loaded into and run from any physical or virtual
790	address.</para>
791
792      <important>
793	<para>This change requires an update to &man.loader.8;.
794	  The userland and kernel must be updated before rebooting the
795	  system.</para>
796      </important>
797
798      <para revision="278338" arch="arm">A new module for creating
799	<filename>rpi.dtb</filename> has been added for the Raspberry
800	Pi.</para>
801
802      <para revision="278340" arch="arm">The
803	<filename>rpi.dtb</filename> module is now installed to
804	<filename class="directory">/boot/dtb/</filename> by
805	default for the Raspberry Pi system.</para>
806
807      <para revision="279189" contrib="sponsor" sponsor="&ff;"
808	arch="powerpc">Kernel support for Vector-Scalar eXtension
809	(<acronym>VSX</acronym>) found on POWER7 and POWER8 hardware
810	has been added.</para>
811
812      <para revision="279252" contrib="sponsor" sponsor="&ff;"
813	arch="powerpc">The &man.pmap.9; implementation for 64-bit
814	&powerpc; processors has been overhaulded to improve
815	concurrency.</para>
816
817      <para revision="279824" arch="arm">A new module for creating
818	the <filename>dtb</filename> module for AM335x systems has
819	been added.</para>
820
821      <para revision="281495" contrib="sponsor" sponsor="&ff;">The
822	<literal>PAE_TABLES</literal> kernel configuration option has
823	been added for &os;/&arch.i386;, which instructs &man.pmap.9;
824	to use <acronym>PAE</acronym> format for page tables while
825	maintaining a 32-bit physical address size elsewhere in the
826	kernel.  The use of this option can enhance application-level
827	security by enabling the creation of <quote>no execute</quote>
828	mappings on modern &arch.i386; processors.  Unlike the
829	<literal>PAE</literal> option, <literal>PAE_TABLES</literal>
830	preserves kernel binary interface (<acronym>KBI</acronym>)
831	compatibility with non-<literal>PAE</literal> kernels,
832	allowing non-<literal>PAE</literal> kernel modules and drivers
833	to work with a <literal>PAE_TABLES</literal>-enabled kernel.
834	Additionally, system limits are tuned for 4GB maximum
835	<acronym>RAM</acronym>, avoiding kernel virtual address space
836	(<acronym>KVA</acronym>) exhaustion.</para>
837
838      <para revision="282215">The <literal>SIFTR</literal> kernel
839	configuration has been added, allowing building &man.siftr.4;
840	statically into the kernel.</para>
841
842      <para revision="282731" arch="arm">The &arch.arm; boot loader,
843	<filename>ubldr</filename>, is now relocatable.  In addition,
844	<filename>ubldr.bin</filename> is now created during build
845	time, which is a stripped binary with an entry point of
846	<literal>0</literal>, providing the ability to specify the
847	load address by running <literal>go
848	  &dollar;{loadaddr}</literal> in
849	<literal>u-boot</literal>.</para>
850
851      <para revision="282921" contrib="sponsor" sponsor="&intelcorp;"
852	arch="amd64,i386">The &man.nvd.4; and &man.nvme.4; drivers are
853	now included in the <filename>GENERIC</filename> kernel
854	configuration by default.</para>
855
856      <para revision="283959" contrib="sponsor"
857	sponsor="&limelight;">A new kernel configuration option,
858	<literal>EM_MULTIQUEUE</literal>, has been added which enables
859	multi-queue support in the &man.em.4; driver.</para>
860
861      <note>
862	<para>Multi-queue support in the &man.em.4; driver is not
863	  officially supported by &intel;.</para>
864      </note>
865    </sect2>
866
867    <sect2 xml:id="kernel-sysctl">
868      <title>System Tuning and Controls</title>
869
870      <para revision="275140" contrib="sponsor" sponsor="&ff;">The
871	&man.hwpmc.4; default and maximum callchain depths have been
872	increased.  The default has been increased from 16 to 32, and
873	the maximum increased from 32 to 128.</para>
874
875      <para revision="279361">The <literal>kern.osrelease</literal>
876	and <literal>kern.osreldate</literal> are now configurable
877	&man.jail.8; parameters.</para>
878
879      <para revision="280308,280949" contrib="sponsor"
880	sponsor="&ix;, &ff;">The &man.devfs.5; device filesystem has
881	been changed to update timestamps for read/write operations
882	using seconds precision.  A new &man.sysctl.8;,
883	<literal>vfs.devfs.dotimes</literal> has been added, which
884	when set to a non-zero value, enables default precision
885	timestamps for these operations.</para>
886
887      <para revision="282213" contrib="sponsor" sponsor="&ff;">A new
888	&man.sysctl.8;, <literal>kern.racct.enable</literal>, has been
889	added, which when set to a non-zero value allows using
890	&man.rctl.8; with the <literal>GENERIC</literal> kernel.
891	A new kernel configuration option,
892	<literal>RACCT_DISABLED</literal> has also been added.</para>
893
894      <para revision="282901" contrib="sponsor" sponsor="&ff;">The
895	<literal>GENERIC</literal> kernel configuration now includes
896	<literal>RACCT</literal> and <literal>RCTL</literal> by
897	default.</para>
898
899      <note>
900	<para>To enable <literal>RACCT</literal> and
901	  <literal>RCTL</literal> on a system using the
902	  <literal>GENERIC</literal> kernel configuration, add
903	  <literal>kern.racct.enable=1</literal> to
904	  &man.loader.conf.5;, and reboot the system.</para>
905      </note>
906
907      <para revision="283136" contrib="sponsor"
908	sponsor="&limelight;">A new &man.sysctl.8;,
909	<literal>net.inet.tcp.hostcache.purgenow</literal>, has
910	been added, which when set to <literal>1</literal> during
911	runtime will flush all
912	<literal>net.inet.tcp.hostcache</literal> entries.</para>
913    </sect2>
914  </sect1>
915
916  <sect1 xml:id="drivers">
917    <title>Devices and Drivers</title>
918
919    <para>This section covers changes and additions to devices and
920      device drivers since &release.prev;.</para>
921
922    <sect2 xml:id="drivers-device">
923      <title>Device Drivers</title>
924
925      <para revision="260903">Support for GPS ports has been added to
926	&man.uhso.4;.</para>
927
928      <para revision="265132">The &man.full.4; device has been added,
929	and the <literal>lindev(4)</literal> device has been removed.
930	Prior to this change, <literal>lindev(4)</literal> provided
931	only the <filename>/dev/full</filename> character device,
932	returning <literal>ENOSPC</literal> on write attempts.  As
933	this device is not specific to &linux;, a native &os; version
934	has been added.</para>
935
936      <para revision="271705">Hardware context support has been
937	added to the <literal>drm/i915</literal> driver, adding
938	support for <application>Mesa</application> 9.2 and
939	later.</para>
940
941      <para revision="273178">The &man.vt.4; driver has been updated,
942	replacing the bitmapped <literal>kern.vt.spclkeys</literal>
943	&man.sysctl.8; with individual
944	<literal>kern.vt.kbd_*</literal> variants.</para>
945
946      <para revision="273598">The &man.hpet.4; driver has been updated
947	to create a
948	<filename>/dev/hpet<replaceable>N</replaceable></filename>
949	device, providing access to <acronym>HPET</acronym> from
950	userspace.</para>
951
952      <para revision="280183">The <literal>drm</literal> code has
953	been updated to match &linux; version 3.8.13.</para>
954
955      <para revision="281440">The &man.psm.4; driver has been updated
956	to include improved support for newer Synaptics&nbsp;&reg;
957	touchpads and the ClickPad&nbsp;&reg; mouse on newer
958	Lenovo&nbsp;&trade; laptops.</para>
959
960      <para revision="282783" arch="powerpc">Support for the Freescale
961	<acronym>PCI</acronym> Root Complex device has been
962	added.</para>
963    </sect2>
964
965    <sect2 xml:id="drivers-storage">
966      <title>Storage Drivers</title>
967
968      <para revision="265236" contrib="sponsor"
969	sponsor="&lsi;, &spectralogic;" sponsorurl="">The &man.mpr.4;
970	device has been added, providing support for LSI Fusion-MPT
971	3 12Gb SCSI/SATA controllers.</para>
972
973      <para revision="265555" contrib="sponsor"
974	  sponsor="&lsi;">The &man.mrsas.4; driver has been added,
975	providing support for LSI MegaRAID SAS controllers.  The
976	&man.mfi.4; driver will attach to the controller, by default.
977	To enable &man.mrsas.4; add
978	<literal>hw.mfi.mrsas_enable=1</literal> to
979	<filename>/boot/loader.conf</filename>, which turns off
980	&man.mfi.4; device probing.</para>
981
982      <note>
983	<para>At this time, the &man.mfiutil.8; utility and the &os;
984	  version of <application>MegaCLI</application> and
985	  <application>StorCli</application> do not work with
986	  &man.mrsas.4;.</para>
987      </note>
988
989      <para revision="275461" contrib="sponsor" sponsor="&ix;">The
990	&man.ctl.4; subsystem has been updated, increasing the ports
991	limit from <literal>128</literal> to <literal>256</literal>,
992	and <acronym>LUN</acronym> limit from <literal>256</literal>
993	to <literal>1024</literal>.</para>
994
995      <para revision="276526">The <literal>asr(4)</literal> driver has
996	been removed, and is no longer supported.</para>
997
998      <para revision="281387">The &man.hptnr.4; driver has been
999	updated to version 1.1.1.</para>
1000    </sect2>
1001
1002    <sect2 xml:id="drivers-network">
1003      <title>Network Drivers</title>
1004
1005      <para revision="258830">Support for Broadcom chipsets BCM57764,
1006	BCM57767, BCM57782, BCM57786 and BCM57787 has been added to
1007	&man.bge.4;.</para>
1008
1009      <para revision="260448">Support for the &intel; Centrino&trade;
1010	Wireless-N 135 chipset has been added.</para>
1011
1012      <para revision="260552">Firmware for &intel; Centrino&trade;
1013	Wireless-N 105 devices has been added to the base
1014	system.</para>
1015
1016      <para revision="261975">The deprecated nve(4) driver has been
1017	removed.  Users of NVIDIA nForce MCP network adapters are
1018	advised to use the &man.nfe.4; driver instead, which has been
1019	the default driver for this hardware since
1020	&os;&nbsp;7.0.</para>
1021
1022      <para revision="264601" contrib="sponsor"
1023	sponsor="&darpa_afrl;">The <literal>if_nf10bmac(4)</literal>
1024	device has been added, providing support for NetFPGA-10G
1025	Embedded CPU Ethernet Core.</para>
1026
1027      <note>
1028	<para>The <literal>if_nf10bmac(4)</literal> driver operates on
1029	  the FPGA, and is not suited for the PCI host
1030	  interface.</para>
1031      </note>
1032
1033      <para revision="265348" contrib="sponsor"
1034	sponsor="&netgate;">The &man.ath.hal.4; driver has been
1035	updated to support the Atheros AR1111 chipset.</para>
1036
1037      <para revision="266770">Support for the &intel; Centrino&trade;
1038	Wireless-N 105 chipset has been added.</para>
1039
1040      <para revision="266757" contrib="sponsor"
1041	sponsor="&chelsio;">Support for the &man.cxgbe.4; Terminator
1042	5 (T5) 10G/40G cards has been added to &man.netmap.4;.</para>
1043
1044      <para revision="272730">The &man.alc.4; driver has been updated
1045	to support AR816x and AR817x ethernet controllers.</para>
1046
1047      <para revision="272906">The &man.pfil.9; interface default hash
1048	has been changed from <literal>Jenkins</literal> to
1049	<literal>Murmur3</literal>, providing a 3-percent performance
1050	increase in packets-per-second.</para>
1051
1052      <para revision="273331">The &man.vxlan.4; driver has been added,
1053	which creates a virtual Layer 2 (Ethernet) network overlaid in
1054	a Layer 3 (IP/UDP) network.  The &man.vxlan.4; driver is
1055	analogous to &man.vlan.4;, but is designed to be better suited
1056	for large, multiple-tenant datacenter environments.</para>
1057
1058      <para revision="274246" contrib="sponsor" sponsor="&yandex;">The
1059	&man.gre.4; driver has been significantly overhauled, and has
1060	been split into two separate modules, &man.gre.4; and
1061	&man.me.4;.</para>
1062
1063      <para revision="278551">The &man.ral.4; driver has been updated
1064	to support the RT5390 and RT5392 chipsets.</para>
1065
1066      <para revision="283514" contrib="sponsor"
1067	sponsor="&solarflare;">The &man.sfxge.4; driver has been
1068	updated to support Solarflare Flareon Ultra 7000-series
1069	chipsets.</para>
1070
1071      <para revision="283766" contrib="sponsor"
1072	sponsor="&limelight;">The &man.em.4; driver has been updated
1073	with improved transmission queue hang detection.</para>
1074
1075      <para revision="284125">The &man.cdce.4; driver has been updated
1076	to include support for the RTL8153 chipset.</para>
1077    </sect2>
1078  </sect1>
1079
1080  <sect1 xml:id="hardware">
1081    <title>Hardware Support</title>
1082
1083    <para>This section covers general hardware support for physical
1084      machines, hypervisors, and virtualization environments, as well
1085      as hardware changes and updates that do not otherwise fit in
1086      other sections of this document.</para>
1087
1088    <sect2 xml:id="hardware-support">
1089      <title>Hardware Support</title>
1090
1091      <para revision="268303">The &man.asmc.4; driver has been
1092	updated to support the &apple;&nbsp;MacMini 3,1.</para>
1093
1094      <para revision="268351">Support for &os;/ia64 has been dropped
1095	as of &os;&nbsp;11.</para>
1096
1097      <para revision="274386">An issue that could cause a system to
1098	hang when entering <acronym>ACPI</acronym>
1099	<literal>S3</literal> state (suspend to
1100	<acronym>RAM</acronym>) has been corrected in the &man.acpi.4;
1101	and &man.pci.4; drivers.</para>
1102
1103      <para revision="274733" arch="powerpc">The power management unit
1104	subsystem has been updated to support power button events on
1105	certain &arch.powerpc; hardware, such as aluminum
1106	PowerBook&nbsp;&reg;.</para>
1107
1108      <para revision="275171,275190" arch="powerpc">The &man.hwpmc.4;
1109	driver has been updated to correct performance counter
1110	sampling on G4 (MPC74xxx) and G5 class processors.</para>
1111
1112      <para revision="275732" contrib="sponsor"
1113	sponsor="&ff;,&netgate;">The
1114	<application>OpenCrypto</application> framework has been
1115	updated to include <literal>AES-ICM</literal> and
1116	<literal>AES-GCM</literal> modes, both of which have also been
1117	added to the &man.aesni.4; driver.</para>
1118
1119      <para revision="281713" arch="powerpc">The &man.hwpmc.4;
1120	driver has been updated to support the Freescale e500
1121	core.</para>
1122
1123      <para revision="283766">The &man.ig4.4; driver has been added,
1124	providing support for the fourth generation &intel;
1125	<acronym>I2C</acronym> SMBus.</para>
1126
1127      <para>The &man.uart.4; driver has been updated to support
1128	<acronym>AMT</acronym> devices on newer systems.</para>
1129    </sect2>
1130
1131    <sect2 xml:id="hardware-virtualization">
1132      <title>Virtualization Support</title>
1133
1134      <para revision="260410">Support for the <quote>Virtual Interrupt
1135	  Delivery</quote> feature of &intel;&nbsp;VT-x is enabled if
1136	supported by the CPU.  This feature can be disabled by running
1137	<literal>sysctl hw.vmm.vmx.use_apic_vid=0</literal>.
1138	Additionally, to persist this setting across reboots, add
1139	<literal>hw.vmm.vmx.use_apic_vid=0</literal> to
1140	<filename>/etc/sysctl.conf</filename>.</para>
1141
1142      <para revision="260532">Support for <quote>Posted Interrupt
1143	  Processing</quote> is enabled if supported by the CPU.  This
1144	feature can be disabled by running <literal>sysctl
1145	  hw.vmm.vmx.use_apic_pir=0</literal>.  Additionally, to
1146	persist this setting across reboots, add
1147	<literal>hw.vmm.vmx.use_apic_pir=0</literal> to
1148	<filename>/etc/sysctl.conf</filename>.</para>
1149
1150      <para revision="260582">Unmapped IO support has been added to
1151	&man.virtio_blk.4;.</para>
1152
1153      <para revision="260583">Unmapped IO support has been added to
1154	&man.virtio_scsi.4;.</para>
1155
1156      <para revision="260847">The &man.virtio_random.4; driver has
1157	been added to harvest entropy from the host system.</para>
1158
1159      <para revision="261504">&os;/&arch.i386; guests can be run under
1160	bhyve.</para>
1161
1162      <para revision="267536" contrib="sponsor"
1163	sponsor="&citrix.rd;">Support for running a &os;/&arch.amd64;
1164	<application>Xen</application> guest instance as
1165	<acronym>PVH</acronym> guest has been added.
1166	<acronym>PVH</acronym> mode, short for <quote>Para-Virtualized
1167	  Hardware</quote>, uses para-virtualized drivers for boot and
1168	I/O, and uses hardware virtualization extensions for all other
1169	tasks, without the need for emulation.</para>
1170
1171      <para revision="273375">The &man.bhyve.8; hypervisor has been
1172	updated to support &amd; processors with
1173	<acronym>SVM</acronym> and <acronym>AMD-V</acronym> hardware
1174	extensions.</para>
1175
1176      <para revision="273515">The &man.virtio.console.4; driver has
1177	been added, which provides an interface to VirtIO console
1178	devices through a &man.tty.4; device.</para>
1179
1180      <para revision="279957">The &man.bhyve.8; hypervisor has been
1181	updated to support <literal>DSM TRIM</literal> commands for
1182	virtual <acronym>AHCI</acronym> disks.</para>
1183
1184      <para revision="281439" arch="arm">Support for the
1185	<application>QEMU</application> <literal>virt</literal> system
1186	has been added.</para>
1187
1188      <para revision="282212" contrib="sponsor" sponsor="&msostc;">The
1189	Hyper-V&trade; drivers have been updated with several
1190	enhancements:</para>
1191
1192      <itemizedlist>
1193	<listitem>
1194	  <para>The &man.hv.vmbus.4; driver now has multi-channel
1195	    support.</para>
1196	</listitem>
1197
1198	<listitem>
1199	  <para>The &man.hv.storvsc.4; driver now has scatter/gather
1200	    support, in addition to performance improvements.</para>
1201	</listitem>
1202
1203	<listitem>
1204	  <para>The &man.hv.kvp.4; driver has received several bug
1205	    fixes.</para>
1206	</listitem>
1207      </itemizedlist>
1208
1209      <para revision="282274">Support for &man.xen.4; para-virtualized
1210	<literal>domU</literal> kernels has been removed.</para>
1211
1212      <para revision="284746" contrib="sponsor" sponsor="&msostc;">The
1213	&man.hv.netvsc.4; driver has been updated to support checksum
1214	offloading and <acronym>TSO</acronym>.</para>
1215    </sect2>
1216
1217    <sect2 xml:id="hardware-arm">
1218      <title>ARM Support</title>
1219
1220      <para revision="260921">The &man.nand.4; device is enabled for
1221	ARM devices by default.</para>
1222
1223      <para revision="266943" arch="arm">Support for the Exynos 5420
1224	Octa system has been added.</para>
1225
1226      <para revision="267390" arch="arm">The <acronym>SMP</acronym>
1227	option has been enabled for all Exynos 5 systems supported by
1228	&os;.</para>
1229
1230      <para revision="268838" arch="arm">Support for the Toradex
1231	Apalis i.MX6 development board has been added.</para>
1232
1233      <para revision="273264" arch="armv6">An issue that could cause
1234	instability when detecting <acronym>SD</acronym> cards on the
1235	Raspberry Pi <acronym>SOC</acronym> has been fixed.</para>
1236
1237      <para revision="275963">The <literal>bcm2835_cpufreq</literal>
1238	driver has been added, which supports <acronym>CPU</acronym>
1239	frequency and voltage control on the Raspberry Pi
1240	<acronym>SOC</acronym>.</para>
1241
1242      <para revision="277042" arch="arm">Support to turn off the
1243	BeagleBone Black system with the &man.shutdown.8;
1244	<literal>-p</literal> flag or by invoking &man.poweroff.8; has
1245	been added.</para>
1246
1247      <para revision="277644" arch="arm">Audio transmission drivers
1248	have been added for Digital Audio Multiplexer
1249	(<acronym>AUDMUXM</acronym>), Smart Direct Memory Access
1250	Controller (<acronym>SDMA</acronym>), and Syncronous Serial
1251	Interface (<acronym>SSI</acronym>).</para>
1252
1253      <para revision="280259" contrib="sponsor" sponsor="&ff;">Initial
1254	support for the ARM AArch64 architecture has been
1255	added.</para>
1256
1257      <para revision="282779" arch="arm">Kernel support for Thumb-2
1258	userland has been added.</para>
1259
1260      <para revision="282827">Support for the hardware power button
1261	on the BeagleBone Black system has been added.</para>
1262
1263      <para revision="284273" contrib="sponsor"
1264	sponsor="&ff;">Initial
1265	<acronym>ACPI</acronym> support has been added for
1266	&os;/&arch.arm64;.</para>
1267    </sect2>
1268  </sect1>
1269
1270  <sect1 xml:id="storage">
1271    <title>Storage</title>
1272
1273    <para>This section covers changes and additions to file systems
1274      and other storage subsystems, both local and networked.</para>
1275
1276    <sect2 xml:id="storage-general">
1277      <title>General Storage</title>
1278
1279      <para revision="278037" contrib="sponsor" sponsor="&ix;">The
1280	&man.ctl.4; <acronym>LUN</acronym> mapping has been rewritten,
1281	replacing <acronym>iSCSI</acronym>-specific mapping mechanisms
1282	with a new mechanism that works for any port.</para>
1283
1284      <para revision="278354" contrib="sponsor" sponsor="&ix;">The
1285	&man.ctld.8; utility has been updated to allow controlling
1286	non-<acronym>iSCSI</acronym> &man.ctl.4; ports.</para>
1287
1288      <para revision="275681" contrib="sponsor" sponsor="&ff;">The
1289	&man.autofs.5; subsystem has been updated to include a new
1290	&man.auto.master.5; map, <literal>-media</literal>, which
1291	allows automatically mounting removable media, such as
1292	<acronym>CD</acronym> drives or <acronym>USB</acronym> flash
1293	drives.</para>
1294
1295      <para revision="279955" contrib="sponsor" sponsor="&ff;">The
1296	&man.autofs.5; subsystem has been updated to include a new
1297	&man.auto.master.5; map, <literal>-noauto</literal>, which
1298	handles &man.fstab.5; entries set to
1299	<literal>noauto</literal>.</para>
1300    </sect2>
1301
1302    <sect2 xml:id="storage-net">
1303      <title>Networked Storage</title>
1304
1305      <para revision="270096" contrib="sponsor" sponsor="&ff;">The new
1306	filesystem automount facility, &man.autofs.5;, has been added.
1307	The new &man.autofs.5; facility is similar to that found in
1308	other &unix;-like operating systems, such as OS&nbsp;X&trade;
1309	and Solaris&trade;.  The &man.autofs.5; facility uses
1310	a &sun;-compatible &man.auto.master.5; configuration file, and
1311	is administered with the &man.automount.8; userland utility,
1312	and the &man.automountd.8; and &man.autounmountd.8;
1313	daemons.</para>
1314
1315      <para revision="273849" contrib="sponsor" sponsor="&ff;">Support
1316	for the <literal>timeo</literal>, <literal>actimeo</literal>,
1317	<literal>noac</literal>, and <literal>proto</literal> options
1318	have been added to &man.mount.nfs.8;.</para>
1319    </sect2>
1320
1321    <sect2 xml:id="storage-zfs">
1322      <title>ZFS</title>
1323
1324      <para revision="275748">The <literal>arc_meta_limit</literal>
1325	statistics are now visible through the
1326	<literal>kstat</literal> &man.sysctl.8;.  As a result of this
1327	change, the <literal>vfs.zfs.arc_meta_used</literal>
1328	&man.sysctl.8; has been removed, and replaced with the
1329	<literal>kstat.zfs.misc.arcstats.arc_meta_used</literal>
1330	&man.sysctl.8;.</para>
1331    </sect2>
1332
1333    <sect2 xml:id="storage-geom">
1334      <title>&man.geom.4;</title>
1335
1336      <para revision="267359">Support for the
1337	<literal>disklabel64</literal> partitioning scheme has been
1338	added to &man.gpart.8;.</para>
1339
1340      <para revision="282465">Support for the
1341	<literal>apple-boot</literal>, <literal>apple-hfs</literal>,
1342	and <literal>apple-ufs</literal> <acronym>MBR</acronym>
1343	partitioning schemes have been added to &man.gpart.8;.</para>
1344    </sect2>
1345  </sect1>
1346
1347  <sect1 xml:id="boot">
1348    <title>Boot Loader Changes</title>
1349
1350    <para>This section covers the boot loader, boot menu, and other
1351      boot-related changes.</para>
1352
1353    <sect2 xml:id="boot-loader">
1354      <title>Boot Loader Changes</title>
1355
1356      <para revision="258431" contrib="sponsor" sponsor="&ff;">The
1357	memory test run at boot time on &os;/&arch.amd64; platforms
1358	has been disabled by default.</para>
1359
1360      <para revision="262955">A new &man.ttys.5; class,
1361	<literal>3wire</literal>, has been added.  This is similar to
1362	the existing terminal classes, but does not have a defined
1363	baudrate.</para>
1364
1365      <para revision="274085">The &man.vt.4; driver has been made the
1366	default system console driver.  The &man.syscons.4; driver is
1367	still available, and can be enabled by adding
1368	<literal>kern.vty=sc</literal> in &man.loader.conf.5;.
1369	Alternatively, &man.syscons.4; can be enabled at boot time by
1370	entering <literal>set kern.vty=sc</literal> at the
1371	&man.loader.8; prompt.</para>
1372
1373      <para revision="279950">Support for <literal>bzipfs</literal>
1374	has been added to the <acronym>EFI</acronym> loader.</para>
1375
1376      <para revision="281616">The boot loader has been updated to
1377	support entering the <acronym>GELI</acronym> passphrase before
1378	loading the kernel.  To enable this behavior, add
1379	<literal>geom_eli_passphrase_prompt="YES"</literal> to
1380	&man.loader.conf.5;.</para>
1381
1382      <para revision="284683" contrib="sponsor" sponsor="&ff;"
1383	arch="arm">The &man.ttys.5; file for &os;/&arch.arm; has been
1384	updated to enable <filename>ttyu1</filename>,
1385	<filename>ttyu2</filename>, and <filename>ttyu3</filename> by
1386	default, if the callin port is an active console port.</para>
1387    </sect2>
1388
1389    <sect2 xml:id="boot-menu">
1390      <title>Boot Menu Changes</title>
1391
1392      <para>&nbsp;</para>
1393    </sect2>
1394  </sect1>
1395
1396  <sect1 xml:id="network">
1397    <title>Networking</title>
1398
1399    <para>This section describes changes that affect networking in
1400      &os;.</para>
1401
1402    <sect2 xml:id="network-protocols">
1403      <title>Network Procols</title>
1404
1405      <para revision="263140">Support for the IPX network transport
1406	protocol has been removed, and will not be supported in
1407	&os;&nbsp;11 and later releases.</para>
1408
1409      <para revision="272720" contrib="sponsor"
1410	sponsor="&limelight;">Support for <acronym>PLPMTUD</acronym>
1411	blackhole detection (<acronym>RFC</acronym> 4821) has been
1412	added to the &man.tcp.4; stack, disabled by default.  New
1413	control tunables have been added:</para>
1414
1415      <informaltable frame="none" pgwide="0">
1416	<tgroup cols="2">
1417	  <colspec colwidth="1*"/>
1418	  <colspec colwidth="1*"/>
1419	  <thead>
1420	    <row>
1421	      <entry>Tunable</entry>
1422	      <entry>Description</entry>
1423	    </row>
1424	  </thead>
1425
1426	  <tbody>
1427	    <row>
1428	      <entry><literal>net.inet.tcp.pmtud_blackhole_detection</literal></entry>
1429	      <entry>Enables or disables <acronym>PLPMTUD</acronym>
1430		blackhole detection</entry>
1431	    </row>
1432
1433	    <row>
1434	      <entry><literal>net.inet.tcp.pmtud_blackhole_mss</literal></entry>
1435	      <entry><acronym>MSS</acronym> to try for IPv4</entry>
1436	    </row>
1437
1438	    <row>
1439	      <entry><literal>net.inet.tcp.v6pmtud_blackhole_mss</literal></entry>
1440	      <entry><acronym>MSS to try for IPv6</acronym></entry>
1441	    </row>
1442	  </tbody>
1443	</tgroup>
1444      </informaltable>
1445
1446      <para>New monitoring &man.sysctl.8;s haven been added:</para>
1447
1448      <informaltable frame="none" pgwide="0">
1449	<tgroup cols="2">
1450	  <colspec colwidth="1*"/>
1451	  <colspec colwidth="1*"/>
1452	  <thead>
1453	    <row>
1454	      <entry>Tunable</entry>
1455	      <entry>Description</entry>
1456	    </row>
1457	  </thead>
1458
1459	  <tbody>
1460	    <row>
1461	      <entry><literal>net.inet.tcp.pmtud_blackhole_activated</literal></entry>
1462	      <entry>Number of times the code was activated to attempt
1463		downshifting the <acronym>MSS</acronym></entry>
1464	    </row>
1465
1466	    <row>
1467	      <entry><literal>net.inet.tcp.pmtud_blackhole_min_activated</literal></entry>
1468	      <entry>Number of times the blackhole
1469		<acronym>MSS</acronym> was used in an attempt to
1470		downshift</entry>
1471	    </row>
1472
1473	    <row>
1474	      <entry><literal>net.inet.tcp.pmtud_blackhole_failed</literal></entry>
1475	      <entry>Number of times that the blackhole failed to
1476		connect after downshifting the
1477		<acronym>MSS</acronym></entry>
1478	    </row>
1479	  </tbody>
1480	</tgroup>
1481      </informaltable>
1482
1483      <para revision="280971" contrib="sponsor"
1484	sponsor="&netflix;, &nginx;">Support for <acronym>IP</acronym>
1485	identification for atomic datagrams (<acronym>RFC</acronym>
1486	6864) has been added.  Support for this feature can be toggled
1487	with the <literal>net.inet.ip.rfc6864</literal>
1488	&man.sysctl.8;, which is enabled by default.</para>
1489    </sect2>
1490  </sect1>
1491
1492  <sect1 xml:id="ports">
1493    <title>Ports Collection and Package Infrastructure</title>
1494
1495    <para>This section covers changes to the &os;&nbsp;Ports
1496      Collection, package infrastructure, and package maintenance and
1497      installation tools.</para>
1498
1499    <sect2 xml:id="ports-infrastructure">
1500      <title>Infrastructure Changes</title>
1501
1502      <para>&nbsp;</para>
1503    </sect2>
1504
1505    <sect2 xml:id="ports-packages ">
1506      <title>Packaging Changes</title>
1507
1508      <para>&nbsp;</para>
1509    </sect2>
1510  </sect1>
1511
1512  <sect1 xml:id="doc">
1513    <title>Documentation</title>
1514
1515    <para>This section covers changes to the &os;&nbsp;Documentation
1516      Project sources and toolchain.</para>
1517
1518    <sect2 xml:id="doc-sources">
1519      <title>Documentation Source Changes</title>
1520
1521      <para>&nbsp;</para>
1522    </sect2>
1523
1524    <sect2 xml:id="doc-toolchain">
1525      <title>Documentation Toolchain Changes</title>
1526
1527      <para>&nbsp;</para>
1528    </sect2>
1529  </sect1>
1530
1531  <sect1 xml:id="releng">
1532    <title>Release Engineering and Integration</title>
1533
1534    <para>This section convers changes that are specific to the
1535      &os;&nbsp;Release Engineering processes.</para>
1536
1537    <sect2 xml:id="releng-changes">
1538      <title>Integration Changes</title>
1539
1540      <para revision="277458" contrib="sponsor" sponsor="&ff;">The
1541	Release Engineering build tools have been updated to include
1542	support for producing virtual machine disk images for various
1543	cloud hosting providers.</para>
1544
1545      <para revision="278926">The Release Engineering build tools have
1546	been updated to use multi-threaded &man.xz.1;.  By default,
1547	the number of &man.xz.1; threads is set to the number of cores
1548	available.</para>
1549
1550      <para revision="281802" contrib="sponsor" sponsor="&ff;">The
1551	Release Engineering build tools have been updated to include
1552	support for building &os;/&arch.arm64; virtual machine and
1553	memory stick installation images.</para>
1554
1555      <para revision="282693" contrib="sponsor" sponsor="&ff;">The
1556	Release Engineering build tools have been updated to support
1557	building &os;/&arch.arm; images without external utilities for
1558	supported boards where a corresponding
1559	<literal>u-boot</literal> port exists in the Ports
1560	Collection.</para>
1561
1562      <para revision="283307" contrib="sponsor" sponsor="&ff;">The
1563	&os;/&arch.i386; memory stick installation images are now
1564	created using the &man.mkimg.1; utility, matching the way
1565	the &os;/&arch.amd64; images are created.</para>
1566    </sect2>
1567  </sect1>
1568</article>
1569