FreeBSD 10.4-STABLE Release Notes

The FreeBSD Project

IBM, AIX, OS/2,
PowerPC, PS/2, S/390, and ThinkPad are
trademarks of International Business Machines Corporation in the
United States, other countries, or both.

IEEE, POSIX, and 802 are registered
trademarks of Institute of Electrical and Electronics Engineers,
Inc. in the United States.

Intel, Celeron, Centrino, Core, EtherExpress, i386,
i486, Itanium, Pentium, and Xeon are trademarks or registered
trademarks of Intel Corporation or its subsidiaries in the United
States and other countries.

SPARC, SPARC64, and
UltraSPARC are trademarks of SPARC International, Inc in the United
States and other countries. SPARC International, Inc owns all of the
SPARC trademarks and under licensing agreements allows the proper use
of these trademarks by its members.

Many of the designations used by
manufacturers and sellers to distinguish their products are claimed
as trademarks. Where those designations appear in this document,
and the FreeBSD Project was aware of the trademark claim, the
designations have been followed by the “™” or the
“Â®” symbol.

Last modified on 2017-09-14 22:19:56 by gjb.

Abstract

The release notes for FreeBSD 10.4-STABLE 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.

1.Â Introduction

This document contains the release notes for FreeBSD
10.4-STABLE. 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.4-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/snapshots/.

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.4-STABLE can be found on the FreeBSD Web site.

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

Typical release note items document recent security
advisories issued after 10.4-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.

2.Â Upgrading from Previous Releases of FreeBSD

[amd64,i386] Binary upgrades between RELEASE versions
(and snapshots of the various security branches) are supported
using the 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 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
/usr/src/UPDATING.

Important:

Upgrading FreeBSD should only be attempted after
backing up all data and configuration
files.

3.Â Security and Errata

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

The syslogd(8) utility has been
updated to restart logging a subprocess that had restarted
unexpectedly. [r320772]

The gdb(1) and 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. [r320824]

The cron(8) utility has been
updated to add support for including files within /etc/cron.d and /usr/local/etc/cron.d by
default. [r321242]

The 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 syslog.conf(5). The
default syslog.conf(5) has been updated to include
/etc/syslog.d and
/usr/local/etc/syslog.d
by default. [r321234]

4.5.Â /etc/rc.d
Scripts

4.6.Â /etc/periodic
Scripts

4.7.Â Runtime Libraries and API

The 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. [r320312]

Process core dumps now include the
process ID (PID) and command line
arguments. [r306786]

5.Â Kernel

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

5.1.Â Miscellaneous Kernel Changes

The vt(4) driver has been updated,
increasing the maximum framebuffer size. [r321198]

5.2.Â Kernel Bug Fixes

The ipf(4) packet filter has been
updated to prevent keep state from
incorrectly implying keep frags, matching
the behavior documented in ipf(5). [r317434]

The geom(4)JOURNAL class has been updated to fix
flush_queue handling. [r322793]

5.3.Â Kernel Configuration

Â

5.4.Â System Tuning and Controls

The
kern.features.linux and
kern.features.linux64 flags have been
added to the kern.featuressysctl(8),
which when set to 1, indicate the kernel
is configured with compatibility for 32-bit and/or 64-bit
linux binaries, respectively. [r321024]

6.Â Devices and Drivers

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

6.1.Â Device Drivers

devctl(8) now supports a "clear
driver" command as a complement to "set
driver". [r306533]
(Sponsored by
Chelsio)

6.2.Â Storage Drivers

The mpr(4) driver has been updated
to support tri-mode
(SAS/SATA/PCIe)
BroadcomÂ® storage adapters. [r319436]

The arcmsr(4) driver has been
updated to version 1.40.00.00, adding support for ARC-1884
SATA controllers. [r321067]

6.3.Â Network Drivers

The cxgbev(4) driver has been added,
providing support for Virtual Function devices
(VFs) on Chelsio T4 and T5 adapters. [r309447]
(Sponsored by
Chelsio)

The cxgbe(4) driver has been updated
to provide support for Virtual Function devices
(VFs) on Chelsio T6 adapters. [r309560]
(Sponsored by
Chelsio)

The cxgbe(4) driver now supports
devices using T6-based adapters which support 10, 25, 40, and
100 Gbps. [r309560]
(Sponsored by
Chelsio)

The alc(4) driver has been updated
to provide support for AtherosÂ® KillerÂ E2400™
Gigabit ethernet cards. [r312359]

The
alc(4) driver has been updated to provide support for
AtherosÂ® KillerÂ E2500™ Gigabit ethernet
cards. [r314019]
(Sponsored by
Microsoft)

The qlnxe(4) driver has been added,
providing support for CaviumÂ® Qlogic™ 45000 Series
adapters. [r316485]

The cxgbe(4) driver has been updated
to firmware version 1.16.45.0 for T4, T5, and T6 cards. [r319270]
(Sponsored by
Chelsio)

7.Â 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.

7.1.Â Hardware Support

Â

7.2.Â Virtualization Support

PCI passthrough with
bhyve(4) resets functions via FLR when
a virtual machine is started and stopped. [r306520]
(Sponsored by
Chelsio)

PCI passthrough with
bhyve(4) supports more dynamic configurations permitting
devices to be marked for passthrough or host use at
runtime. [r306472]
(Sponsored by
Chelsio)

7.3.Â ARM Support

Â

8.Â Storage

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

8.1.Â General Storage

Â

8.2.Â 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
sosend(9). [r318675]

The NFS client has
been updated to support pNFScommit through the
DS. [r321031]

8.3.Â ZFS

9.Â Boot Loader Changes

This section covers the boot loader, boot menu, and other
boot-related changes.

9.1.Â Boot Loader Changes

Â

9.2.Â Boot Menu Changes

Â

10.Â Networking

This section describes changes that affect networking in
FreeBSD.

10.1.Â General Networking Changes

The network stack has been modified to fix
incorrect or invalid IP addresses if
multiple threads emit a UDPlog_in_vain message concurrently. [r313558]
(Sponsored by
Dell EMC)

The TCP stack has
been changed to use the estimated RTT
instead of timestamps for receive buffer auto resizing. [r317375]
(Sponsored by
Multiplay)

10.2.Â Network Protocols

Dummynet AQM, an independent
implementation of CoDel and FQ-CoDel for ipfw/dummynet has
been imported to the base system. [r301772]

Support for GARP
(gratuitous ARP) retransmit has been added.
A new 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. [r309340]
(Sponsored by
Dell EMC)