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

include::shared/en/urls.adoc[]

= FreeBSD 9.3-RELEASE Release Notes

== Abstract

The release notes for FreeBSD 9.3-RELEASE contain a summary of the changes made to the FreeBSD base system on the 9.3-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>>
* <<new, What's New>>
* <<upgrade, Upgrading from Previous Releases of FreeBSD>>

[[intro]]
== Introduction

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

This distribution of FreeBSD 9.3-RELEASE is a release distribution. It can be found at `http://www.FreeBSD.org/releases/` or any of its mirrors. More information on obtaining this (or other) release distributions of FreeBSD can be found in the link:{handbook}#mirrors["Obtaining FreeBSD" appendix] to the link:{handbook}[FreeBSD Handbook].

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

[[new]]
== What's New

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

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

[[security]]
== Security Advisories

Problems described in the following security advisories have been fixed. For more information, consult the individual advisories available from `http://security.FreeBSD.org/`.

[cols=",,",options="header",]
|===
|Advisory |Date |Topic
|http://security.freebsd.org/advisories/FreeBSD-SA-14:01.bsnmpd.asc[FreeBSD-SA-14:01.bsnmpd] |14 January 2014 |Fix man:bsnmpd[1] remote denial of service vulnerability
|http://security.freebsd.org/advisories/FreeBSD-SA-14:02.ntpd.asc[FreeBSD-SA-14:02.ntpd] |14 January 2014 |Disable "monitor" feature in man:ntpd[8] by default
|http://security.freebsd.org/advisories/FreeBSD-SA-14:04.bind.asc[FreeBSD-SA-14:04.bind] |14 January 2014 |Remote denial of service vulnerability
|http://security.freebsd.org/advisories/FreeBSD-SA-14:05.nfsserver.asc[FreeBSD-SA-14:05.nfsserver] |8 April 2014 |Deadlock in the NFS server
|http://security.freebsd.org/advisories/FreeBSD-SA-14:06.openssl.asc[FreeBSD-SA-14:06.openssl] |8 April 2014 |ECDSA side channel leak
|http://security.freebsd.org/advisories/FreeBSD-SA-14:08.tcp.asc[FreeBSD-SA-14:08.tcp] |30 April 2014 |TCP reassembly vulnerability
|http://security.freebsd.org/advisories/FreeBSD-SA-14:11.sendmail.asc[FreeBSD-SA-14:11.sendmail] |26 May 2014 |Sendmail improper close-on-exec flag handling
|http://security.freebsd.org/advisories/FreeBSD-SA-14:12.ktrace.asc[FreeBSD-SA-14:12.ktrace] |3 June 2014 |man:ktrace[1] kernel memory disclosure
|http://security.freebsd.org/advisories/FreeBSD-SA-14:13.pam.asc[FreeBSD-SA-14:13.pam] |3 June 2014 |Incorrect error handling in PAM policy parser
|http://security.freebsd.org/advisories/FreeBSD-SA-14:14.openssl.asc[FreeBSD-SA-14:14.openssl] |5 June 2014 |Multiple vulnerabilities
|http://www.freebsd.org/security/advisories/FreeBSD-SA-14:16.file.asc[FreeBSD-SA-14:16.file] |24 June 2014 |Multiple vulnerabilities
|http://www.freebsd.org/security/advisories/FreeBSD-SA-14:17.kmem.asc[FreeBSD-SA-14:17.kmem] |8 July 2014 |Kernel memory disclosure in control messages and SCTP notifications
|===

[[kernel]]
== Kernel Changes

The man:arcmsr[4] driver has been updated to version 1.20.00.28. http://svn.freebsd.org/viewvc/base?view=revision&revision=256033[r256033]

The man:isci[4] driver is now loadable via man:kldload[8]. http://svn.freebsd.org/viewvc/base?view=revision&revision=256437[r256437] (Sponsored by The FreeBSD Foundation)

System-level man:sysctl[8] values are now exposed to the system for the man:ixgbe[4] device. http://svn.freebsd.org/viewvc/base?view=revision&revision=256759[r256759]

The man:mfi[4] driver has been updated to support MegaRAID Invader controllers. http://svn.freebsd.org/viewvc/base?view=revision&revision=256924[r256924]

