---
title: "FreeBSD 10.4-RELEASE Release Notes"
sidenav: download
---

= FreeBSD 10.4-RELEASE Release Notes

== Abstract

The release notes for FreeBSD 10.4-RELEASE contain a summary of the changes made to the FreeBSD base system on the 10.4-STABLE development line. This document lists applicable security advisories that were issued since the last release, as well as significant changes to the FreeBSD kernel and userland. Some brief remarks on upgrading are also presented.

== Table of Contents

* <<intro,Introduction>>
* <<upgrade,Upgrading from Previous Releases of FreeBSD>>
* <<security-errata,Security and Errata>>
** <<security,Security Advisories>>
** <<errata,Errata Notices>>
* <<userland,Userland>>
** <<userland-config,Userland Configuration Changes>>
** <<userland-programs,Userland Application Changes>>
** <<userland-contrib,Contributed Software>>
** <<userland-installer,Installation and Configuration Tools>>
** <<userland-libraries,Runtime Libraries and API>>
** <<userland-abi,ABI Compatibility>>
** <<userland-debug, Userland Debugging>>
* <<kernel,Kernel>>
** <<kernel-misc,Miscellaneous Kernel Changes>>
** <<kernel-bugfix,Kernel Bug Fixes>>
** <<kernel-sysctl,System Tuning and Controls>>
* <<drivers,Devices and Drivers>>
** <<drivers-device, Device Drivers>>
** <<drivers-storage,Storage Drivers>>
** <<drivers-network,Network Drivers>>
* <<hardware,Hardware Support>>
** <<hardware-virtualization,Virtualization Support>>
* <<storage,Storage>>
** <<storage-net,Networked Storage>>
* <<network,Networking>>
** <<network-general, General Networking Changes>>
** <<network-protocols,Network Protocols>>
* <<ports,Ports Collection and Package Infrastructure>>
** <<ports-packages,Packaging Changes>>

[[intro]]
== Introduction

This document contains the release notes for FreeBSD 10.4-RELEASE. It describes recently added, changed, or deleted features of FreeBSD. It also provides some notes on upgrading from previous versions of FreeBSD.

The snapshot distribution to which these release notes apply represents a point along the 10.4-STABLE development branch between 10.3-RELEASE and the future 10.4-STABLE. Information regarding pre-built, binary snapshot distributions along this branch can be found at `https://www.FreeBSD.org/releases/`.

All users are encouraged to consult the release errata before installing FreeBSD. The errata document is updated with "late-breaking" information discovered late in the release cycle or after the release. Typically, it contains information on known bugs, security advisories, and corrections to documentation. An up-to-date copy of the errata for FreeBSD 10.3-RELEASE can be found on the FreeBSD Web site.

This document describes the most user-visible new or changed features in FreeBSD since 10.3-RELEASE.

Typical release note items document recent security advisories issued after 10.3-RELEASE, new drivers or hardware support, new commands or options, major bug fixes, or contributed software upgrades. They may also list changes to major ports/packages or release engineering practices. Clearly the release notes cannot list every single change made to FreeBSD between releases; this document focuses primarily on security advisories, user-visible changes, and major architectural improvements.

[[upgrade]]
== Upgrading from Previous Releases of FreeBSD

[amd64,i386] Binary upgrades between RELEASE versions (and snapshots of the various security branches) are supported using the http://www.FreeBSD.org/cgi/man.cgi?query=freebsd-update&sektion=8[freebsd-update(8)] utility. The binary upgrade procedure will update unmodified userland utilities, as well as unmodified `GENERIC` kernel distributed as a part of an official FreeBSD release. The http://www.FreeBSD.org/cgi/man.cgi?query=freebsd-update&sektion=8[freebsd-update(8)] utility requires that the host being upgraded have Internet connectivity.

Source-based upgrades (those based on recompiling the FreeBSD base system from source code) from previous versions are supported, according to the instructions in [.filename]`/usr/src/UPDATING`.

[.important]
*Important*: +
Upgrading FreeBSD should only be attempted after backing up _all_ data and configuration files.

[[security-errata]]
== Security and Errata

This section lists the various Security Advisories and Errata Notices since 10.3-RELEASE.

[[security]]
== Security Advisories

