article.xml revision 319437
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: stable/11/release/doc/en_US.ISO8859-1/relnotes/article.xml 319437 2017-06-01 15:57:56Z gjb $</pubdate>
24
25    <!-- Last rev: 288943 -->
26
27    <copyright>
28      <year>2017</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="313203">The &man.inetd.8; utility is now built
163	without <literal>libwrap</literal> support when
164	<literal>WITHOUT_TCP_WRAPPERS</literal> is set in
165	&man.src.conf.5;.</para>
166
167      <para revision="316045">The &man.libthr.3; library and related
168	files are now evaluated and removed by the
169	<literal>delete-old-libs</literal> target when upgrading the
170	system if <literal>WITHOUT_LIBTHR</literal> is
171	set in &man.src.conf.5;.</para>
172
173      <para revision="316423" contrib="sponsor" sponsor="&ff;">The
174	<literal>WITH_LLD_AS_LD</literal> build knob has been added,
175	which installs <application>LLD</application> as
176	<filename>/usr/bin/ld</filename> if set.</para>
177
178      <para revision="318472" contrib="sponsor" sponsor="&ff;">
179	<application>LLD</application> has been enabled by default and
180	installed as <filename>/usr/bin/ld</filename> on
181	&os;/&arch.arm64;.</para>
182
183      <para revision="319244">The
184	<literal>WITH_RPCBIND_WARMSTART_SUPPORT</literal>
185	&man.src.conf.5; knob has been added, which when enabled
186	allows building &man.rpcbind.8; with
187	<literal>warmstart</literal> support.</para>
188    </sect2>
189
190    <sect2 xml:id="userland-programs">
191      <title>Userland Application Changes</title>
192
193      <para revision="305476" contrib="sponsor"
194	sponsor="&ff;">Support for &man.blacklistd.8; has been added
195	to <application>OpenSSH</application>.</para>
196
197      <para revision="306213">The &man.bspatch.1; utility has been
198	updated with &man.capsicum.4; support.</para>
199
200      <para revision="308720" contrib="sponsor" sponsor="&gandi;">The
201	&man.cron.8; utility has been updated to add support for
202	including files within <filename
203	  class="directory">/etc/cron.d</filename> and <filename
204	  class="directory">/usr/local/etc/cron.d</filename> by
205	default.</para>
206
207      <para revision="308721" contrib="sponsor" sponsor="&gandi;">The
208	&man.syslogd.8; utility has been updated to add the
209	<literal>include</literal> keyword which allows specifying
210	a directory containing configuration files to be included in
211	addition to &man.syslog.conf.5;.  The default
212	&man.syslog.conf.5; has been updated to include <filename
213	  class="directory">/etc/syslog.d</filename> and <filename
214	  class="directory">/usr/local/etc/syslog.d</filename> by
215	default.</para>
216
217      <para revision="308914">The &man.zfsbootcfg.8; utility has been
218	added, providing one-time &man.boot.config.5;-style options
219	for &man.zfsboot.8;.</para>
220
221      <para revision="315514" contrib="sponsor" sponsor="&yandex;">The
222	&man.setkey.8; utility has been modified to show the runtime
223	<acronym>NAT-T</acronym> configuration.  The
224	<literal>-g</literal> and <literal>-t</literal> flags have
225	been added, which list only global and virtual policies,
226	respectively, when used with the <literal>-D</literal> and
227	<literal>-P</literal> flags.</para>
228
229      <para revision="316098" contrib="sponsor"
230	sponsor="&dellemc;">The &man.getaddrinfo.1; utility has been
231	added, ported from NetBSD.</para>
232
233      <para revision="316944" contrib="sponsor"
234	sponsor="&multiplay;">The &man.jail.8; utility has been
235	updated to allow explicitly-assigned <acronym>IPv4</acronym>
236	and <acronym>IPv6</acronym> addresses to be used within
237	a jail.</para>
238
239      <para revision="317855">The &man.daemon.8; utility has been
240	updated to allow redirecting &man.stdout.4; and &man.stderr.4;
241	output to &man.syslog.3; or to a file.</para>
242
243      <para revision="318576" contrib="sponsor" sponsor="&ff;">The
244	&man.efivar.8; utility has been added, providing an interface
245	to manage <acronym>UEFI</acronym> variables.</para>
246    </sect2>
247
248    <sect2 xml:id="userland-contrib">
249      <title>Contributed Software</title>
250
251      <para revision="305837">&man.readelf.1; has been updated to
252	report &arch.arm; program and section header types.</para>
253
254      <para revision="305844" contrib="sponsor" sponsor="&ff;">The
255	<acronym>ELF</acronym> Tool Chain has been updated to upstream
256	revision r3490.</para>
257
258      <para revision="307631">&man.groff.1; has been updated to use
259	the changelog date rather than file modification date in
260	manual pages for build reproducibility.</para>
261
262      <para revision="307729">&man.unbound.8; has been updated to
263	version 1.5.10.</para>
264
265      <para revision="309125">&man.strings.1; has been updated to fix
266	the exit status when multiple files are provided as arguments,
267	and an error is encountered before the last file.</para>
268
269      <para revision="309183" contrib="sponsor"
270	sponsor="&ff;">&man.makewhatis.1; has been updated to produce
271	build-reproducible output.</para>
272
273      <para revision="309511"><application>Subversion</application>
274	has been updated to version 1.9.5.</para>
275
276      <para revision="309847">&man.file.1; has been updated to version
277	5.29.</para>
278
279      <para revision="310490">The &man.amd.8; utility has been updated
280	to version 6.2.</para>
281
282      <para revision="312336">The <acronym>CLDR</acronym> locales have
283	been updated to version 30.0.3.  The unicode locales have been
284	updated to version 9.0.0.</para>
285
286      <para revision="312517">&man.xz.1; has been updated to version
287	5.2.3.</para>
288
289      <para revision="313537">&man.tcpdump.1; has been updated to
290	version 4.9.0.</para>
291
292      <para revision="313795">&man.zlib.3; has been updated to version
293	1.2.11.</para>
294
295      <para revision="313980"><application>openresolv</application>
296	has been updated to version 3.9.0.</para>
297
298      <para revision="313680">The NetBSD test suite has been updated
299	to the 01.11.2017_23.20 snapshot.</para>
300
301      <para revision="314278"><literal>libucl</literal> has been
302	updated to version 20170219.</para>
303
304      <para revision="315432">&man.libarchive.3; has been updated to
305	version 3.3.1.</para>
306
307      <para revision="315995">&man.dma.8; has been updated to the
308	2017-02-10 snapshot.</para>
309
310      <para revision="316068">&man.ntpd.8; has been updated to version
311	4.2.8p10.</para>
312
313      <para revision="316303"><application>ACPICA</application> has
314	been updated to version 20170303.</para>
315
316      <para revision="316349">Timezone data files have been updated to
317	version 2017b.</para>
318
319      <para revision="316420">&man.mandoc.1; has been updated to
320	version 1.14.</para>
321
322      <para revision="316423"><application>Clang</application> has
323	been updated to version 4.0.0.</para>
324
325      <para revision="316423"><application>LLVM</application> has
326	been updated to version 4.0.0.</para>
327
328      <para revision="316423"><application>LLD</application> has
329	been updated to version 4.0.0.</para>
330
331      <para revision="316423"><application>LLDB</application> has
332	been updated to version 4.0.0.</para>
333
334      <para revision="316423"><application>compiler-rt</application>
335	has been updated to version 4.0.0.</para>
336
337      <para revision="316423"><application>libc++</application> has
338	been updated to version 4.0.0.</para>
339
340      <para revision="316957">&man.tcsh.1; has been updated to version
341	6.20.00.</para>
342
343      <para revision="318239" contrib="sponsor"
344	sponsor="&ff;">&man.blacklistd.8; has been updated to the
345	20170503 snapshot.</para>
346
347      <para revision="318402" contrib="sponsor"
348	sponsor="&ff;">&man.blacklistd.8; support for
349	<application>OpenSSH</application> has been refined to adjust
350	notification points to catch all authentication failures
351	rather than only those caused by invalid login
352	usernames.</para>
353
354      <para revision="319349">&man.byacc.1; has been updated to
355	version 20170201.</para>
356    </sect2>
357
358    <sect2 xml:id="userland-installer">
359      <title>Installation and Configuration Tools</title>
360
361      <para revision="311686">The installer, &man.bsdinstall.8;, has
362	been updated to include support for hidden wireless networks
363	when configuring the &man.wlan.4; interface.</para>
364    </sect2>
365
366    <sect2 xml:id="userland-rc">
367      <title><filename class="directory">/etc/rc.d</filename>
368	Scripts</title>
369
370      <para revision="310009" contrib="sponsor"
371	sponsor="&fisglobal;">The <literal>jail_confwarn</literal>
372	&man.rc.conf.5; entry has been added, which suppresses warning
373	about obsolete per-&man.jail.8; configurations.</para>
374    </sect2>
375
376    <sect2 xml:id="userland-periodic">
377      <title><filename class="directory">/etc/periodic</filename>
378	Scripts</title>
379
380      <para revision="317373">The default &man.periodic.conf.5; has
381	been updated to include the
382	<literal>anticongestion_sleeptime</literal> option,
383	consolidating random sleeps in &man.periodic.8; scripts and
384	replacing the <literal>daily_ntpd_avoid_congestion</literal>
385	option.  The default value is 3600 seconds.</para>
386
387      <para revision="317857">The <filename>410.status-mfi</filename>
388	&man.periodic.8; script has been added to monitor the status
389	of &man.mfi.4; volumes.</para>
390    </sect2>
391
392    <sect2 xml:id="userland-libraries">
393      <title>Runtime Libraries and API</title>
394
395      <para revision="310372">The <literal>libmd</literal> library has
396	been updated to introduce functions that operate on &man.fd.4;
397	instead of <literal>filename</literal>.</para>
398
399      <para revision="316039">The &man.kvm.close.3; function has been
400	updated to return the accumulated error from previous
401	&man.close.2; calls.</para>
402
403      <para revision="316613">The C standard library has been updated
404	to make use of &man.reallocarray.3; for bounds
405	checking.</para>
406
407      <para revision="317618" contrib="sponsor"
408	sponsor="&dellemc;">The <function>clock_nanosleep()</function>
409	system call has been added.  The
410	<function>nanosleep()</function> system call is now a wrapper
411	around <function>clock_nanosleep()</function>.</para>
412
413      <para revision="318121">The system libraries have been updated
414	to make use of &man.reallocarray.3; for bounds
415	checking.</para>
416    </sect2>
417
418    <sect2 xml:id="userland-abi">
419      <title>ABI Compatibility</title>
420
421      <para revision="309258">The type <literal>max_align_t</literal>
422	is now defined for C11 compliance.</para>
423
424      <para revision="315274" contrib="sponsor"
425	sponsor="&dellemc;">The
426	<function>sem_clockwait_np()</function> library function has
427	been added, which allows the caller to specify the reference
428	clock and choose between absolute and relative mode.</para>
429
430      <para revision="315282">The <application>clang</application>
431	<literal>nullability</literal> qualifiers have been added to
432	the <literal>C</literal> library headers.</para>
433
434      <para revision="315282">Uses of the <acronym>GNU</acronym>
435	<literal>__nonnull__</literal> attribute have been replaced
436	with the more benign <application>Clang</application>
437	nullability attributes.</para>
438    </sect2>
439
440    <sect2 xml:id="userland-debug">
441      <title>Userland Debugging</title>
442
443      <para revision="304499">&man.ptrace.2; now supports events for
444	&man.vfork.2;, permitting reliable debugging across
445	&man.vfork.2; invocations.</para>
446
447      <para revision="306786">Process core dumps now include the
448	process ID (<acronym>PID</acronym>) and command line
449	arguments.</para>
450    </sect2>
451  </sect1>
452
453  <sect1 xml:id="kernel">
454    <title>Kernel</title>
455
456    <para>This section covers changes to kernel configurations, system
457      tuning, and system control parameters that are not otherwise
458      categorized.</para>
459
460    <sect2 xml:id="kernel-general">
461      <title>General Kernel Changes</title>
462
463      <para revision="305514">The &man.getdtablesize.2; system call is
464	now permitted in capability mode.</para>
465
466      <para revision="305516">The <literal>kern.proc.nfds</literal>
467	&man.sysctl.8; is now permitted in capability mode.</para>
468
469      <para revision="312249">The
470	<filename>sys/conf/newvers.sh</filename> script has been
471	updated with an option to exclude build-specific metadata from
472	the kernel for build reproducibility.</para>
473    </sect2>
474
475    <sect2 xml:id="kernel-bugfix">
476      <title>Kernel Bug Fixes</title>
477
478      <para revision="317434">The &man.ipf.4; packet filter has been
479	updated to prevent <literal>keep state</literal> from
480	incorrectly implying <literal>keep frags</literal>, matching
481	the behavior documented in &man.ipf.5;.</para>
482    </sect2>
483
484    <sect2 xml:id="kernel-config">
485      <title>Kernel Configuration</title>
486
487      <para revision="312730">The
488	<literal>WITH_REPRODUCIBLE_BUILD</literal> &man.src.conf.5;
489	knob has been added, which when set, excludes build-specific
490	metadata from the kernel, for build reproducibility.</para>
491
492      <para revision="315514" contrib="sponsor" sponsor="&yandex;">The
493	<literal>IPSEC_NAT_T</literal> kernel configuration option has
494	been removed.  Support for <acronym>NAT-T</acronym> is now
495	enabled by default.</para>
496
497      <para revision="315514" contrib="sponsor" sponsor="&yandex;">The
498	<literal>IPSEC_FILTERTUNNEL</literal> kernel option has been
499	removed, which was deprecated by the
500	<literal>net.inet.ipsec.filtertunnel</literal> sysctl.</para>
501
502      <para revision="318763">The <literal>EARLY_AP_STARTUP</literal>
503	option has been enabled by default on &arch.amd64; and
504	&arch.i386; architectures, which when enabled releases
505	Application Processors (<acronym>AP</acronym>s) earlier in the
506	kernel startup process.</para>
507    </sect2>
508
509    <sect2 xml:id="kernel-modules">
510      <title>Kernel Modules</title>
511
512      <para revision="307144">&man.cloudabi.4; has been updated to
513	allow running 32-bit binaries within 64-bit userland
514	environments when the kernel configuration file has the
515	<literal>COMPAT_CLOUDABI32</literal> option present.</para>
516
517      <para revision="315514" contrib="sponsor" sponsor="&yandex;">The
518	<literal>ipsec</literal> and <literal>tcpmd5</literal> kernel
519	modules have been added.</para>
520
521      <note>
522	<para>Following the addition of the <literal>tcpmd5</literal>
523	  module, it is now necessary to have a security association
524	  (<acronym>SA</acronym>) entry for both inbound and outbound
525	  directions.</para>
526      </note>
527
528      <para revision="316274" contrib="sponsor" sponsor="&yandex;">The
529	&man.ipfw.4; packet filter has been updated to add support for
530	named dynamic states.</para>
531
532      <para revision="316444" contrib="sponsor" sponsor="&yandex;">The
533	<literal>ipfw_nptv6</literal> kernel module has been added,
534	implementing Network Prefix Translation for
535	<acronym>IPv6</acronym> as defined in <acronym>RFC</acronym>
536	6296.</para>
537
538      <para revision="316446" contrib="sponsor" sponsor="&yandex;">The
539	<literal>ipfw_nat64</literal> kernel module has been added,
540	implementing stateless and stateful
541	<acronym>NAT64</acronym>.</para>
542
543      <para revision="316660" contrib="sponsor" sponsor="&ff;">The
544	&man.cfumass.4; device has been added, providing a storage
545	frontend to <acronym>USB</acronym>
546	<acronym>OTG</acronym>-capable hardware.</para>
547
548      <para revision="317045" contrib="sponsor" sponsor="&yandex;">The
549	<literal>ipfw_pmod</literal> kernel module has been added,
550	designed for modifying packets of any protocol.</para>
551
552      <note>
553	<para>At present, only <acronym>TCP</acronym>
554	  <acronym>MSS</acronym> modification is implemented.</para>
555      </note>
556    </sect2>
557
558    <sect2 xml:id="kernel-sysctl">
559      <title>System Tuning and Controls</title>
560
561      <para revision="315539">The
562	<literal>vfs.root_mount_always_wait</literal> tunable has been
563	added, which forces the kernel to wait for root mount holds
564	even if the root device is already present.</para>
565
566      <para revision="316120" contrib="sponsor"
567	sponsor="&dellemc;">When the system real time clock
568	(<acronym>RTC</acronym>) is adjusted, such as by
569	<function>clock_settime()</function>, sleeping threads are now
570	awakened and absolute sleep times are reevaluated based on the
571	new value of the RTC.</para>
572    </sect2>
573  </sect1>
574
575  <sect1 xml:id="drivers">
576    <title>Devices and Drivers</title>
577
578    <para>This section covers changes and additions to devices and
579      device drivers since &release.prev;.</para>
580
581    <sect2 xml:id="drivers-device">
582      <title>Device Drivers</title>
583
584      <para revision="307768">The &man.jedec.ts.4; driver has been
585	added, providing support for thermal sensors on memory
586	modules.  The driver currently supports chips that are fully
587	compliant with the <acronym>JEDEC</acronym>
588	<acronym>JC</acronym> 42.4 specification.</para>
589
590      <para revision="308104">The &man.chromebook.platform.4; driver
591	has been added, providing support for various Chromebook
592	models.</para>
593
594      <para revision="308942">The &man.bytgpio.4; driver has been
595	added, providing support for Intel&reg; Bay&nbsp;Trail&trade;
596	SoC GPIO controllers.</para>
597
598      <para revision="312394"><filename>/dev/kmem</filename> no longer
599	supports access via <function>mmap()</function>.  Consumers
600	wishing to use <filename>/dev/kmem</filename> must use
601	<function>read()</function> and
602	<function>write()</function>.</para>
603
604      <para revision="306533" contrib="sponsor"
605	sponsor="&chelsio;">&man.devctl.8; now supports a &quot;clear
606	driver&quot; command as a complement to &quot;set
607	driver&quot;.</para>
608    </sect2>
609
610    <sect2 xml:id="drivers-storage">
611      <title>Storage Drivers</title>
612
613      <para>&nbsp;</para>
614    </sect2>
615
616    <sect2 xml:id="drivers-network">
617      <title>Network Drivers</title>
618
619      <para revision="306660" contrib="sponsor"
620	sponsor="&chelsio;">The &man.cxgbe.4; driver has been updated
621	to provide support for Virtual Function devices
622	(<acronym>VFs</acronym>) on Chelsio T4 and T5 adapters.</para>
623
624      <para revision="306661" contrib="sponsor"
625	sponsor="&chelsio;">TCP connections using the TCP Offload
626	Engine (<acronym>TOE</acronym>) on Chelsio T4+ adapters can
627	now perform zero-copy sends via
628	<function>aio_write()</function>.</para>
629
630      <para revision="306664" contrib="sponsor"
631	sponsor="&chelsio;">The &man.cxgbev.4; driver has been added,
632	providing support for Virtual Function devices
633	(<acronym>VFs</acronym>) on Chelsio T4 and T5 adapters.</para>
634
635      <para revision="309377" contrib="sponsor"
636	sponsor="&broadcom;">The &man.bnxt.4; driver has been added,
637	providing support for Broadcom&reg; NetXtreme-C&trade; and
638	NetXtreme-E&trade; devices.</para>
639
640      <para revision="309560" contrib="sponsor"
641	sponsor="&chelsio;">The &man.cxgbe.4; driver now supports
642	devices using T6-based adapters which support 10, 25, 40, and
643	100 Gbps.</para>
644
645      <para revision="309560" contrib="sponsor"
646	sponsor="&chelsio;">The &man.cxgbe.4; driver has been updated
647	to provide support for Virtual Function devices
648	(<acronym>VFs</acronym>) on Chelsio T6 adapters.</para>
649
650      <para revision="309560" contrib="sponsor"
651	sponsor="&chelsio;">The &man.cxgbev.4; driver has been updated
652	to provide support for Virtual Function devices
653	(<acronym>VFs</acronym>) on Chelsio T6 adapters.</para>
654
655      <para revision="310852" contrib="sponsor"
656	sponsor="&netgate;">The &man.miibus.4; driver has been updated
657	to support Microchip/Micrel KSZ9031 Gigabit ethernet
658	cards.</para>
659
660      <para revision="312358">The &man.alc.4; driver has been updated
661	to provide support for Atheros&reg; Killer&nbsp;E2400&trade;
662	Gigabit ethernet cards.</para>
663
664      <para revision="314005" contrib="sponsor" sponsor="&ms;">The
665	&man.alc.4; driver has been updated to provide support for
666	Atheros&reg; Killer&nbsp;E2500&trade; Gigabit ethernet
667	cards.</para>
668
669      <para revision="315330" contrib="sponsor"
670	sponsor="&netgate;">The &man.etherswitch.4; driver has been
671	updated to support RTL8366RB and RTL8366SR cards.</para>
672
673      <para revision="315514" contrib="sponsor" sponsor="&yandex;">The
674	&man.if.ipsec.4; virtual tunneling interface has been added,
675	implementing route-based <acronym>VPN</acronym>s protected
676	with Encapsulating Security Payload
677	(<acronym>ESP</acronym>).</para>
678
679      <para revision="317116">The &man.qlnxe.4; driver has been added,
680	providing support for Cavium&reg; Qlogic&trade; 45000 Series
681	adapters.</para>
682
683      <para revision="317182">The &man.qlxgbe.4; firmware has been
684	updated to version 5.4.64.</para>
685
686      <para revision="318357" contrib="sponsor"
687	sponsor="&intelcorp;">The &man.ixl.4; driver has been updated
688	to version 1.7.12-k.</para>
689
690      <para revision="319269" contrib="sponsor"
691	sponsor="&chelsio;">The &man.cxgbe.4; driver has been updated
692	to firmware version 1.16.45.0 for T4, T5, and T6 cards.</para>
693    </sect2>
694  </sect1>
695
696  <sect1 xml:id="hardware">
697    <title>Hardware Support</title>
698
699    <para>This section covers general hardware support for physical
700      machines, hypervisors, and virtualization environments, as well
701      as hardware changes and updates that do not otherwise fit in
702      other sections of this document.</para>
703
704    <sect2 xml:id="hardware-support">
705      <title>Hardware Support</title>
706
707      <para revision="307576">The &man.atkbdc.4; driver has been
708	updated to provide support for Elantech&reg; trackpads.  To
709	enable hardware support, add
710	<literal>hw.psm.elantech_support=1</literal> to
711	&man.loader.conf.5;.</para>
712    </sect2>
713
714    <sect2 xml:id="hardware-virtualization">
715      <title>Virtualization Support</title>
716
717      <para revision="306471" contrib="sponsor"
718	sponsor="&chelsio;"><acronym>PCI</acronym> passthrough with
719	&man.bhyve.4; supports more dynamic configurations permitting
720	devices to be marked for passthrough or host use at
721	runtime.</para>
722
723      <para revision="306520" contrib="sponsor"
724	sponsor="&chelsio;"><acronym>PCI</acronym> passthrough with
725	&man.bhyve.4; resets functions via <acronym>FLR</acronym> when
726	a virtual machine is started and stopped.</para>
727
728      <para revision="309312" contrib="sponsor"
729	sponsor="&ms;"><acronym>PCI</acronym> passthrough support has
730	been enabled on &os; virtual machines running on
731	Microsoft&reg; Hyper-V&trade;.</para>
732
733      <para revision="314091" contrib="sponsor" sponsor="&ms;">The
734	&man.hv.netvsc.4; driver <acronym>SR-IOV</acronym>
735	implementation has been updated to support Virtual Function
736	(<acronym>VF</acronym>) devices, such as the Mellanox&reg;
737	Connect-X3&trade; network card.</para>
738
739      <para revision="316272" contrib="sponsor" sponsor="&ms;">Support
740	for Microsoft&reg; Hyper-V&trade; Generation 2 virtual
741	machines has been added.</para>
742
743      <para revision="317119" contrib="sponsor" sponsor="&ms;">Support
744	for synthetic keyboards has been added for virtual machines
745	running on Microsoft&reg; Hyper-V&trade;.</para>
746
747      <para revision="312790">The &os; virtual machines provided on
748	Amazon&reg; EC2&trade; now enable <acronym>IPv6</acronym> by
749	default.</para>
750    </sect2>
751
752    <sect2 xml:id="hardware-arm">
753      <title>ARM Support</title>
754
755      <para revision="305436">Support for the Allwinner A13 board has
756	been added.</para>
757    </sect2>
758  </sect1>
759
760  <sect1 xml:id="storage">
761    <title>Storage</title>
762
763    <para>This section covers changes and additions to file systems
764      and other storage subsystems, both local and networked.</para>
765
766    <sect2 xml:id="storage-general">
767      <title>General Storage</title>
768
769      <para>&nbsp;</para>
770    </sect2>
771
772    <sect2 xml:id="storage-net">
773      <title>Networked Storage</title>
774
775      <para revision="318660">The <acronym>NFS</acronym> client now
776	properly handles <literal>NFS4ERR_BAD_SESSION</literal> errors
777	received from an <acronym>NFS</acronym> server.  Additionally,
778	the kernel <acronym>RPC</acronym> client has been updated to
779	prevent creating new <acronym>TCP</acronym> connections when
780	<literal>ERESTART</literal> is received from
781	&man.sosend.9;.</para>
782
783      <para revision="318660">The <acronym>NFS</acronym> client now
784	supports the Amazon&reg; Elastic File System&trade;
785	(<acronym>EFS</acronym>).</para>
786    </sect2>
787
788    <sect2 xml:id="storage-zfs">
789      <title>ZFS</title>
790
791      <para revision="318785">The
792	<literal>vfs.zfs.debug_flags</literal> &man.sysctl.8; has been
793	deprecated in favor of
794	<literal>vfs.zfs.debugflags</literal>.  Additionally,
795	<literal>vfs.zfs.debugflags</literal> can now be configured in
796	&man.loader.conf.5;, whereas
797	<literal>vfs.zfs.debug_flags</literal> could not.</para>
798    </sect2>
799
800    <sect2 xml:id="storage-geom">
801      <title><literal>geom(4)</literal></title>
802
803      <para>&nbsp;</para>
804    </sect2>
805  </sect1>
806
807  <sect1 xml:id="boot">
808    <title>Boot Loader Changes</title>
809
810    <para>This section covers the boot loader, boot menu, and other
811      boot-related changes.</para>
812
813    <sect2 xml:id="boot-loader">
814      <title>Boot Loader Changes</title>
815
816      <para revision="305845" contrib="sponsor" sponsor="&ff;">The
817	<acronym>UEFI</acronym> boot loader has been updated for build
818	reproducibility.</para>
819
820      <para revision="307632" contrib="sponsor" sponsor="&gandi;">The
821	<acronym>EFI</acronym> loader has been updated to support
822	<acronym>TFTPFS</acronym>, providing netboot support without
823	requiring an <acronym>NFS</acronym> server.</para>
824    </sect2>
825
826    <sect2 xml:id="boot-menu">
827      <title>Boot Menu Changes</title>
828
829      <para>&nbsp;</para>
830    </sect2>
831  </sect1>
832
833  <sect1 xml:id="network">
834    <title>Networking</title>
835
836    <para>This section describes changes that affect networking in
837      &os;.</para>
838
839    <sect2 xml:id="network-general">
840      <title>General Network Changes</title>
841
842      <para revision="311681" contrib="sponsor" sponsor="&yandex;">The
843	network stack has been updated to include
844	<function>ip6_tryforward()</function>, providing performance
845	benefits as result of a reduced number of checks.</para>
846
847      <para revision="313523" contrib="sponsor"
848	sponsor="&dellemc;">The network stack has been modified to fix
849	incorrect or invalid <acronym>IP</acronym> addresses if
850	multiple threads emit a <acronym>UDP</acronym>
851	<literal>log_in_vain</literal> message concurrently.</para>
852
853      <para revision="317386" contrib="sponsor"
854	sponsor="&multiplay;">The <acronym>TCP</acronym> stack has
855	been changed to use the estimated <acronym>RTT</acronym>
856	instead of timestamps for receive buffer auto resizing.</para>
857    </sect2>
858
859    <sect2 xml:id="network-protocols">
860      <title>Network Protocols</title>
861
862      <para revision="309337" contrib="sponsor"
863	sponsor="&dellemc;">Support for <acronym>GARP</acronym>
864	(gratuitous <acronym>ARP</acronym>) retransmit has been added.
865	A new &man.sysctl.8;,
866	<literal>net.link.ether.inet.garp_rexmit_count</literal>, has
867	been added, which sets the maximum number of retransmissions
868	when set to a non-zero value.</para>
869
870      <para revision="315514" contrib="sponsor"
871	sponsor="&yandex;">Support for the
872	<literal>UDP_ENCAP_ESPINUDP_NON_IKE</literal> encapsulation
873	type has been removed.</para>
874    </sect2>
875  </sect1>
876
877  <sect1 xml:id="ports">
878    <title>Ports Collection and Package Infrastructure</title>
879
880    <para>This section covers changes to the &os;&nbsp;Ports
881      Collection, package infrastructure, and package maintenance and
882      installation tools.</para>
883
884    <sect2 xml:id="ports-infrastructure">
885      <title>Infrastructure Changes</title>
886
887      <para>&nbsp;</para>
888    </sect2>
889
890    <sect2 xml:id="ports-packages ">
891      <title>Packaging Changes</title>
892
893      <para>&nbsp;</para>
894    </sect2>
895  </sect1>
896
897  <sect1 xml:id="doc">
898    <title>Documentation</title>
899
900    <para>This section covers changes to the &os;&nbsp;Documentation
901      Project sources and toolchain.</para>
902
903    <sect2 xml:id="doc-sources">
904      <title>Documentation Source Changes</title>
905
906      <para>&nbsp;</para>
907    </sect2>
908
909    <sect2 xml:id="doc-toolchain">
910      <title>Documentation Toolchain Changes</title>
911
912      <para>&nbsp;</para>
913    </sect2>
914  </sect1>
915
916  <sect1 xml:id="releng">
917    <title>Release Engineering and Integration</title>
918
919    <para>This section convers changes that are specific to the
920      &os;&nbsp;Release Engineering processes.</para>
921
922    <sect2 xml:id="releng-changes">
923      <title>Integration Changes</title>
924
925      <para>&nbsp;</para>
926    </sect2>
927  </sect1>
928</article>
929