A kernel panic triggered in `zfs_root()` after a failed rollback has been fixed. http://svn.freebsd.org/viewvc/base?view=revision&revision=257119[r257119]

A new man:sysctl[8], `debug.devfs_iosize_max_clamp` has been added which enables and disables `SSIZE_MAX`-sized I/O requests on man:devfs[5] files. http://svn.freebsd.org/viewvc/base?view=revision&revision=257125[r257125] (Sponsored by The FreeBSD Foundation)

A new man:sysctl[8], `kern.disallow_high_osrel`, has been added which disables executing the images compiled on a userland with a higher major version number than the major version number of the running kernel. http://svn.freebsd.org/viewvc/base?view=revision&revision=257126[r257126] (Sponsored by The FreeBSD Foundation)

A kernel panic triggered by unmounting a busy man:zfs[8] filesystem has been fixed. http://svn.freebsd.org/viewvc/base?view=revision&revision=257253[r257253]

A deadlock triggered by powering off a USB device has been fixed. http://svn.freebsd.org/viewvc/base?view=revision&revision=257373[r257373]

The man:ichsmb[4] driver has been updated to support Intel Lynx Point PCH SMBus devices. http://svn.freebsd.org/viewvc/base?view=revision&revision=258214[r258214]

The man:ata[4] driver has been updated to support Coleto Creek devices. http://svn.freebsd.org/viewvc/base?view=revision&revision=258215[r258215]

The man:ahci[4] driver has been updated to support the PCI-express solid state drive in the Apple(R) MacBook Air (model A1465). http://svn.freebsd.org/viewvc/base?view=revision&revision=258217[r258217]

The man:sysctl[8] `vfs.zfs.arc_meta_limit` can now be changed at runtime. http://svn.freebsd.org/viewvc/base?view=revision&revision=258635[r258635]

The man:mmap[2] system call has been updated to more optimally use superpages and provide support for tweaking the alignment of virtual mappings. http://svn.freebsd.org/viewvc/base?view=revision&revision=258870[r258870]

A workaround has been implemented in the man:bge[4] driver for hung transmission on BCM5719 and BCM5720 chipsets. http://svn.freebsd.org/viewvc/base?view=revision&revision=258962[r258962]

A kernel panic when listing sysctls on a system with `INVARIANTS` enabled has been fixed. http://svn.freebsd.org/viewvc/base?view=revision&revision=259002[r259002]

A new man:sysctl[8], `kern.supported_archs` has been added, which will list the `MACHINE_ARCH` values whose binaries can be run on the system. http://svn.freebsd.org/viewvc/base?view=revision&revision=259466[r259466]

Several problems that could trigger kernel panic on man:kldload[8] and man:kldunload[8] have been fixed. http://svn.freebsd.org/viewvc/base?view=revision&revision=259519[r259519] (Sponsored by Spectra Logic)

A kernel panic triggered by some multi-threaded applications has been fixed. http://svn.freebsd.org/viewvc/base?view=revision&revision=260082[r260082] (Sponsored by The FreeBSD Foundation)

The man:runfw[4] firmware has been renamed from `runfw` to `run.fw` for consistency with other firmware files. http://svn.freebsd.org/viewvc/base?view=revision&revision=260134[r260134]

A new man:sysctl[8], `kern.panic_reboot_wait_time`, has been added. This allows tuning the amount of time the system will wait before rebooting after man:panic[9]. The `kern.panic_reboot_wait_time` value defaults to the kernel configuration option, `PANIC_REBOOT_WAIT_TIME`. http://svn.freebsd.org/viewvc/base?view=revision&revision=260433[r260433]

Hardware Random Number Generators have been disabled by default. http://svn.freebsd.org/viewvc/base?view=revision&revision=260644[r260644]

Support for GPS ports has been added to the man:uhso[4] driver. http://svn.freebsd.org/viewvc/base?view=revision&revision=261485[r261485]

A memory leak of compressed buffers has been fixed in `l2arc_write_done()`. http://svn.freebsd.org/viewvc/base?view=revision&revision=262116[r262116]

The man:netmap[4] framework has been updated to match the version in `head/`, which includes netmap pipes, kqueue support, and enhanced VALE switch port. http://svn.freebsd.org/viewvc/base?view=revision&revision=262153[r262153]