[width="100%",cols="40%,30%,30%",options="header",]
|===
|Advisory |Date |Topic
|https://www.FreeBSD.org/security/advisories/FreeBSD-SA-16:09.ntp.asc[FreeBSD-SA-16:09.ntp] |29 April 2016 |Multiple ntp vulnerabilities.
|https://www.FreeBSD.org/security/advisories/FreeBSD-SA-16:17.openssl.asc[FreeBSD-SA-16:17.openssl] |29 April 2016 |Multiple OpenSSL vulnerabilities.
|https://www.FreeBSD.org/security/advisories/FreeBSD-SA-16:18.atkbd.asc[FreeBSD-SA-16:18.atkbd] |17 May 2016 |Keyboard driver buffer overflow
|https://www.FreeBSD.org/security/advisories/FreeBSD-SA-16:19.sendmsg.asc[FreeBSD-SA-16:19.sendmsg] |17 May 2016 |Incorrect argument handling in https://www.FreeBSD.org/cgi/man.cgi?query=sendmsg&sektion=2&manpath=freebsd-release-ports[sendmsg(2)]
|https://www.FreeBSD.org/security/advisories/FreeBSD-SA-16:20.linux.asc[FreeBSD-SA-16:20.linux] |31 May 2016 |Kernel stack disclosure in Linux compatibility layer
|https://www.FreeBSD.org/security/advisories/FreeBSD-SA-16:21.43bsd.asc[FreeBSD-SA-16:21.43bsd] |31 May 2016 |Kernel stack disclosure in 4.3BSD compatibility layer
|https://www.FreeBSD.org/security/advisories/FreeBSD-SA-16:22.libarchive.asc[FreeBSD-SA-16:22.libarchive] |31 May 2016 |Absolute path traversal vulnerability
|https://www.FreeBSD.org/security/advisories/FreeBSD-SA-16:23.libarchive.asc[FreeBSD-SA-16:23.libarchive] |31 May 2016 |Absolute path traversal vulnerability
|https://www.FreeBSD.org/security/advisories/FreeBSD-SA-16:24.ntp.asc[FreeBSD-SA-16:24.ntp] |3 June 2016 |Multiple ntp vulnerabilties
|https://www.FreeBSD.org/security/advisories/FreeBSD-SA-16:25.bspatch.asc[FreeBSD-SA-16:25.bspatch] |25 July 2016 |heap overflow vulnerability
|https://www.FreeBSD.org/security/advisories/FreeBSD-SA-16:26.openssl.asc[FreeBSD-SA-16:26.openssl] |23 September 2016 |Multiple vulnerabilities
|https://www.FreeBSD.org/security/advisories/FreeBSD-SA-16:27.openssl.asc[FreeBSD-SA-16:27.openssl] |26 September 2016 |Regression in OpenSSL suite
|https://www.FreeBSD.org/security/advisories/FreeBSD-SA-16:29.bspatch.asc[FreeBSD-SA-16:29.bspatch] |10 October 2016 |Heap overflow vulnerability
|https://www.FreeBSD.org/security/advisories/FreeBSD-SA-16:30.portsnap.asc[FreeBSD-SA-16:30.portsnap] |10 October 2016 |Multiple vulnerabilities
|https://www.FreeBSD.org/security/advisories/FreeBSD-SA-16:31.libarchive.asc[FreeBSD-SA-16:31.libarchive] |10 October 2016 |Multiple vulnerabilities
|https://www.FreeBSD.org/security/advisories/FreeBSD-SA-16:33.openssh.asc[FreeBSD-SA-16:33.openssh] |2 November 2016 |Remote Denial of Service vulnerability
|https://www.FreeBSD.org/security/advisories/FreeBSD-SA-16:35.openssl.asc[FreeBSD-SA-16:35.openssl] |2 November 2016 |Remote Denial of Service vulnerability
|https://www.FreeBSD.org/security/advisories/FreeBSD-SA-16:36.telnetd.asc[FreeBSD-SA-16:36.telnetd] |6 December 2016 |Possible https://www.FreeBSD.org/cgi/man.cgi?query=login&sektion=1&manpath=freebsd-release-ports[login(1)] argument injection
|https://www.FreeBSD.org/security/advisories/FreeBSD-SA-16:37.libc.asc[FreeBSD-SA-16:37.libc] |6 December 2016 |https://www.FreeBSD.org/cgi/man.cgi?query=link_ntoa&sektion=3&manpath=freebsd-release-ports[link_ntoa(3)] buffer overflow
|https://www.FreeBSD.org/security/advisories/FreeBSD-SA-16:38.bhyve.asc[FreeBSD-SA-16:38.bhyve] |6 December 2016 |Possible escape from https://www.FreeBSD.org/cgi/man.cgi?query=bhyve&sektion=8&manpath=freebsd-release-ports[bhyve(8)] virtual machine
|https://www.FreeBSD.org/security/advisories/FreeBSD-SA-16:39.ntp.asc[FreeBSD-SA-16:39.ntp] |22 December 2016 |Multiple vulnerabilities
|https://www.FreeBSD.org/security/advisories/FreeBSD-SA-17:01.openssh.asc[FreeBSD-SA-17:01.openssh] |10 January 2017 |Multiple vulnerabilities
|https://www.FreeBSD.org/security/advisories/FreeBSD-SA-17:02.openssl.asc[FreeBSD-SA-17:02.openssl] |23 February 2017 |Fix OpenSSL RC4_MD5 cipher vulnerability
|https://www.FreeBSD.org/security/advisories/FreeBSD-SA-17:03.ntp.asc[FreeBSD-SA-17:03.ntp] |12 April 2017 |Multiple vulnerabilities
|https://www.FreeBSD.org/security/advisories/FreeBSD-SA-17:04.ipfilter.asc[FreeBSD-SA-17:04.ipfilter] |27 April 2017 |Fix fragment handling panic
|https://www.FreeBSD.org/security/advisories/FreeBSD-SA-17:05.heimdal.asc[FreeBSD-SA-17:05.heimdal] |12 July 2017 |Fix KDC-REP service name validation vulnerability
|===

