freebsd-dev/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml
Bruce A. Mah 251998aaee New release notes: DRM update for 20030909, uart(4), ata(4) update
(ATAng), rtld(1) does libmap by default, symorder gone, sysinstall(8)
alternate MTA selection, GCC -pthread gone.
2003-09-14 18:20:24 +00:00

597 lines
23 KiB
Plaintext

<articleinfo>
<title>&os;/&arch; &release.current; Release Notes</title>
<corpauthor>The FreeBSD Project</corpauthor>
<pubdate>$FreeBSD$</pubdate>
<copyright>
<year>2000</year>
<year>2001</year>
<year>2002</year>
<year>2003</year>
<holder role="mailto:doc@FreeBSD.org">The FreeBSD Documentation Project</holder>
</copyright>
<abstract>
<para>The release notes for &os; &release.current; contain a summary
of
<![ %include.historic; [
the changes made to the &os; base system since &release.prev;.
]]>
<![ %no.include.historic; [
recent changes made to the &os; base system on the &release.branch;
development branch.
]]>
This document lists applicable security advisories that were issued since
the last release, as well as significant changes to the &os;
kernel and userland.
Some brief remarks on upgrading are also presented.</para>
</abstract>
</articleinfo>
<sect1 id="intro">
<title>Introduction</title>
<para>This document contains the release notes for &os;
&release.current; on the &arch.print; hardware platform. It
describes recently added, changed, or deleted features of &os;.
It also provides some notes on upgrading
from previous versions of &os;.</para>
<![ %release.type.snapshot [
<para>The &release.type; distribution to which these release notes
apply represents a point along the &release.branch; development
branch between &release.prev; and the future &release.next;. Some
pre-built, binary &release.type; distributions along this branch
can be found at <ulink url="&release.url;"></ulink>.</para>
]]>
<![ %release.type.release [
<para>This distribution of &os; &release.current; is a
&release.type; distribution. It can be found at <ulink
url="&release.url;"></ulink> or any of its mirrors. More
information on obtaining this (or other) &release.type;
distributions of &os; can be found in the <ulink
url="http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/mirrors.html"><quote>Obtaining
FreeBSD</quote> appendix</ulink> to the <ulink
url="http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/">FreeBSD
Handbook</ulink>.</para>
]]>
<para>Users who are new to the &release.branch; series of &os;
&release.type;s should also read the <quote>Early Adopters Guide
to &os; &release.current;</quote>. This document can generally be
found in the same location as the release notes (either as a part of a
&os; distribution or on the &os; Web site). It contains important
information regarding the advantages and disadvantages of using
&os; &release.current;, as opposed to releases based on the &os;
4-STABLE development branch.</para>
<para>All users are encouraged to consult the release errata before
installing &os;. The errata document is updated with
<quote>late-breaking</quote> 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 &os;
&release.current; can be found on the &os; Web site.</para>
</sect1>
<sect1 id="new">
<title>What's New</title>
<para>This section describes
<![ %include.historic; [
the most user-visible new or changed features in &os;
since &release.prev;.
In general, changes described here are unique to the &release.branch;
branch unless specifically marked as &merged; features.
]]>
<![ %no.include.historic; [
many of the user-visible new or changed features in &os;
since &release.prev;. It includes items that are unique to the
&release.branch; branch, as well as some features that may have been
recently merged to
other branches (after &os; &release.prev.historic;). The latter
items are marked as &merged;.
]]>
</para>
<para>Typical release note items
document recent security advisories issued after
&release.prev.historic;,
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 &os; between releases; this document focuses
primarily on security advisories, user-visible changes, and major
architectural improvements.</para>
<sect2 id="security">
<title>Security Advisories</title>
<para>A single-byte buffer overflow in &man.realpath.3; was
fixed. Although the fix was committed prior to &os;
&release.prev; (and thus &release.prev; was not affected),
it was not noted in the release documentation. See security advisory
<ulink url="ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/advisories/FreeBSD-SA-03:08.realpath.asc">FreeBSD-SA-03:08</ulink>. &merged;</para>
<para>A bug that could allow the kernel to attempt delivery of
invalid signals has been fixed. The bug could have led to a
kernel panic or, under some circumstances, unauthorized
modification of kernel memory. For more information, see
security advisory
<ulink url="ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/advisories/FreeBSD-SA-03:09.signal.asc">FreeBSD-SA-03:09</ulink>. &merged;</para>
<para>A bug in the iBCS2 emulation module, which could result in
disclosing the contents of kernel memory, has been fixed. This
module is not enabled in &os; by default. For more information,
see security advisory
<ulink url="ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/advisories/FreeBSD-SA-03:10.ibcs2.asc">FreeBSD-SA-03:10</ulink>. &merged;</para>
</sect2>
<sect2 id="kernel">
<title>Kernel Changes</title>
<para arch="i386">A bug that even when no AT keyboard is connected,
&man.atkbd.4; registers an AT keyboard during console initialization
has been fixed. <command>kbdcontrol -k /dev/kbd1</command>
is no longer needed when only a USB keyboard is connected.
&merged;</para>
<para arch="i386">The DRM kernel modules have been updated from
DRI CVS as of 9 September 2003. Among other changes, this
import includes a newly-ported SiS 300/305/540/630/730
driver.</para>
<para arch="sparc64">A new OFW PCI framework, conditional on the
<literal>OFW_NEWPCI</literal> kernel configuration option, has
been added. This addition improves the handling of PCI busses.
One user-visible change is that the enumeration of devices is
closer to &solaris; (as a result of this change, the numbering
of devices may change if more than one unit of a device type is
present). The <literal>OFW_NEWPCI</literal> kernel
configuration is enabled by default in the
<filename>GENERIC</filename> kernel.</para>
<para arch="amd64,alpha,i386,ia64,pc98">The &man.puc.4;,
PCI Universal Communications driver now supports
to connect parallel ports to the &man.ppc.4; driver.</para>
<para arch="i386,pc98">The &man.safe.4; driver has been added
to support SafeNet 1141, 1741-based crypto accelerators.
&merged;
<note>
<para>The public key support is not implemented.</para>
</note></para>
<para>A kernel software watchdog facility has been implemented.
For more information, see &man.watchdog.4; and
&man.watchdogd.8;.</para>
<!-- Above this line, sort kernel changes by manpage/keyword-->
<para>The swap pager has been revamped. Among user-visible
changes are a change in the layout policy (from fixed-width
striping to a round-robin across devices) for better I/O
throughput, the elimination of compile-time limits on the number
of swap devices, and a reduction in memory overheads.</para>
<sect3 id="proc">
<title>Platform-Specific Hardware Support</title>
<para arch="i386">PCI interrupts are always routed on i386 UP
machines, which may improve the usability of some PCI devices
(particularly on laptops).</para>
<para arch="i386">An integer overflow that could cause kernel
panics on PAE machines of certain large memory sizes has been
corrected.</para>
<para arch="i386,pc98">Floating point emulation in the kernel has
been removed.</para>
</sect3>
<sect3 id="boot">
<title>Boot Loader Changes</title>
<para></para>
<!-- Above this line, order boot loader changes by keyword-->
</sect3>
<sect3 id="net-if">
<title>Network Interface Support</title>
<para>The new &man.ath.4; and &man.ath.hal.4; drivers provide
support for 802.11a/b/g devices based on the AR5210, AR5211,
and AR5212 chips.</para>
<para>The &man.bfe.4; driver has been added to support Broadcom
BCM4401 based Fast Ethernet adapters.</para>
<para>&man.bge.4; now supports Broadcom 5705 based Gigabit Ethernet NICs.
&merged;</para>
<para>A bug in the &man.bge.4; driver that prevented it from
working correctly at 10 Mbps has been fixed.</para>
<para>The &man.em.4; driver now has support for tuning
the interrupt delays using sysctl tunables
without recompiling the driver.</para>
<para arch="i386,pc98,sparc64">The &man.harp.4; driver has been added.
This is a pseudo physical interface driver for HARP,
which attaches to all netgraph ATM interface in the
system and presents a physical interface to the HARP stack
for each of these interfaces.</para>
<para arch="i386,pc98,sparc64">The &man.hatm.4; driver has been added
to support Fore/Marconi HE155 and HE622 ATM cards.</para>
<para arch="i386,pc98,sparc64">The &man.patm.4; driver has been added to
support IDT77252 based ATM interfaces.</para>
<para>The &man.re.4; driver has been added. It provides support
for the RealTek RTL8139C+, RTL8169, RTL8169S and RTL8110S PCI
Fast Ethernet and Gigabit Ethernet controllers.</para>
<para>The &man.uart.4; driver has been added to support various
classes of UART (Universal Asynchronous Receiver/Transmitter)
devices. It is an analog of the &man.sio.4; driver but
supports a wider range of devices. This driver is necessary
to support serial ports on certain architectures, such as
ia64 and sparc64.</para>
<para>The suspend/resume support for the &man.wi.4; driver
now works correctly when the device is configured down.
&merged;</para>
<para>The 802.11 support layer has been rewritten to allow for
future growth and new features.</para>
</sect3>
<sect3 id="net-proto">
<title>Network Protocols</title>
<para>An <literal>IP_ONESBCAST</literal> option has been added
to enable undirected &man.ip.4; broadcasts to be sent to
specific network interfaces.</para>
<para>&man.ipfw.4; rules now support comma-separated address lists
(such as <literal>1.2.3.4, 5.6.7.8/30, 9.10.11.12/22</literal>),
and allow spaces after commas to make lists of addresses more readable.
&merged;</para>
<para>&man.ipfw.4; rules now support C++-style comments.
Each comment is stored together with its rule and appears using
the &man.ipfw.8; <literal>show</literal> command.
&merged;</para>
<para>&man.ipfw.8; can now modify &man.ipfw.4; rules in set 31,
which was read-only and used for the default rules.
They can be deleted by <command>ipfw delete set 31</command>
command but are not deleted
by the <command>ipfw flush</command> command.
This implements a flexible form of <quote>persistent
rules</quote>. More details can be found in &man.ipfw.8;.
&merged;</para>
<para>The &man.ng.atmpif.4; NetGraph node type has been added.
It emulates a HARP physical interface, and allows one
to run the HARP ATM stack without real hardware.</para>
<para>Kernel support has been added for Protocol Independent
Multicast routing. &merged;</para>
<para>To reduce information leakage, IPv4 packets no longer have
a <varname>ip_id</varname> field set unless fragmentation is
being done.</para>
</sect3>
<sect3 id="disks">
<title>Disks and Storage</title>
<para>A major rework of the &man.ata.4; driver has been
committed. One of the more notable changes is that the
&man.ata.4; driver has now out from under the Giant kernel
lock. Note that ATA software RAID systems must now include
<literal>device ataraid</literal> in their kernel
configuration files, as it is no longer automatically implied
by <literal>device atadisk</literal>.</para>
<para>&man.ccd.4; can now operate on raw disks and other
&man.geom.4; providers.</para>
<para>The &man.da.4; driver no longer tries to send 6-byte
commands to USB and Firewire devices. The quirks for these
devices (which hopefully are now unnecessary) have been
disabled; to restore the old behavior, add <literal>options
DA_OLD_QUIRKS</literal> to the kernel configuration. &merged;</para>
<para>Various &man.geom.4; modules can now be loaded as kernel
modules, namely:
<filename>geom_apple</filename>,
<filename>geom_bde</filename>,
<filename>geom_bsd</filename>,
<filename>geom_gpt</filename>,
<filename>geom_mbr</filename>,
<filename>geom_pc98</filename>,
<filename>geom_sunlabel</filename>,
<filename>geom_vol_ffs</filename>.
</para>
<para>A <literal>GEOM_FOX</literal> module has been added to
detect and select between multiple redundant paths to the same
device.</para>
<para arch="i386">The &man.matcd.4; driver, which supports the
Matsushita CR-562 and CR-563 CD drives, has returned.</para>
<para>The &man.twe.4; driver now supports the 3ware generic
API. &merged;</para>
</sect3>
<sect3 id="fs">
<title>File Systems</title>
<para>Some off-by-one errors in the smbfs that prevented it from
working correctly with 15-character NetBIOS names have been fixed.</para>
</sect3>
<sect3 id="mm">
<title>Multimedia Support</title>
<para></para>
</sect3>
</sect2>
<sect2 id="userland">
<title>Userland Changes</title>
<para>&man.acpidb.8;, an ACPI DSDT debugger, has been
added.</para>
<para>&man.arp.8; now supports a <option>-i</option> option
to limit the scope of the current operation to the ARP entries
on a particular interface. This option applies to the display
operations only. It should be useful on routers with numerous
network interfaces. &merged;</para>
<para>The &man.atmconfig.8; program has been added for
configuration of the ATM drivers and IP-over-ATM
functionality.</para>
<para>&man.chroot.8; now allows the optional setting of a user,
primary group, or group list to use inside the chroot
environment via the <option>-u</option>, <option>-g</option>,
and <option>-G</option> options respectively. &merged;</para>
<para>The dev_db utility is unnecessary due to the mandatory
presence of devfs, and has been removed.</para>
<para>&man.dhclient.8; now polls the state of network interfaces
and only sends DHCP requests on interfaces that are up. The
polling interval can be controlled with the <option>-i</option>
option.</para>
<para>The &man.ffsinfo.8; utility has been updated to understand
UFS2 filesystems and has been re-enabled.</para>
<para>The &man.iasl.8; utility, a compiler/decompiler for ACPI
Source Language (ASL) and ACPI Machine language (AML), has been
added.</para>
<para>&man.ipfw.8; <literal>list</literal> and <literal>show</literal>
command now support ranges of rule numbers.
&merged;</para>
<para>&man.ipfw.8; now supports a <option>-n</option> flag
to test the syntax of commands without actually changing anything.
&merged;</para>
<para>The <filename>libcipher</filename> DES cryptography library
has been removed. All of its functionality is provided by the
<filename>libcrypto</filename> library, and all base systems
programs that used <filename>libcipher</filename> have been
converted to use <filename>libcrypto</filename> instead.</para>
<para arch="i386,ia64">The <filename>libthr</filename> 1:1
threading library is now built by default.</para>
<para>The &man.locale.1; utility has been re-implemented and is
now POSIX-compliant. A new <option>-m</option> option shows all
available codesets.</para>
<para>The &man.mount.8; utility now supports to display the filesystem
ID for each file system in addition to the normal information
when a <option>-v</option> flag is specified,
and &man.umount.8; utility now accepts the filesystem ID
as well as the usual device and path names.
This allows to unambiguously specify which file system is
to be unmounted even when two or more file systems share
the same device and mount point names.</para>
<para>The &man.mount.nwfs.8;, &man.mount.portalfs.8;, and
&man.mount.smbfs.8; utilities have been moved from
<filename>/sbin</filename> to <filename>/usr/sbin</filename>.</para>
<para>The &man.pam.guest.8; PAM module has been added to allow
guest logins. It replaces the pam_ftp(8) module.</para>
<para>&man.ps.1; and &man.top.1; now support a <option>-H</option> flag to display all
kernel-visible threads in each process.</para>
<para>A bug that &man.rarpd.8; does not recognize removable Ethernet NICs
has been fixed.</para>
<para>&man.rtld.1; now includes <quote>libmap</quote>
functionality by default; the <varname>WITH_LIBMAP</varname>
compile knob is unnecessary and has been retired. More
information can be found in &man.libmap.conf.5;.</para>
<para>The symorder utility has been removed. It is unnecessary
now that all kernels use ELF format and there is no a.out format
toolchain.</para>
<para>&man.sysinstall.8; now gives the ability to select an
alternate MTA during installation. Currently,
<application>exim</application> and
<application>Postfix</application> are supported.</para>
<para>&man.systat.1; now includes displays for IPv6 and ICMPv6
traffic. &merged;</para>
<para>A number of utilities available in <filename>/bin</filename>
and <filename>/sbin</filename> are now available as a
statically-linked <quote>crunched</quote> binary that lives in
<filename>/rescue</filename>. This functionality is similar to
the <filename>/stand</filename> directory installed by
&man.sysinstall.8;, but <filename>/rescue</filename> includes
more functionality and is updated as part of
<literal>buildworld</literal>/<literal>installworld</literal> operations. More details can be found in
&man.rescue.8;.
</para>
<para>It is now possible to build <filename>/bin</filename> and
<filename>/sbin</filename> directories containing
dynamically-linked executables. This feature brings support for
loadable PAM and NSS modules to base system utilities located in
those directories. It also reduces the storage requirements for
the root filesystem due to the use of shared libraries. This
feature can be enabled in a <literal>buildworld</literal> by
defining the Makefile variable
<varname>WITH_DYNAMICROOT</varname>.</para>
</sect2>
<sect2 id="contrib">
<title>Contributed Software</title>
<para>The <application>ACPI-CA</application> code has been updated
from the 20030228 snapshot to the 20030619 snapshot.</para>
<para><application>amd</application> has been updated from 6.0.7
to 6.0.9.</para>
<para><application>awk</application> from Bell Labs has been
updated from a 14 March 2003 snapshot to a 29 July 2003 snapshot.</para>
<para><application>BIND</application> has been updated from 8.3.4
to 8.3.6.</para>
<para><application>GCC</application> has been updated from 3.2.2 to
3.3.1-release.
<note>
<para>Previous versions of <application>GCC</application>
generated incorrect code when
<literal>-march=pentium4</literal> optimization was
enabled. This problem is believed to have been fixed with
this upgrade, and the earlier workaround for the case of
<literal>CPUTYPE=p4</literal> has been removed.</para>
</note>
</para>
<para>The <application>GCC</application> <option>-pthread</option>
option, which formerly controlled linking of the threading
library, has been removed. This flag is confusing in the
presence of multiple threading libraries (specifically
<filename>libc_r</filename>, <filename>libkse</filename>, and
<filename>libthr</filename>. Ports should use the
<varname>PTHREAD_LIBS</varname> variable to select the correct
threading library.</para>
<para><application>GNU Readline</application> has been updated
from 4.2 to 4.3.</para>
<para><application>GNU Sort</application> has been updated from
the version in textutils 2.0.21 to the version in textutils
2.1.</para>
<para>The <application>ISC DHCP</application> client has been
updated from 3.0.1rc11 to 3.0.1rc12.</para>
<para><application>lukemftp</application> has been updated from
1.6beta2 to a 30 June 2003 snapshot from NetBSD.</para>
<para><application>OpenPAM</application> has been updated from the
<quote>Dianthus</quote> release to the
<quote>Dogwood</quote> release.</para>
<para><application>texinfo</application> has been updated from 4.5
to 4.6. &merged;</para>
</sect2>
<sect2 id="ports">
<title>Ports/Packages Collection Infrastructure</title>
<para>If <makevar>GNU_CONFIGURE</makevar> is defined,
all instances of <filename>config.guess</filename> and
<filename>config.sub</filename> found
under <filename><makevar>WRKDIR</makevar></filename>
are replaced with the master versions from
<filename><makevar>PORTSDIR</makevar>/Template</filename>.
This allows old ports (which contain old versions
of these scripts) to build on newer architectures like ia64 and amd64.</para>
</sect2>
<sect2 id="releng">
<title>Release Engineering and Integration</title>
<para arch="alpha,amd64,ia64">Floppy disk installation images are
no longer built for the alpha, amd64, and ia64
architectures.</para>
<para>The supported release of <application>GNOME</application> has
been updated from 2.2.1 to 2.2.2. &merged;</para>
<para>The supported release of <application>KDE</application> has
been updated from 3.1.2 to 3.1.3. &merged;</para>
</sect2>
<sect2 id="doc">
<title>Documentation</title>
<para></para>
</sect2>
</sect1>
<sect1 id="upgrade">
<title>Upgrading from previous releases of &os;</title>
<para>Users with existing &os; systems are
<emphasis>highly</emphasis> encouraged to read the <quote>Early
Adopter's Guide to &os; &release.current;</quote>. This document generally has
the filename <filename>EARLY.TXT</filename> on the distribution
media, or any other place that the release notes can be found. It
offers some notes on upgrading, but more importantly, also
discusses some of the relative merits of upgrading to &os;
5.<replaceable>X</replaceable> versus running &os;
4.<replaceable>X</replaceable>.</para>
<important>
<para>Upgrading &os; should, of course, only be attempted after
backing up <emphasis>all</emphasis> data and configuration
files.</para>
</important>
</sect1>