A deadlock triggered by sending a mounted man:zfs[8] snapshot has been fixed. http://svn.freebsd.org/viewvc/base?view=revision&revision=262175[r262175]

Support for SIIG X1 PCI-e has been added to man:ppc[4]. http://svn.freebsd.org/viewvc/base?view=revision&revision=262231[r262231]

Support for the ext4 filesystem has been enabled, supporting read-only mounts. http://svn.freebsd.org/viewvc/base?view=revision&revision=262564[r262564]

A kernel panic triggered by inserting a USB ethernet device on VIMAGE-enabled systems has been fixed. http://svn.freebsd.org/viewvc/base?view=revision&revision=262594[r262594]

TTM, a memory manager used by video drivers, has been merged. http://svn.freebsd.org/viewvc/base?view=revision&revision=262988[r262988] (Sponsored by The FreeBSD Foundation)

Support for `/sys/kernel/random/uuid` has been added to man:linprocfs[5]. http://svn.freebsd.org/viewvc/base?view=revision&revision=263103[r263103]

A memory leak in the `zpool_in_use()` function has been fixed. http://svn.freebsd.org/viewvc/base?view=revision&revision=263128[r263128]

The `extensible_dataset` man:zpool[8] feature has been added. See man:zpool-features[7] for more information. http://svn.freebsd.org/viewvc/base?view=revision&revision=263391[r263391]

A memory leak has been fixed in `libzfs`. http://svn.freebsd.org/viewvc/base?view=revision&revision=263408[r263408]

The man:vt[4] driver has been merged from `head/`. http://svn.freebsd.org/viewvc/base?view=revision&revision=263817,263818[r263817,263818] (Sponsored by The FreeBSD Foundation)

The man:mpr[4] device has been added, providing support for LSI Fusion-MPT 3 12Gb SCSI/SATA controllers. http://svn.freebsd.org/viewvc/base?view=revision&revision=265729[r265729] (Sponsored by LSI, Spectra Logic)

A kernel bug that inhibited proper functionality of the `dev.cpu.0.freq` man:sysctl[8] on Intel(R) processors with Turbo Boost ™ enabled has been fixed. http://svn.freebsd.org/viewvc/base?view=revision&revision=266167[r266167]

Support for man:xen[4] hardware-assisted virtualization, `XENHVM`, is now available as a loadable module, `xenhvm.ko`. http://svn.freebsd.org/viewvc/base?view=revision&revision=266269[r266269]

[[proc]]
== Hardware Support

Trackpad support for Apple(R) MacBook products has been added. http://svn.freebsd.org/viewvc/base?view=revision&revision=261510[r261510]

The man:nve[4] driver has been deprecated, and the man:nfe[4] driver should be used instead. http://svn.freebsd.org/viewvc/base?view=revision&revision=261973[r261973]

The man:mfi[4] driver has been updated to support MegaRAID Fury cards. http://svn.freebsd.org/viewvc/base?view=revision&revision=262968[r262968]

The Radeon KMS driver has been added. http://svn.freebsd.org/viewvc/base?view=revision&revision=263170,263171[r263170,263171]

The man:aacraid[4] driver has been updated to version 3.2.5. http://svn.freebsd.org/viewvc/base?view=revision&revision=263340[r263340]

[[net-if]]
== Network Interface Support

The man:re[4] driver has been updated to add preliminary support for the RTL8106E chipset. http://svn.freebsd.org/viewvc/base?view=revision&revision=257611[r257611]

The man:re[4] driver has been updated to support the RTL8168G, RTL8168GU and RTL8411B chipsets. http://svn.freebsd.org/viewvc/base?view=revision&revision=257614,257616[r257614,257616]

The man:re[4] driver has been updated to add preliminary support for the RTL8168EP chipset. http://svn.freebsd.org/viewvc/base?view=revision&revision=257618[r257618]

The man:oce[4] driver has been updated to version 10.0.664.0. http://svn.freebsd.org/viewvc/base?view=revision&revision=258586[r258586]

The man:qlxgbe[4] driver has been imported from `head/`. http://svn.freebsd.org/viewvc/base?view=revision&revision=258898[r258898]