[[errata]]
== Errata Notices

[width="100%",cols="40%,30%,30%",options="header",]
|===
|Errata |Date |Topic
|https://www.FreeBSD.org/security/advisories/FreeBSD-EN-16:06.libc.asc[FreeBSD-EN-16:06.libc] |4 May 2016 |Performance regression in libc https://www.FreeBSD.org/cgi/man.cgi?query=hash&sektion=3&manpath=freebsd-release-ports[hash(3)]
|https://www.FreeBSD.org/security/advisories/FreeBSD-EN-16:07.ipi.asc[FreeBSD-EN-16:07.ipi] |4 May 2016 |Excessive latency in x86 IPI delivery
|https://www.FreeBSD.org/security/advisories/FreeBSD-EN-16:08.zfs.asc[FreeBSD-EN-16:08.zfs] |4 May 2016 |Memory leak in ZFS
|https://www.FreeBSD.org/security/advisories/FreeBSD-EN-16:09.freebsd-update.asc[FreeBSD-EN-16:09.freebsd-update] |25 July 2016 |Fix https://www.FreeBSD.org/cgi/man.cgi?query=freebsd-update&sektion=8&manpath=freebsd-release-ports[freebsd-update(8)] support of FreeBSD 11.0-RELEASE
|https://www.FreeBSD.org/security/advisories/FreeBSD-EN-16:10.dhclient.asc[FreeBSD-EN-16:10.dhclient] |11 August 2016 |Better handle unknown options received from aDHCP server
|https://www.FreeBSD.org/security/advisories/FreeBSD-EN-16:11.vmbus.asc[FreeBSD-EN-16:11.vmbus] |11 August 2016 |Avoid using spin locks for channel message locks
|https://www.FreeBSD.org/security/advisories/FreeBSD-EN-16:12.hv_storvsc.asc[FreeBSD-EN-16:12.hv_storvsc] |11 August 2016 |Enable INQUIRY result check only on Windows 10 host systems
|https://www.FreeBSD.org/security/advisories/FreeBSD-EN-16:13.vmbus.asc[FreeBSD-EN-16:13.vmbus] |11 August 2016 |Register time counter early enough for TSC freq calibration
|https://www.FreeBSD.org/security/advisories/FreeBSD-EN-16:14.hv_storvsc.asc[FreeBSD-EN-16:14.hv_storvsc] |11 August 2016 |Disable incorrect callout in https://www.FreeBSD.org/cgi/man.cgi?query=hv_storvsc&sektion=4&manpath=freebsd-release-ports[hv_storvsc(4)]
|https://www.FreeBSD.org/security/advisories/FreeBSD-EN-16:15.vmbus.asc[FreeBSD-EN-16:15.vmbus] |11 August 2016 |Better handle the GPADL setup failure in Hyper-V
|https://www.FreeBSD.org/security/advisories/FreeBSD-EN-16:16.hv_storvsc.asc[FreeBSD-EN-16:16.hv_storvsc] |11 August 2016 |Fix SCSI INQUIRY checks and error handling
|https://www.FreeBSD.org/security/advisories/FreeBSD-EN-16:17.vm.asc[FreeBSD-EN-16:17.vm] |25 October 2016 |Several virtual memory issues
|https://www.FreeBSD.org/security/advisories/FreeBSD-EN-16:19.tzcode.asc[FreeBSD-EN-16:19.tzcode] |6 December 2016 |Fix warnings about invalid timezone abbreviations
|https://www.FreeBSD.org/security/advisories/FreeBSD-EN-16:20.tzdata.asc[FreeBSD-EN-16:20.tzdata] |6 December 2016 |Update timezone database information
|https://www.FreeBSD.org/security/advisories/FreeBSD-EN-17:05.xen.asc[FreeBSD-EN-17:05.xen] |23 February 2017 |Xen migration enhancements
|https://www.FreeBSD.org/security/advisories/FreeBSD-EN-17:06.hyperv.asc[FreeBSD-EN-17:06.hyperv] |12 July 2017 |Boot compatibility improvements with Azure virtual machines
|===

