freebsd-dev/release/doc/en_US.ISO8859-1/relnotes/article.sgml
Hiroki Sato 2f07755517 New release notes:
hw.pci.do_powerstate change,
	FreeBSD/ia64 SMP support,
	a kernel config for MAC added,
	tnt4882(4) driver added,
	agp(4) now supports ATI IGP chipsets,
	re(4): D-Link DGE-528(T) Gigabit Ethernet card support,
	aac(4): Adaptec 2610SA SATA-RAID controller support,
	ata(4): ITE IT8211F, PDC40718, and PDC40719 support,
	hptmv(4) update: amd64 and PAE support,
	gpt(8) GPT partition label support,
	kenv(1) and sysctl(8) -q flag added,
	libedit updated,
	rpcgen(1) now generate ANSI C code instead of K&R style, and
	OpenSSH 4.0p1->4.2p1.

Update release notes:
	Fix an entry about ifconfig_<ifn> NOAUTO keyword.
2005-10-31 16:52:11 +00:00

606 lines
22 KiB
Plaintext

<articleinfo>
<title>&os;/&arch; &release.current; Release Notes</title>
<corpauthor>The &os; Project</corpauthor>
<pubdate>$FreeBSD$</pubdate>
<copyright>
<year>2000</year>
<year>2001</year>
<year>2002</year>
<year>2003</year>
<year>2004</year>
<year>2005</year>
<holder role="mailto:doc@FreeBSD.org">The &os; Documentation Project</holder>
</copyright>
<legalnotice id="trademarks" role="trademarks">
&tm-attrib.freebsd;
&tm-attrib.ibm;
&tm-attrib.ieee;
&tm-attrib.intel;
&tm-attrib.sparc;
&tm-attrib.general;
</legalnotice>
<abstract>
<para>The release notes for &os; &release.current; contain a summary
of the changes made to the &os; base system on the
&release.branch; development line.
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.current [
<para>The &release.type; distribution to which these release notes
apply represents the latest point along the &release.branch; development
branch since &release.branch; was created. Information regarding pre-built, binary
&release.type; distributions along this branch
can be found at <ulink url="&release.url;"></ulink>.</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;.
Information regarding
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="&url.books.handbook;/mirrors.html"><quote>Obtaining
&os;</quote> appendix</ulink> to the <ulink
url="&url.books.handbook;/">&os;
Handbook</ulink>.</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
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.
</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></para>
</sect2>
<sect2 id="kernel">
<title>Kernel Changes</title>
<para>A new sysctl variable <varname>kern.malloc_stats</varname>
has been added. This allows to export kernel malloc
statistics via a binary structure stream.</para>
<para>A new sysctl variable <varname>vm.zone_stats</varname>
has been added. This allows to export &man.uma.9; allocator
statistics via a binary structure stream.</para>
<para>The sysctl variable <varname>hw.pci.do_powerstate</varname>
has been changed from a boolean to a range.
<literal>0</literal> means no power management,
<literal>1</literal> means conservative power management which
any device class that has caused problems is added to the watch list,
<literal>2</literal> means aggressive power management where
any device class that is not fundamental to the system is added to the list,
and <literal>3</literal> means power them all down unconditionally.
The default is <literal>1</literal>.</para>
<para arch="ia64">The <filename>GENERIC</filename> kernel now enables
SMP support by default.</para>
<para>Sample kernel configuration files
<filename>src/sys/<replaceable>arch</replaceable>/conf/MAC</filename>
for the Mandatory Access Control framework have been added.</para>
<sect3 id="boot">
<title>Boot Loader Changes</title>
<para>A new option <option>-S</option>,
which allows setting the <filename>boot2</filename>
serial console speed in the <filename>/boot.config</filename>
file or on the <prompt>boot:</prompt> prompt line,
has been added.</para>
<para arch="i386,amd64">A new loader tunable
<varname>comconsole_speed</varname> to change
the serial console speed has been added.
If the previous stage boot loader requested a serial console
then the default speed is determined from the current serial port
speed, and otherwise it is set to 9600 or the value of
the kernel option <literal>BOOT_COMCONSOLE_SPEED</literal>
at compile time.</para>
<!-- Above this line, order boot loader changes by keyword-->
</sect3>
<sect3 id="proc">
<title>Hardware Support</title>
<para>The &man.acpi.thermal.4; driver now supports
passive cooling.</para>
<para>Support for the PadLock Security Co-processor in VIA C3
processors has been added to the &man.crypto.9; subsystem.
&merged;</para>
<para>A bug which prevents the &man.ichsmb.4; kernel module
from unloading has been fixed.</para>
<para arch="ia64">The loader tunable <varname>debug.mpsafevfs</varname>
is set to <literal>1</literal> by default.</para>
<para arch="amd64">The smbios(4) driver support for amd64 has been
added.</para>
<para>The tnt4882(4) driver which supports National Instruments
PCI-GPIB card has been added.</para>
<para arch="i386">A new loader tunable
<varname>hw.apic.enable_extint</varname> has been added.
This tunable can be used not to mask the ExtINT pin on the first
I/O APIC. At least one chipset for Intel Pentium III seems
to need this even though all of the pins in the 8259A's are masked.
The default is still to mask the ExtINT pin.</para>
<sect4 id="mm">
<title>Multimedia Support</title>
<para>The &man.agp.4; driver now supports ATI IGP chipsets.</para>
<para>The &man.sound.4; driver now supports
wider range sampling rate, multiple precisions choice,
and 24/32 bit PCM format conversion.</para>
<para>The &man.snd.als4000.4; driver is now MPSAFE.</para>
<para>The &man.snd.cmi.4; driver is now MPSAFE.</para>
<para>The &man.snd.via8233.4; driver is now MPSAFE.</para>
<para>The &man.snd.via82c686.4; driver is now MPSAFE.</para>
</sect4>
<sect4 id="net-if">
<title>Network Interface Support</title>
<para>The &man.dc.4; driver is now MPSAFE. &merged;</para>
<para>The &man.de.4; driver has been converted to the &man.bus.dma.9;
API and is now MPSAFE.</para>
<para>The &man.ed.4; driver is now MPSAFE.</para>
<para>The &man.el.4; driver has been removed.</para>
<para>The &man.my.4; driver is now MPSAFE. &merged;</para>
<para>The &man.pcn.4; driver is now MPSAFE. &merged;</para>
<para>The &man.re.4; driver now supports D-Link DGE-528(T)
Gigabit Ethernet card.</para>
<para>The &man.sf.4; driver is now MPSAFE. &merged;</para>
<para>The &man.ste.4; driver is now MPSAFE.</para>
</sect4>
</sect3>
<sect3 id="net-proto">
<title>Network Protocols</title>
<para>The &man.gre.4; driver, which is for GRE encapsulation
found in RFC 1701 and RFC 1702 now supports IPv6 over GRE.</para>
<para>The path MTU discovery for multicast packets in the &os;
&man.ip6.4; stack has been disabled by default because
notifying path MTU by a lot of routers in multicast
can be a kind of distributed Denial-of-Service attack to a router.
This feature can be enabled by using a new sysctl variable
<varname>net.inet6.ip6.mcast_pmtu</varname>.</para>
<para>The &man.ipfw.4;, IP packet filter now supports IPv6.
The &man.ip6fw.8; is deprecated and will be removed
in the future releases.</para>
<para>The &man.natm.4;, Native Mode ATM protocol layer is now MPSAFE.</para>
<para>A new sysctl variable <varname>net.inet.icmp.reply_from_interface</varname>
has been added. This allows the &man.icmp.4;
reply to non-local packets generated with
the IP address the packet came through in.
This is useful for routers to show in &man.traceroute.8;
the actual path a packet has taken instead of
the possibly different return path.</para>
<para>A new sysctl variable <varname>net.inet.icmp.quotelen</varname>
has been added. This allows to change length of
the quotation of the original packet in an ICMP reply.
The minimum of 8 bytes is internally enforced.
The maximum quotation is the remaining space in the
reply mbuf. This option is added in response to the
issues raised in I-D
<filename>draft-gont-icmp-payload-00.txt</filename>.</para>
<para>The &man.icmp.4; now always quotes the entire TCP header
when responding and allocate an mbuf cluster if needed.
This change fixes the TCP issues raised in I-D
<filename>draft-gont-icmp-payload-00.txt</filename>.</para>
<para>A new socket option <literal>IP_MINTTL</literal> has been added.
This may be used to set the minimum acceptable
TTL a packet must have when received on a socket.
All packets with a lower TTL are silently dropped,
and this works on already connected/connecting and
listening sockets for RAW, UDP, and TCP. This option
is only really useful when set to 255 preventing packets
from outside the directly connected networks reaching
local listeners on sockets. Also, this option allows
userland implementation of <quote>The Generalized TTL
Security Mechanism (GTSM)</quote> found in RFC 3682.</para>
<para>The stealth forwarding now supports IPv6 as well as IPv4.
This behavior can be controlled by using a new sysctl variable
<varname>net.inet6.ip6.stealth</varname>.</para>
</sect3>
<sect3 id="disks">
<title>Disks and Storage</title>
<para>The &man.aac.4; driver now supports the Adaptec 2610SA SATA-RAID
controller in some Hewlett-Packard machines.</para>
<para>The &man.ata.4; driver now supports a workaround
for some controllers whose DMA does not work properly
in 48bit mode. For the suspicious controllers
the PIO mode will be used for access to over 137GB areas.</para>
<para>The &man.ata.4; driver now supports the ITE IT8211F IDE controller,
and Promise PDC40718 and PDC40719 chip found in Promise
Fasttrak TX4300.</para>
<para>A new GEOM class <literal>GEOM_ZERO</literal> has been added.
It creates very huge provider (41PB) <filename>/dev/gzero</filename>
and mainly for performance testing.
On <literal>BIO_READ</literal> request it zero-fills
<varname>bio_data</varname> and on <literal>BIO_WRITE</literal>
it does nothing.</para>
<para>The <literal>GEOM_LABEL</literal> class now supports
Ext2FS and ReiserFS.</para>
<para>The &man.hptmv.4; driver has been updated and now supports
amd64 as well as PAE.</para>
<para>The &man.mpt.4; driver has been updated to support
various new features such as RAID volume and RAID member
state/settings reporting, periodic volume re-synchronization
status reporting, and sysctl variables for volume
re-synchronization rate, volume member write cache status,
and volume transaction queue depth.</para>
<para>A new GEOM-based disk encryption facility, GEOM_ELI, has been
added. It uses the &man.crypto.9; framework for hardware acceleration
and supports different cryptographic algorithms. See &man.geli.8; for
more information. &merged;</para>
<para>The &man.umass.4; driver now supports
<literal>PLAY_MSF</literal>,
<literal>PLAY_TRACK</literal>,
<literal>PLAY_TRACK_REL</literal>,
<literal>PAUSE</literal>,
<literal>PLAY_12</literal> commands so that
the &man.cdcontrol.1; utility can handle USB CD drive.</para>
</sect3>
<sect3 id="fs">
<title>File Systems</title>
<para>A part of the FreeBSD NFS subsystem (the interface with
the protocol stack and callouts) is now MPSAFE.</para>
</sect3>
<sect3>
<title>Contributed Software</title>
<para></para>
</sect3>
</sect2>
<sect2 id="userland">
<title>Userland Changes</title>
<para>Padding of <varname>ai_addrlen</varname>
in <varname>struct addrinfo</varname> has been removed,
which was originally for the ABI compatibility.
For example, this change break the ABI compatibility of
&man.getaddrinfo.3; function on 64-bit architecture including
&os;/alpha, &os;/amd64, &os;/ia64, and &os;/sparc64.</para>
<para>The &man.bsdiff.1; and &man.bspatch.1; utilities
have been added. These are tools for constructing and
applying binary patches.</para>
<para>The &man.cmp.1; utility now supports an <option>-h</option>
flag to compare the symbolic link itself rather than the
file that the link points to.</para>
<para>The &man.gpt.8; utility now supports setting GPT partition labels.</para>
<para>The &man.ifconfig.8; utility now supports
a <option>-k</option> flag to allow printing
potentially sensitive keying material to standard output.
This sensitive information will not be printed by default.</para>
<para>The &man.ifconfig.8; utility now supports a <option>-tunnel</option>
parameter, which is just an alias for <option>deletetunnel</option>,
yet is more convenient and easier to type.</para>
<para>The <option>-vlandev</option> parameter to &man.ifconfig.8;
no longer requires a network interface as its argument. The
argument still is supported for backward compatibility, but now
it is deprecated and its use is discouraged.</para>
<para>The &man.kenv.1; utility now supports a <option>-q</option>
flag to suppress warnings.</para>
<para>The <application>libedit</application> library has been
updated from the NetBSD source tree as of August 2005.</para>
<para>The &man.libmemstat.3; library has been added.
This is for use by debugging and monitoring applications
in tracking kernel memory statistics. It provides an
abstracted interface to &man.uma.9; and &man.malloc.9;
statistics, wrapped around the binary stream sysctl variables
for the allocators. &merged;</para>
<para>A new function &man.memmem.3; has been implemented in
<filename>libc</filename>. This is the binary equivalent to
&man.strstr.3; and found in <filename>glibc</filename>.</para>
<para>The &man.moused.8; now supports an <option>-H</option> flag
to enable horizontal virtual scrolling similar to a
<option>-V</option> flag for vertical virtual scrolling.</para>
<para>The &man.netstat.1; utility now supports an
<option>-h</option> flag for interface stats mode,
which prints all interface statistics in human readable form.</para>
<para>A new functions, &man.pidfile.3;, which allow reliable
pidfiles handling have been implemented in
<filename>libutil</filename>.</para>
<para>The &man.ping.8; utility now supports <quote>a sweeping
ping</quote> in which &man.icmp.4; payload of
packets being sent is increased with given step.
This is useful for testing problematic channels, MTU issues
or traffic policing functions in networks.</para>
<para>The &man.pkill.1; utility now supports a
<option>-F</option> option which allows to
restrict matches to a process whose PID is stored in the
pidfile file. When another new option <option>-L</option>
is also specified, the pidfile file must be locked with the
&man.flock.2; syscall or created with &man.pidfile.3;.</para>
<para>The &man.powerd.8; program now supports a
<option>-P</option> option which allows to specify pidfile.</para>
<para>The &man.rpcgen.1; utility now generates headers and stub files
which can be used with ANSI C compilers by default.</para>
<para>The &man.sysctl.8; utility now supports a <option>-q</option>
flag to suppress a limited set of warnings and errors.</para>
<para>The shared library version number of all libraries have
been updated due to some possible ABI changes. The libraries
include: snmp_*, libdialog, libg2c, libobjc,
libreadline, libregex, libstdc++, libkrb5, libalias, libarchive,
libbegemot, libbluetooth, libbsnmp, libbz2, libc_r, libcrypt,
libdevstat, libedit, libexpat, libfetch, libftpio, libgpib,
libipsec, libkiconv, libmagic, libmp, libncp, libncurses,
libnetgraph, libngatm, libopie, libpam, libpthread, libradius,
libsdp, libsmb, libtacplus, libthr, libthread_db, libugidfw,
libusbhid, libutil, libvgl, libwrap, libypclnt, libm, libcrypto,
libssh, and libssl.</para>
<para>The <function>wcsdup()</function> function has been
implemented. This function is popular in Microsoft and GNU
systems.</para>
<sect3 id="rc-scripts">
<title><filename>/etc/rc.d</filename> Scripts</title>
<para>The <filename>gbde_swap</filename> script has
been removed in favor a new <filename>encswap</filename>
script which also supports &man.geli.8; for swap
encryption.</para>
<para>The <filename>geli</filename> and <filename>geli2</filename>
scripts has been added for &man.geli.8; device
configuration on boot.</para>
<para>The <varname>removable_interfaces</varname> variable
has been removed.</para>
<para>A new keyword <literal>NOAUTO</literal> in
<varname>ifconfig_<replaceable>ifn</replaceable></varname>
has been added. This prevents configuration of an interface
at boot time or via <filename>/etc/pccard_ether</filename>,
and allows <filename>/etc/rc.d/netif</filename>
to be used to start and stop an interface
on a purely manual basis.</para>
</sect3>
</sect2>
<sect2 id="contrib">
<title>Contributed Software</title>
<para><application>libpcap</application> has been updated
to v0.9.1 (release).</para>
<para><application>OpenSSH</application> has been updated from
version 4.0p1 to version 4.2p1.</para>
<para><application>sendmail</application> has been updated from
version 8.13.3 to version 8.13.4.</para>
<para><application>tcpdump</application> has been updated
to v3.9.1 (release).</para>
</sect2>
<sect2 id="ports">
<title>Ports/Packages Collection Infrastructure</title>
<para>The &man.pkg.version.1; now supports an <option>-o</option>
flag to show the origin recorded on package generation
instead of the package name, and an <option>-O</option> flag
to list packages whose registered origin is origin only.</para>
<para>The &man.portsnap.8; utility (<filename>sysutils/portsnap</filename>)
has been added into the &os; base system. This is a secure,
easy to use, fast, lightweight, and generally good way for
users to keep their ports trees up to date.</para>
</sect2>
<sect2 id="releng">
<title>Release Engineering and Integration</title>
<para>The default partition sizing algorithm of the
&man.sysinstall.8; utility has been changed.</para>
<itemizedlist>
<listitem>
<para>On systems where the disk capacity is larger than (3 * RAMsize + 10GB),
the default sizes will now be as follows:</para>
<informaltable frame="none" pgwide="0">
<tgroup cols="2">
<colspec colwidth="1*">
<colspec colwidth="2*">
<thead>
<row>
<entry>Partition</entry>
<entry>Size</entry>
</row>
</thead>
<tbody>
<row><entry>swap</entry><entry>RAMsize * 2</entry></row>
<row><entry><filename>/</filename></entry><entry>512 MB</entry></row>
<row><entry><filename>/tmp</filename></entry><entry>512 MB</entry></row>
<row><entry><filename>/var</filename></entry><entry>1024 MB + RAMsize</entry></row>
<row><entry><filename>/usr</filename></entry><entry>the rest (8GB or more)</entry></row>
</tbody>
</tgroup>
</informaltable>
</listitem>
<listitem>
<para>On systems where the disk capacity is larger than
(RAMsize / 8 + 2 GB), the default sizes will be
in the following ranges, with space allocated
proportionally:</para>
<informaltable frame="none" pgwide="0">
<tgroup cols="2">
<colspec colwidth="1*">
<colspec colwidth="2*">
<thead>
<row>
<entry>Partition</entry>
<entry>Size</entry>
</row>
</thead>
<tbody>
<row><entry>swap</entry><entry>from RAMsize / 8 to RAMsize * 2</entry></row>
<row><entry><filename>/</filename></entry><entry>from 256MB to 512MB</entry></row>
<row><entry><filename>/tmp</filename></entry><entry>from 128MB to 512MB</entry></row>
<row><entry><filename>/var</filename></entry><entry>from 128MB to 1024MB</entry></row>
<row><entry><filename>/usr</filename></entry><entry>from 1536MB to 8192MB</entry></row>
</tbody>
</tgroup>
</informaltable>
</listitem>
<listitem>
<para>On systems with even less disk space, the existing behavior is not
changed.</para>
</listitem>
</itemizedlist>
</sect2>
<sect2 id="doc">
<title>Documentation</title>
<para>Documentation of existing functionality has been improved by
the addition of the following manual pages:
&man.acpi.sony.4;, &man.snd.mss.4;, &man.snd.t4dwave.4;.</para>
</sect2>
</sect1>
<sect1 id="upgrade">
<title>Upgrading from previous releases of &os;</title>
<para></para>
<important>
<para>Upgrading &os; should, of course, only be attempted after
backing up <emphasis>all</emphasis> data and configuration
files.</para>
</important>
</sect1>