The man:qlxge[4] driver has been imported from `head/`. http://svn.freebsd.org/viewvc/base?view=revision&revision=258936[r258936]

The man:bge[4] driver has been updated to support the BCM5725 chipset. http://svn.freebsd.org/viewvc/base?view=revision&revision=258965[r258965]

The man:bge[4] driver has been updated to support the BCM57764, BCM57767, BCM57782, BCM57786 and BCM57787 chipsets. http://svn.freebsd.org/viewvc/base?view=revision&revision=258967[r258967]

The man:run[4] driver has been updated to support MediaTek/Ralink chipsets RT5370 and RT5372. http://svn.freebsd.org/viewvc/base?view=revision&revision=259457[r259457]

The man:usb[4] wireless radiotap headers have been realigned, allowing wireless adapters to work on arm, mips, and other similar platforms where alignment is important. http://svn.freebsd.org/viewvc/base?view=revision&revision=259460[r259460]

The man:run[4] firmware has been updated to version 0.33. http://svn.freebsd.org/viewvc/base?view=revision&revision=260119[r260119]

The man:bxe[4] driver has been merged from `head/`, providing support for Broadcom NetXtreme II 10Gb PCIe adapters. http://svn.freebsd.org/viewvc/base?view=revision&revision=260252[r260252]

The man:run[4] driver has been updated to include support for the MediaTek/Ralink RT3593 chipset. http://svn.freebsd.org/viewvc/base?view=revision&revision=261865[r261865]

The man:run[4] driver has been updated to include support for the DLINK DWA-127 wireless adapter. http://svn.freebsd.org/viewvc/base?view=revision&revision=261933[r261933]

The man:axge[4] driver has been added. http://svn.freebsd.org/viewvc/base?view=revision&revision=262153[r262153]

The man:urndis[4] driver has been imported from OpenBSD. http://svn.freebsd.org/viewvc/base?view=revision&revision=262362[r262362]

The man:bxe[4] driver has been updated to version 1.78.78. http://svn.freebsd.org/viewvc/base?view=revision&revision=263582[r263582]

[[fs]]
== File Systems

The man:zfs[8] filesystem has been updated to support the `bookmarks` feature. http://svn.freebsd.org/viewvc/base?view=revision&revision=263410[r263410]

[[userland]]
== Userland Changes

A new flag `-c`, has been added to man:pgrep[1] and man:pkill[1], which restricts the process lookup to the specified login class. http://svn.freebsd.org/viewvc/base?view=revision&revision=256054[r256054]

The man:ddb[8] utility has been updated to add `show ioapic` and `show all       ioapics`. http://svn.freebsd.org/viewvc/base?view=revision&revision=257496[r257496]

Setting `nmbcluster` values to their current value will now be ignored, instead of failing with an error. http://svn.freebsd.org/viewvc/base?view=revision&revision=258183[r258183]

The `/var/cache` directory is now created with mode `0755` instead of mode `0750`, since this directory is used by many third-party applications, which makes dropping group privileges impossible. http://svn.freebsd.org/viewvc/base?view=revision&revision=258763[r258763]

The man:uname[1] utility has been updated to include the `-U` and `-K` flags, which print the `__FreeBSD_version` for the running userland and kernel, respectively. http://svn.freebsd.org/viewvc/base?view=revision&revision=258818[r258818]

The man:fetch[3] library has been updated to support SNI (Server Name Identification), allowing to use virtual hosts on HTTPS. http://svn.freebsd.org/viewvc/base?view=revision&revision=258844[r258844]

A segmentation fault and internal compiler error bug in man:gcc[1] triggered by throwing a warning before parsing any tokens has been fixed. http://svn.freebsd.org/viewvc/base?view=revision&revision=259243[r259243]

Several updates to man:gcc[1] have been imported from Google. http://svn.freebsd.org/viewvc/base?view=revision&revision=259269,259406[r259269,259406] (Contributed / provided by Google)

A byte-order bug in the Heimdal `gss_pseudo_random()` function which would prevent interoperability with other Kerberos implementations has been fixed. In particular, this would prevent interoperability with the MIT implementation. http://svn.freebsd.org/viewvc/base?view=revision&revision=259448[r259448]