[[userland]]
== Userland

This section covers changes and additions to userland applications, contributed software, and system utilities.

[[userland-config]]
== Userland Configuration Changes

The https://www.FreeBSD.org/cgi/man.cgi?query=inetd&sektion=8&manpath=freebsd-release-ports[inetd(8)] utility is now built without `libwrap` support when `WITHOUT_TCP_WRAPPERS` is set in https://www.FreeBSD.org/cgi/man.cgi?query=src.conf&sektion=5&manpath=freebsd-release-ports[src.conf(5)]. http://svn.freebsd.org/viewvc/base?view=revision&revision=313206[(r313206)]

The https://www.FreeBSD.org/cgi/man.cgi?query=libthr&sektion=3&manpath=freebsd-release-ports[libthr(3)] library and related files are now evaluated and removed by the `delete-old-libs` target when upgrading the system if `WITHOUT_LIBTHR` is set in https://www.FreeBSD.org/cgi/man.cgi?query=src.conf&sektion=5&manpath=freebsd-release-ports[src.conf(5)]. http://svn.freebsd.org/viewvc/base?view=revision&revision=316046[(r316046)]

The `WITH_RPCBIND_WARMSTART_SUPPORT` https://www.FreeBSD.org/cgi/man.cgi?query=src.conf&sektion=5&manpath=freebsd-release-ports[src.conf(5)] knob has been added, which when enabled allows building https://www.FreeBSD.org/cgi/man.cgi?query=rpcbind&sektion=8&manpath=freebsd-release-ports[rpcbind(8)] with `warmstart` support. http://svn.freebsd.org/viewvc/base?view=revision&revision=319243[(r319243)]

[[userland-programs]]
== Userland Application Changes

The https://www.FreeBSD.org/cgi/man.cgi?query=truss&sektion=1&manpath=freebsd-release-ports[truss(1)] utility has been updated to include the `-H` flag, which logs the thread ID of a thread invoking a system call. http://svn.freebsd.org/viewvc/base?view=revision&revision=298427[(r298427)]

The https://www.FreeBSD.org/cgi/man.cgi?query=zfsbootcfg&sektion=8&manpath=freebsd-release-ports[zfsbootcfg(8)] utility has been added, providing one-time https://www.FreeBSD.org/cgi/man.cgi?query=boot.config&sektion=5&manpath=freebsd-release-ports[boot.config(5)]-style options for https://www.FreeBSD.org/cgi/man.cgi?query=zfsboot&sektion=8&manpath=freebsd-release-ports[zfsboot(8)]. http://svn.freebsd.org/viewvc/base?view=revision&revision=308915[(r308915)]

The https://www.FreeBSD.org/cgi/man.cgi?query=pw&sektion=8&manpath=freebsd-release-ports[pw(8)] utility has been updated to properly respect https://www.FreeBSD.org/cgi/man.cgi?query=pw.conf&sektion=5&manpath=freebsd-release-ports[pw.conf(5)], if present. http://svn.freebsd.org/viewvc/base?view=revision&revision=316348[(r316348)]

The https://www.FreeBSD.org/cgi/man.cgi?query=cxgbetool&sektion=8&manpath=freebsd-release-ports[cxgbetool(8)] utility has been added, providing command-line access to features and debugging facilities of https://www.FreeBSD.org/cgi/man.cgi?query=cxgbe&sektion=4&manpath=freebsd-release-ports[cxgbe(4)] devices. http://svn.freebsd.org/viewvc/base?view=revision&revision=319390[(r319390)]

The https://www.FreeBSD.org/cgi/man.cgi?query=ifconfig&sektion=8&manpath=freebsd-release-ports[ifconfig(8)] utility has been updated to show MAC addresses persistently stored by network drivers. This provides a mechanism through which the original MAC address can be retrieved if, for example, an interface is added to a https://www.FreeBSD.org/cgi/man.cgi?query=lagg&sektion=4&manpath=freebsd-release-ports[lagg(4)] and the `MAC` is overridden in https://www.FreeBSD.org/cgi/man.cgi?query=rc.conf&sektion=5&manpath=freebsd-release-ports[rc.conf(5)]. http://svn.freebsd.org/viewvc/base?view=revision&revision=318430[(r318430)]