The man:hastctl[8] utility has been updated to output the current queue sizes. http://svn.freebsd.org/viewvc/base?view=revision&revision=260007[r260007]

The man:ps[1] utility will no longer truncate the `command` output column. http://svn.freebsd.org/viewvc/base?view=revision&revision=260197[r260197]

The man:protect[1] command has been added, which allows exempting processes from being killed when swap is exhausted. http://svn.freebsd.org/viewvc/base?view=revision&revision=260208[r260208]

The man:gmirror[8] utility now prevents deactivating the last component of a mirror. http://svn.freebsd.org/viewvc/base?view=revision&revision=260507[r260507]

A new man:gmirror[8] command, `gmirror destroy`, has been added, which will destroy the man:geom[8] and erase the man:gmirror[8] metadata. http://svn.freebsd.org/viewvc/base?view=revision&revision=260507[r260507]

The man:etcupdate[8] utility, a tool for managing updates to files in `/etc`, has been merged from `head/`. http://svn.freebsd.org/viewvc/base?view=revision&revision=260650[r260650]

The man:find[1] utility has been updated to fix incorrect behavior with the `-lname` and `-ilname` flags. http://svn.freebsd.org/viewvc/base?view=revision&revision=260651[r260651]

The `hw.uart.console` is now always updated when the comconsole setup changes. http://svn.freebsd.org/viewvc/base?view=revision&revision=260868,260869[r260868,260869]

The man:kldload[8] utility has been updated to display a message directing to man:dmesg[8], instead of the cryptic message "Exec format error". http://svn.freebsd.org/viewvc/base?view=revision&revision=260909[r260909]

A bug that could trigger an infinite loop in KDE and X has been fixed. http://svn.freebsd.org/viewvc/base?view=revision&revision=261674[r261674]

The man:newsyslog[8] utility has been changed to use the size of the file, instead of the blocks the file takes on the disk to match the behavior documented in man:newsyslog.conf[5]. http://svn.freebsd.org/viewvc/base?view=revision&revision=262076[r262076]

A bug in man:zdb[8] which would cause numeric parameters to a flag as being treated as additional flags has been fixed. http://svn.freebsd.org/viewvc/base?view=revision&revision=262105[r262105]

The man:pciconf[8] utility now has a `-V` flag, which lists information such as serial numbers for each device. http://svn.freebsd.org/viewvc/base?view=revision&revision=262134[r262134]

A bug that would allow creating a man:zfs[8] snapshot of an inconsistent dataset has been fixed. http://svn.freebsd.org/viewvc/base?view=revision&revision=262158[r262158]

Receiving a man:zfs[8] dataset with `zfs recv -F` now properly destroys any snapshots that were created since the incremental source snapshot. http://svn.freebsd.org/viewvc/base?view=revision&revision=262160[r262160]

Installation from a read-only `.OBJDIR` has been fixed. http://svn.freebsd.org/viewvc/base?view=revision&revision=263031[r263031]

A new shared library directory, `/usr/lib/private`, has been added for internal-use shared libraries. http://svn.freebsd.org/viewvc/base?view=revision&revision=263031[r263031]

A default `libmap32.conf` has been added, for 32-bit applications. http://svn.freebsd.org/viewvc/base?view=revision&revision=263031[r263031]

The `libucl` library, a JSON-compatible configuration file parsing library, has been imported. http://svn.freebsd.org/viewvc/base?view=revision&revision=263032[r263032]

The man:pkg[7] package management utility has been syncronized with `head/`. This implements binary package signature verification when bootstrapping the system with `pkg       bootstrap`. http://svn.freebsd.org/viewvc/base?view=revision&revision=263038[r263038]

The system timezone data files have been updated to version tzdata2014a. http://svn.freebsd.org/viewvc/base?view=revision&revision=263042[r263042]

The NetBSD man:make[1] utility, `bmake` has been imported for compatibility with the FreeBSD Ports Collection. It is installed as `bmake`, and the `make` remains the FreeBSD version. http://svn.freebsd.org/viewvc/base?view=revision&revision=263212[r263212]

The man:fetch[3] library now supports `Last-Modified` timestamps which return UTC instead of GMT. http://svn.freebsd.org/viewvc/base?view=revision&revision=263326[r263326]