The https://www.FreeBSD.org/cgi/man.cgi?query=rcp&sektion=1&manpath=freebsd-release-ports[rcp(1)], https://www.FreeBSD.org/cgi/man.cgi?query=rlogin&sektion=1&manpath=freebsd-release-ports[rlogin(1)], https://www.FreeBSD.org/cgi/man.cgi?query=rsh&sektion=1&manpath=freebsd-release-ports[rsh(1)], https://www.FreeBSD.org/cgi/man.cgi?query=rlogind&sektion=8&manpath=freebsd-release-ports[rlogind(8)], and https://www.FreeBSD.org/cgi/man.cgi?query=rshd&sektion=8&manpath=freebsd-release-ports[rshd(8)] utilities have been marked as deprecated, and planned for removal in FreeBSD 12.0-RELEASE. http://svn.freebsd.org/viewvc/base?view=revision&revision=320646[(r320646)]

The https://www.FreeBSD.org/cgi/man.cgi?query=syslogd&sektion=8&manpath=freebsd-release-ports[syslogd(8)] utility has been updated to restart logging a subprocess that had restarted unexpectedly. http://svn.freebsd.org/viewvc/base?view=revision&revision=320772[(r320772)]

The https://www.FreeBSD.org/cgi/man.cgi?query=gdb&sektion=1&manpath=freebsd-release-ports[gdb(1)] and https://www.FreeBSD.org/cgi/man.cgi?query=kgdb&sektion=1&manpath=freebsd-release-ports[kgdb(1)] utilities have been marked as deprecated, and planned for removal from the base system in the future. A newer version is available in the `devel/gdb` port. http://svn.freebsd.org/viewvc/base?view=revision&revision=320824[(r320824)]

The https://www.FreeBSD.org/cgi/man.cgi?query=cron&sektion=8&manpath=freebsd-release-ports[cron(8)] utility has been updated to add support for including files within `/etc/cron.d` and `/usr/local/etc/cron.d` by default. http://svn.freebsd.org/viewvc/base?view=revision&revision=321242[(r321242)]

The https://www.FreeBSD.org/cgi/man.cgi?query=syslogd&sektion=8&manpath=freebsd-release-ports[syslogd(8)] utility has been updated to add the `include` keyword which allows specifying a directory containing configuration files to be included in addition to https://www.FreeBSD.org/cgi/man.cgi?query=syslog.conf&sektion=5&manpath=freebsd-release-ports[syslog.conf(5)]. The default https://www.FreeBSD.org/cgi/man.cgi?query=syslog.conf&sektion=5&manpath=freebsd-release-ports[syslog.conf(5)] has been updated to include `/etc/syslog.d` and `/usr/local/etc/syslog.d` by default. http://svn.freebsd.org/viewvc/base?view=revision&revision=321234[(r321234)]

The https://www.FreeBSD.org/cgi/man.cgi?query=newsyslog&sektion=8&manpath=freebsd-release-ports[newsyslog(8)] utility has been updated to support logging to https://www.FreeBSD.org/cgi/man.cgi?query=syslogd&sektion=8&manpath=freebsd-release-ports[syslogd(8)] in a format compliant with RFC5424. For more details, see the description for the `T` flag in https://www.FreeBSD.org/cgi/man.cgi?query=newsyslog.conf&sektion=5&manpath=freebsd-release-ports[newsyslog.conf(5)]. http://svn.freebsd.org/viewvc/base?view=revision&revision=321263[(r321263)]

The https://www.FreeBSD.org/cgi/man.cgi?query=pw&sektion=8&manpath=freebsd-release-ports[pw(8)] utility has been updated to support empty secondary groups being passed with the `-G` flag, ensuring the target user does not have any secondary group memberships. http://svn.freebsd.org/viewvc/base?view=revision&revision=323333[(r323333)]

[[userland-contrib]]
== Contributed Software

Subversion has been updated to version 1.9.5. http://svn.freebsd.org/viewvc/base?view=revision&revision=309512[(r309512)]

https://www.FreeBSD.org/cgi/man.cgi?query=file&sektion=1&manpath=freebsd-release-ports[file(1)] has been updated to version 5.29. http://svn.freebsd.org/viewvc/base?view=revision&revision=309848[(r309848)]

The https://www.FreeBSD.org/cgi/man.cgi?query=amd&sektion=8&manpath=freebsd-release-ports[amd(8)] utility has been updated to version 6.2. http://svn.freebsd.org/viewvc/base?view=revision&revision=310490[(r310490)]

https://www.FreeBSD.org/cgi/man.cgi?query=xz&sektion=1&manpath=freebsd-release-ports[xz(1)] has been updated to version 5.2.3. http://svn.freebsd.org/viewvc/base?view=revision&revision=312516[(r312516)]

https://www.FreeBSD.org/cgi/man.cgi?query=zlib&sektion=3&manpath=freebsd-release-ports[zlib(3)] has been updated to version 1.2.11. http://svn.freebsd.org/viewvc/base?view=revision&revision=313796[(r313796)]

https://www.FreeBSD.org/cgi/man.cgi?query=ntpd&sektion=8&manpath=freebsd-release-ports[ntpd(8)] has been updated to version 4.2.8p10. http://svn.freebsd.org/viewvc/base?view=revision&revision=316069[(r316069)]

Timezone data files have been updated to version 2017b. http://svn.freebsd.org/viewvc/base?view=revision&revision=316350[(r316350)]

https://www.FreeBSD.org/cgi/man.cgi?query=tcsh&sektion=1&manpath=freebsd-release-ports[tcsh(1)] has been updated to version 6.20.00. http://svn.freebsd.org/viewvc/base?view=revision&revision=316958[(r316958)]

https://www.FreeBSD.org/cgi/man.cgi?query=libarchive&sektion=3&manpath=freebsd-release-ports[libarchive(3)] has been updated to version 3.3.2. http://svn.freebsd.org/viewvc/base?view=revision&revision=321304[(r321304)]

bmake has been updated to version 20170720. http://svn.freebsd.org/viewvc/base?view=revision&revision=321964[(r321964)]

`pci_vendors` has been updated to version 2017.07.27. http://svn.freebsd.org/viewvc/base?view=revision&revision=322244[(r322244)]

[[userland-installer]]
== Installation and Configuration Tools

The https://www.FreeBSD.org/cgi/man.cgi?query=bsdinstall&sektion=8&manpath=freebsd-release-ports[bsdinstall(8)] utility has been updated to ensure newly-created partitions are properly aligned at 4096 byte boundaries. http://svn.freebsd.org/viewvc/base?view=revision&revision=313433[(r313433)]

The default EFI partition created by https://www.FreeBSD.org/cgi/man.cgi?query=bsdinstall&sektion=8&manpath=freebsd-release-ports[bsdinstall(8)] has been increased from 800KB to 200MB. http://svn.freebsd.org/viewvc/base?view=revision&revision=321202[(r321202)] [.contrib]#(Sponsored by The FreeBSD Foundation)#

[[userland-libraries]]
== Runtime Libraries and API

The https://www.FreeBSD.org/cgi/man.cgi?query=kvm_close&sektion=3&manpath=freebsd-release-ports[kvm_close(3)] function has been updated to return the accumulated error from previous https://www.FreeBSD.org/cgi/man.cgi?query=close&sektion=2&manpath=freebsd-release-ports[close(2)] calls. http://svn.freebsd.org/viewvc/base?view=revision&revision=316040[(r316040)]

The https://www.FreeBSD.org/cgi/man.cgi?query=syslog&sektion=3&manpath=freebsd-release-ports[syslog(3)] function has been updated to be more resilent to thread cancellation occurring in supported deferred mode, eliminating possible lockups in multi-threaded applications that often create and cancel threads using the function, such as `net/mpd5`. http://svn.freebsd.org/viewvc/base?view=revision&revision=320312[(r320312)]

The https://www.FreeBSD.org/cgi/man.cgi?query=stdio&sektion=3&manpath=freebsd-release-ports[stdio(3)] function has been updated to be deferred cancel-safe, eliminating possible lockups in multi-threaded applications using functions such as https://www.FreeBSD.org/cgi/man.cgi?query=funopen&sektion=3&manpath=freebsd-release-ports[funopen(3)], https://www.FreeBSD.org/cgi/man.cgi?query=fropen&sektion=3&manpath=freebsd-release-ports[fropen(3)], and https://www.FreeBSD.org/cgi/man.cgi?query=fwopen&sektion=3&manpath=freebsd-release-ports[fwopen(3)]. http://svn.freebsd.org/viewvc/base?view=revision&revision=321074[(r321074)]

[[userland-abi]]
== ABI Compatibility

The type `max_align_t` is now defined for C11 compliance. http://svn.freebsd.org/viewvc/base?view=revision&revision=309258[(r309258)]

[[userland-debug]]
== Userland Debugging

https://www.FreeBSD.org/cgi/man.cgi?query=ptrace&sektion=2&manpath=freebsd-release-ports[ptrace(2)] now supports events for thread creation and destruction, permitting more reliable debugging of threaded processes. http://svn.freebsd.org/viewvc/base?view=revision&revision=304017[(r304017)]

https://www.FreeBSD.org/cgi/man.cgi?query=ptrace&sektion=2&manpath=freebsd-release-ports[ptrace(2)] now supports events for https://www.FreeBSD.org/cgi/man.cgi?query=vfork&sektion=2&manpath=freebsd-release-ports[vfork(2)], permitting reliable debugging across https://www.FreeBSD.org/cgi/man.cgi?query=vfork&sektion=2&manpath=freebsd-release-ports[vfork(2)] invocations. http://svn.freebsd.org/viewvc/base?view=revision&revision=304499[(r304499)]