Aliases for the man:zfs[8] commands `list -t snap` and `snap` have been added to match Oracle(R) Solaris 11. http://svn.freebsd.org/viewvc/base?view=revision&revision=263404[r263404]

A new flag, `-p`, has been added to the man:zfs[8] `list` command, providing output in a parseable form. http://svn.freebsd.org/viewvc/base?view=revision&revision=263406[r263406]

OpenPAM has been updated to Nummularia (20130907), which incorporates several bug fixes and documentation improvements. The man:openpam_ttyconv[3] library has been completely rewritten. http://svn.freebsd.org/viewvc/base?view=revision&revision=263421[r263421]

The man:sh[1] command interpreter has been updated to expand assignments after `export`, `local`, and `readonly` differently. As result of this change, variable assignment such as `local       v=$1` will assign the first positional parameter to `v`, even if `$1` contains spaces, and `local w=~/myfile` will expand the tilde (`~`). http://svn.freebsd.org/viewvc/base?view=revision&revision=264423[r264423]

The man:find[1] utility has been updated to implement `-ignore_readdir_race`. Prior to this change, `-ignore_readdir_race` existed as an option for GNU man:find[1] compatibility, and was ignored if specified. A counter primary, `-noignore_readdir_race` now also exists, and is the default behavior. http://svn.freebsd.org/viewvc/base?view=revision&revision=264699[r264699]

The man:ps[1] utility has been updated to include the `-J` flag, used to filter output by matching man:ail[8] IDs and names. Additionally, argument `0` can be used to `-J` to only list processes running on the host system. http://svn.freebsd.org/viewvc/base?view=revision&revision=266286[r266286]

The man:top[1] utility has been updated to filter by man:jail[8] ID or name, in followup to the man:ps[1] change in `r265229`. http://svn.freebsd.org/viewvc/base?view=revision&revision=266287[r266287]

The Blowfish man:crypt[3] default format has been changed to `$2b$`. http://svn.freebsd.org/viewvc/base?view=revision&revision=266818[r266818]

The default man:newsyslog.conf[5] now includes files in the `/etc/newsyslog.conf.d/` and `/usr/local/etc/newsyslog.conf.d/` directories by default for man:newsyslog[8]. http://svn.freebsd.org/viewvc/base?view=revision&revision=267114[r267114]

A new flag, "onifconsole" has been added to `/etc/ttys`. This allows the system to provide a login prompt via serial console if the device is an active kernel console, otherwise it is equivalent to `off`. http://svn.freebsd.org/viewvc/base?view=revision&revision=267243[r267243]

The man:arc4random[3] library has been updated to match that of FreeBSD-CURRENT. http://svn.freebsd.org/viewvc/base?view=revision&revision=267379[r267379]

The man:pmcstat[8] utility has been updated to include a new flag, `-l`, which ends event collection after the specified number of seconds. http://svn.freebsd.org/viewvc/base?view=revision&revision=267411[r267411]

The FreeBSD Project has migrated from the GNATS bug tracking system to Bugzilla. The man:send-pr[1] utility used for submitting problem reports has been replaced with a stub shell script that instructs to use the Bugzilla web interface. http://svn.freebsd.org/viewvc/base?view=revision&revision=267911[r267911]

[[periodic-scripts]]
== man:periodic[8] Scripts

The `/etc/periodic/security/800.loginfail` man:periodic[8] script has been refined to catch more authentication failures and reduce false positives. http://svn.freebsd.org/viewvc/base?view=revision&revision=263662[r263662]

[rc-scripts]]
== man:rc[8] Scripts

Support for "first boot" scripts has been added to man:rc[8]. See man:rc[8] and man:rc.conf[5] for implementation details. http://svn.freebsd.org/viewvc/base?view=revision&revision=256917[r256917]

The man:rc[8] system will now re-source man:rc.conf[5] on receipt of `SIGALRM`. http://svn.freebsd.org/viewvc/base?view=revision&revision=260432[r260432]

[[contrib]]
== Contributed Software

The man:readline[3] library has been updated to version 1.104. http://svn.freebsd.org/viewvc/base?view=revision&revision=255934[r255934]

Sendmail has been updated to version 8.14.9. http://svn.freebsd.org/viewvc/base?view=revision&revision=266711[r266711]