Process core dumps now include the process ID (PID) and command line arguments. http://svn.freebsd.org/viewvc/base?view=revision&revision=306786[(r306786)]

[[kernel]]
== Kernel

This section covers changes to kernel configurations, system tuning, and system control parameters that are not otherwise categorized.

[[kernel-misc]]
== Miscellaneous Kernel Changes

The https://www.FreeBSD.org/cgi/man.cgi?query=vt&sektion=4&manpath=freebsd-release-ports[vt(4)] driver has been updated, increasing the maximum framebuffer size. http://svn.freebsd.org/viewvc/base?view=revision&revision=321198[(r321198)]

[[kernel-bugfix]]
== Kernel Bug Fixes

The https://www.FreeBSD.org/cgi/man.cgi?query=ipf&sektion=4&manpath=freebsd-release-ports[ipf(4)] packet filter has been updated to prevent `keep state` from incorrectly implying `keep frags`, matching the behavior documented in https://www.FreeBSD.org/cgi/man.cgi?query=ipf&sektion=5&manpath=freebsd-release-ports[ipf(5)]. http://svn.freebsd.org/viewvc/base?view=revision&revision=317434[(r317434)]

The https://www.FreeBSD.org/cgi/man.cgi?query=geom&sektion=4&manpath=freebsd-release-ports[geom(4)] `JOURNAL` class has been updated to fix `flush_queue` handling. http://svn.freebsd.org/viewvc/base?view=revision&revision=322793[(r322793)]

[[kernel-sysctl]]
== System Tuning and Controls

The `kern.features.linux` and `kern.features.linux64` flags have been added to the `kern.features` https://www.FreeBSD.org/cgi/man.cgi?query=sysctl&sektion=8&manpath=freebsd-release-ports[sysctl(8)], which when set to `1`, indicate the kernel is configured with compatibility for 32-bit and/or 64-bit linux binaries, respectively. http://svn.freebsd.org/viewvc/base?view=revision&revision=321024[(r321024)]

[[drivers]]
== Devices and Drivers

This section covers changes and additions to devices and device drivers since 10.3-RELEASE.

[[drivers-device]]
== Device Drivers

https://www.FreeBSD.org/cgi/man.cgi?query=devctl&sektion=8&manpath=freebsd-release-ports[devctl(8)] now supports a "clear driver" command as a complement to "set driver". http://svn.freebsd.org/viewvc/base?view=revision&revision=306533[(r306533)] [.contrib]#(Sponsored by Chelsio)#

[[drivers-storage]]
== Storage Drivers

The https://www.FreeBSD.org/cgi/man.cgi?query=mpr&sektion=4&manpath=freebsd-release-ports[mpr(4)] driver has been updated to support tri-mode (SAS/SATA/PCIe) Broadcom  storage adapters. http://svn.freebsd.org/viewvc/base?view=revision&revision=319436[(r319436)]

The https://www.FreeBSD.org/cgi/man.cgi?query=arcmsr&sektion=4&manpath=freebsd-release-ports[arcmsr(4)] driver has been updated to version 1.40.00.00, adding support for ARC-1884 SATA controllers. http://svn.freebsd.org/viewvc/base?view=revision&revision=321067[(r321067)]

[[drivers-network]]
== Network Drivers

The https://www.FreeBSD.org/cgi/man.cgi?query=cxgbev&sektion=4&manpath=freebsd-release-ports[cxgbev(4)] driver has been added, providing support for Virtual Function devices (VFs) on Chelsio T4 and T5 adapters. http://svn.freebsd.org/viewvc/base?view=revision&revision=309447[(r309447)] [.contrib]#(Sponsored by Chelsio)#

The https://www.FreeBSD.org/cgi/man.cgi?query=cxgbe&sektion=4&manpath=freebsd-release-ports[cxgbe(4)] driver has been updated to provide support for Virtual Function devices (VFs) on Chelsio T6 adapters. http://svn.freebsd.org/viewvc/base?view=revision&revision=309560[(r309560)] [.contrib]#(Sponsored by Chelsio)#

The https://www.FreeBSD.org/cgi/man.cgi?query=cxgbe&sektion=4&manpath=freebsd-release-ports[cxgbe(4)] driver now supports devices using T6-based adapters which support 10, 25, 40, and 100 Gbps. http://svn.freebsd.org/viewvc/base?view=revision&revision=309560[(r309560)] [.contrib]#(Sponsored by Chelsio)#

The https://www.FreeBSD.org/cgi/man.cgi?query=alc&sektion=4&manpath=freebsd-release-ports[alc(4)] driver has been updated to provide support for Atheros  Killer E2400™ Gigabit ethernet cards. http://svn.freebsd.org/viewvc/base?view=revision&revision=312359[(r312359)]

The https://www.FreeBSD.org/cgi/man.cgi?query=alc&sektion=4&manpath=freebsd-release-ports[alc(4)] driver has been updated to provide support for Atheros  Killer E2500™ Gigabit ethernet cards. http://svn.freebsd.org/viewvc/base?view=revision&revision=314019[(r314019)] [.contrib]#(Sponsored by Microsoft)#

The https://www.FreeBSD.org/cgi/man.cgi?query=qlnxe&sektion=4&manpath=freebsd-release-ports[qlnxe(4)] driver has been added, providing support for Cavium  Qlogic™ 45000 Series adapters. http://svn.freebsd.org/viewvc/base?view=revision&revision=316485[(r316485)]

The https://www.FreeBSD.org/cgi/man.cgi?query=cxgbe&sektion=4&manpath=freebsd-release-ports[cxgbe(4)] driver has been updated to firmware version 1.16.45.0 for T4, T5, and T6 cards. http://svn.freebsd.org/viewvc/base?view=revision&revision=319270[(r319270)] [.contrib]#(Sponsored by Chelsio)#

[[hardware]]
== Hardware Support

This section covers general hardware support for physical machines, hypervisors, and virtualization environments, as well as hardware changes and updates that do not otherwise fit in other sections of this document.

[[hardware-virtualization]]
== Virtualization Support

PCI passthrough with https://www.FreeBSD.org/cgi/man.cgi?query=bhyve&sektion=4&manpath=freebsd-release-ports[bhyve(4)] resets functions via FLR when a virtual machine is started and stopped. http://svn.freebsd.org/viewvc/base?view=revision&revision=306520[(r306520)] [.contrib]#(Sponsored by Chelsio)#

PCI passthrough with https://www.FreeBSD.org/cgi/man.cgi?query=bhyve&sektion=4&manpath=freebsd-release-ports[bhyve(4)] supports more dynamic configurations permitting devices to be marked for passthrough or host use at runtime. http://svn.freebsd.org/viewvc/base?view=revision&revision=306472[(r306472)] [.contrib]#(Sponsored by Chelsio)#

[[storage]]
== Storage

This section covers changes and additions to file systems and other storage subsystems, both local and networked.

[[storage-net]]
== Networked Storage

The NFS client now properly handles `NFS4ERR_BAD_SESSION` errors received from an NFS server. Additionally, the kernel RPC client has been updated to prevent creating new TCP connections when `ERESTART` is received from https://www.FreeBSD.org/cgi/man.cgi?query=sosend&sektion=9&manpath=freebsd-release-ports[sosend(9)]. http://svn.freebsd.org/viewvc/base?view=revision&revision=318675[(r318675)]

The NFS client has been updated to support pNFS `commit` through the `DS`. http://svn.freebsd.org/viewvc/base?view=revision&revision=321031[(r321031)]

[[network]]
== Networking

This section describes changes that affect networking in FreeBSD.

[[network-general]]
== General Networking Changes

The network stack has been modified to fix incorrect or invalid IP addresses if multiple threads emit a UDP `log_in_vain` message concurrently. http://svn.freebsd.org/viewvc/base?view=revision&revision=313558[(r313558)] [.contrib]#(Sponsored by Dell EMC)#

The TCP stack has been changed to use the estimated RTT instead of timestamps for receive buffer auto resizing. http://svn.freebsd.org/viewvc/base?view=revision&revision=317375[(r317375)] [.contrib]#(Sponsored by Multiplay)#

[[network-protocols]]
== Network Protocols

Dummynet AQM, an independent implementation of CoDel and FQ-CoDel for ipfw/dummynet has been imported to the base system. http://svn.freebsd.org/viewvc/base?view=revision&revision=301772[(r301772]]

Support for GARP (gratuitous ARP) retransmit has been added. A new https://www.FreeBSD.org/cgi/man.cgi?query=sysctl&sektion=8&manpath=freebsd-release-ports[sysctl(8)], `net.link.ether.inet.garp_rexmit_count`, has been added, which sets the maximum number of retransmissions when set to a non-zero value. http://svn.freebsd.org/viewvc/base?view=revision&revision=309340[(r309340]] [.contrib]#(Sponsored by Dell EMC)#

[[ports]]
== Ports Collection and Package Infrastructure

This section covers changes to the FreeBSD Ports Collection, package infrastructure, and package maintenance and installation tools.

[[ports-packages]]
== Packaging Changes

The https://www.FreeBSD.org/cgi/man.cgi?query=pkg&sektion=8&manpath=freebsd-release-ports[pkg(8)] utility has been updated to version 1.10.1.