BIND has been updated to version 9.9.5. http://svn.freebsd.org/viewvc/base?view=revision&revision=262706[r262706] (Sponsored by DK Hostmaster A/S)

The man:xz[1] utility has been updated to a post-5.0.5 snapshot. http://svn.freebsd.org/viewvc/base?view=revision&revision=263286[r263286]

OpenSSH has been updated to version 6.6p1. http://svn.freebsd.org/viewvc/base?view=revision&revision=263970[r263970]

OpenSSL has been updated to version 0.9.8za. http://svn.freebsd.org/viewvc/base?view=revision&revision=267285[r267285]

[[ports]]
== Ports and Packages

== Important:

Note to FreeBSD desktop users: please read this section carefully, especially before upgrading ports that depend on Xorg.

In April 2014, the FreeBSD Ports collection switched to a newer version of Xorg that supports KMS (Kernel Mode Setting).

Users upgrading from earlier versions of FreeBSD 9.x or FreeBSD 8.x should be aware of several things regarding Xorg:

* When applications are built from the FreeBSD Ports Collection or installed from the `new_xorg` man:pkg[8] repository, the newer, KMS-aware version of Xorg is used.
* The KMS version of Xorg does not switch back to text mode after leaving the X desktop environment, and the system console will not be visible. The new man:vt[4] console driver supports graphic consoles and keeps the console visible after X has exited. The man:vt[4] driver must be compiled into the kernel. A `VT` kernel configuration example file is included in 9.3-RELEASE, but is not compiled or enabled by default. See man:vt[4] and the https://wiki.freebsd.org/VT[vt(4) wiki page] for additional information.
* Packages for KDE4 are not available in the default (`latest`) man:pkg[8] repository, however are available in the `new_xorg` repository. See the https://lists.freebsd.org/pipermail/freebsd-announce/2014-July/001570.html[announcement email] for details on how to use the `new_xorg` repository.
+
The older Xorg that does not support KMS can still be installed from the `latest` upstream man:pkg[8] repository and the packages included on the 9.3-RELEASE DVD.
+
However, it is important to note that some newer applications require the newer Xorg, and will not work with the old version. The newer [Xorg is recommended, and should be used unless not compatible with legacy graphics cards.
+
To continue using the old version of Xorg when building from the FreeBSD Ports Collection, set `WITHOUT_NEW_XORG=yes` in man:make.conf[5].

[releng]]
== Release Engineering and Integration

As part of the release build, the man:etcupdate[8] utility will bootstrap the system, allowing man:etcupdate[8] to work after the first upgrade of a system. http://svn.freebsd.org/viewvc/base?view=revision&revision=260891[r260891]

The `release.sh` script and release `Makefile` have been updated to use man:pkg[7] to populate the dvd installation medium. http://svn.freebsd.org/viewvc/base?view=revision&revision=262879[r262879] (Sponsored by The FreeBSD Foundation)

The man:services.mkdb[8] utility has been updated to support multiple byte orders. Similar to man:cap_mkdb[1], the `services.db` will be created with proper endinanness as part of cross-architecture release builds. http://svn.freebsd.org/viewvc/base?view=revision&revision=263028[r263028]

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

== Upgrading Using man:freebsd-update[8] or a Source-Based Procedure

[amd64,i386] Binary upgrades between RELEASE versions (and snapshots of the various security branches) are supported using the man:freebsd-update[8] utility. The binary upgrade procedure will update unmodified userland utilities, as well as an unmodified `GENERIC` kernel, distributed as a part of an official FreeBSD release. The man: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 using to the instructions in `/usr/src/UPDATING`.

For more specific information about upgrading instructions, see link:../installation/[FreeBSD 9.3-RELEASE Installation Instructions].

== Important:

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

== User-Visible Incompatibilities

FreeBSD 9.0 and later versions have several configuration incompatibilities with earlier versions of FreeBSD. These differences are best understood before upgrading. _Please read this section and the http://www.freebsd.org/releases/9.0R/relnotes-detailed.html#UPGRADE[Upgrading Section in 9.0-RELEASE Release Notes] carefully before submitting a problem report and/or posting a question to the FreeBSD mailing lists._
