article.xml revision 191987
1<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook V4.1-Based Extension//EN" [
2<!ENTITY % articles.ent PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Articles Entity Set//EN">
3%articles.ent;
4
5<!ENTITY % release PUBLIC "-//FreeBSD//ENTITIES Release Specification//EN">
6%release;
7
8<!-- Text constants which probably don't need to be changed.-->
9
10<!ENTITY % include.historic "IGNORE">
11<!ENTITY % no.include.historic "IGNORE">
12]>
13
14<article>
15<articleinfo>
16  <title>&os; &release.current; Release Notes</title>
17
18  <corpauthor>The &os; Project</corpauthor>
19
20  <pubdate>$FreeBSD: head/release/doc/en_US.ISO8859-1/relnotes/article.sgml 191987 2009-05-11 07:57:29Z delphij $</pubdate>
21
22  <copyright>
23    <year>2000</year>
24    <year>2001</year>
25    <year>2002</year>
26    <year>2003</year>
27    <year>2004</year>
28    <year>2005</year>
29    <year>2006</year>
30    <year>2007</year>
31    <year>2008</year>
32    <year>2009</year>
33    <holder role="mailto:doc@FreeBSD.org">The &os; Documentation Project</holder>
34  </copyright>
35
36  <legalnotice id="trademarks" role="trademarks">
37    &tm-attrib.freebsd;
38    &tm-attrib.ibm;
39    &tm-attrib.ieee;
40    &tm-attrib.intel;
41    &tm-attrib.sparc;
42    &tm-attrib.general;
43  </legalnotice>
44
45  <abstract>
46    <para>The release notes for &os; &release.current; contain a summary
47      of the changes made to the &os; base system on the
48      &release.branch; development line.
49      This document lists applicable security advisories that were issued since
50      the last release, as well as significant changes to the &os;
51      kernel and userland.
52      Some brief remarks on upgrading are also presented.</para>
53  </abstract>
54</articleinfo>
55
56<sect1 id="intro">
57  <title>Introduction</title>
58
59  <para>This document contains the release notes for &os;
60    &release.current;.  It
61    describes recently added, changed, or deleted features of &os;.
62    It also provides some notes on upgrading
63    from previous versions of &os;.</para>
64
65<![ %release.type.current [
66
67  <para>The &release.type; distribution to which these release notes
68    apply represents the latest point along the &release.branch; development
69    branch since &release.branch; was created.  Information regarding pre-built, binary
70    &release.type; distributions along this branch
71    can be found at <ulink url="&release.url;"></ulink>.</para>
72
73]]>
74
75<![ %release.type.snapshot [
76
77  <para>The &release.type; distribution to which these release notes
78    apply represents a point along the &release.branch; development
79    branch between &release.prev; and the future &release.next;.
80    Information regarding
81    pre-built, binary &release.type; distributions along this branch
82    can be found at <ulink url="&release.url;"></ulink>.</para>
83
84]]>
85
86<![ %release.type.release [
87
88  <para>This distribution of &os; &release.current; is a
89    &release.type; distribution.  It can be found at <ulink
90    url="&release.url;"></ulink> or any of its mirrors.  More
91    information on obtaining this (or other) &release.type;
92    distributions of &os; can be found in the <ulink
93    url="&url.books.handbook;/mirrors.html"><quote>Obtaining
94    &os;</quote> appendix</ulink> to the <ulink
95    url="&url.books.handbook;/">&os;
96    Handbook</ulink>.</para>
97
98]]>
99
100  <para>All users are encouraged to consult the release errata before
101    installing &os;.  The errata document is updated with
102    <quote>late-breaking</quote> information discovered late in the
103    release cycle or after the release.  Typically, it contains
104    information on known bugs, security advisories, and corrections to
105    documentation.  An up-to-date copy of the errata for &os;
106    &release.current; can be found on the &os; Web site.</para>
107
108</sect1>
109
110<sect1 id="new">
111  <title>What's New</title>
112
113  <para>This section describes
114    the most user-visible new or changed features in &os;
115    since &release.prev;.
116    In general, changes described here are unique to the &release.branch;
117    branch unless specifically marked as &merged; features.
118  </para>
119
120  <para>Typical release note items
121    document recent security advisories issued after
122    &release.prev;,
123    new drivers or hardware support, new commands or options,
124    major bug fixes, or contributed software upgrades.  They may also
125    list changes to major ports/packages or release engineering
126    practices.  Clearly the release notes cannot list every single
127    change made to &os; between releases; this document focuses
128    primarily on security advisories, user-visible changes, and major
129    architectural improvements.</para>
130
131  <sect2 id="security">
132    <title>Security Advisories</title>
133
134    <para></para>
135
136  </sect2>
137
138  <sect2 id="kernel">
139    <title>Kernel Changes</title>
140
141    <para>A new &man.cpuset.2; API has been added
142      for thread to CPU binding and CPU resource grouping and
143      assignment.  The &man.cpuset.1; userland utility has been added
144      to allow manipulation of processor sets.</para>
145
146    <para role="merged">The &man.ddb.4; kernel debugger now has an output capture
147      facility.  Input and output from &man.ddb.4; can now be captured
148      to a memory buffer for later inspection using &man.sysctl.8; or
149      a textdump.  The new <command>capture</command> command controls
150      this feature.</para>
151
152    <para role="merged">The &man.ddb.4; debugger now supports a simple scripting
153      facility, which supports a set of named scripts consisting of a
154      set of &man.ddb.4; commands.  These commands can be managed from
155      within &man.ddb.4; or with the use of the new &man.ddb.8;
156      utility.  More details can be found in the &man.ddb.4; manual
157      page.</para>
158
159    <para role="merged">The kernel now supports a new textdump format of kernel
160      dumps.  A textdump provides higher-level information via
161      mechanically generated/extracted debugging output, rather than a
162      simple memory dump.  This facility can be used to generate brief
163      kernel bug reports that are rich in debugging information, but
164      are not dependent on kernel symbol tables or precisely
165      synchronized source code.  More information can be found in the
166      &man.textdump.4; manual page.</para>
167
168    <para>Kernel support for M:N threading has been removed.  While
169      the KSE (Kernel Scheduled Entities) project was quite successful
170      in bringing threading to FreeBSD, the M:N approach taken by the
171      KSE library was never developed to its full potential.
172      Backwards compatibility for applications using KSE threading
173      will be provided via &man.libmap.conf.5; for dynamically linked
174      binaries.  The &os; Project greatly appreciates the work of
175      &a.julian;, &a.deischen;, and &a.davidxu; on KSE support.</para>
176
177    <para>The &os; kernel now exports information about certain kernel
178      features via the <varname>kern.features</varname> sysctl tree.
179      The &man.feature.present.3; library call provides a convenient
180      interface for user applications to test the presence of
181      features.</para>
182
183    <para arch="amd64">The &os; kernel now has support for large
184      memory page mappings (<quote>superpages</quote>).</para>
185
186    <para arch="amd64,i386,ia64,powerpc" role="merged">The ULE
187      scheduler is now the default process scheduler
188      in <filename>GENERIC</filename> kernels.</para>
189
190    <sect3 id="boot">
191      <title>Boot Loader Changes</title>
192
193      <para arch="amd64,i386" role="merged">The BTX kernel used by the boot
194	loader has been changed to invoke BIOS routines from real
195	mode.  This change makes it possible to boot &os; from USB
196	devices.</para>
197
198      <para arch="amd64,i386" role="merged">A new gptboot boot loader has
199        been added to support booting from a GPT labeled disk.  A
200        new <command>boot</command> command has been added to
201        &man.gpt.8;, which makes a GPT disk bootable by writing the
202        required bits of the boot loader, creating a new boot
203        partition if required.</para>
204
205    </sect3>
206
207    <sect3 id="proc">
208      <title>Hardware Support</title>
209
210      <para role="merged">The &man.cmx.4; driver, a driver for Omnikey CardMan 4040
211        PCMCIA smartcard readers, has been added.</para>
212
213      <para>The &man.syscons.4; driver now supports Colemak keyboard layout.</para>
214
215      <para role="merged">The &man.uslcom.4; driver, a driver for Silicon
216        Laboratories CP2101/CP2102-based USB serial adapters, has been
217        imported from OpenBSD.</para>
218
219      <sect4 id="mm">
220	<title>Multimedia Support</title>
221
222	<para></para>
223
224      </sect4>
225
226      <sect4 id="net-if">
227	<title>Network Interface Support</title>
228
229	<para>The &man.ale.4; driver has been added to provide support
230	  for Atheros AR8121/AR8113/AR8114 Gigabit/Fast Ethernet controllers.</para>
231
232	<para>The &man.em.4; driver has been split into two drivers
233	  with some common parts.  The &man.em.4; driver will continue
234	  to support adapters up to the 82575, as well as new
235	  client/desktop adapters.  A new &man.igb.4; driver
236	  will support new server adapters.</para>
237
238	<para>The &man.jme.4; driver has been added to provide support
239	  for PCIe network adapters based on JMicron JMC250 Gigabit
240	  Ethernet and JMC260 Fast Ethernet controllers.</para>
241
242	<para>The &man.malo.4; driver has been added to provide
243	  support for Marvell Libertas 88W8335 based PCI network
244	  adapters.</para>
245
246	<para>The firmware for the &man.mxge.4; driver has been
247	  updated from 1.4.25 to 1.4.29.</para>
248
249	<para>The &man.sf.4; driver has been overhauled to improve its
250	  performance and to add support for checksum offloading.  It
251	  should also work on all architectures.</para>
252
253	<para>The &man.re.4; driver has been overhauled to fix a
254	  number of issues.  This driver now has Wake On LAN (WOL)
255	  support.</para>
256
257	<para>The &man.vr.4; driver has been overhauled to fix a
258	  number of outstanding issues.  It also now works on all
259	  architectures.</para>
260
261	<para arch="amd64,i386" role="merged">The &man.wpi.4; driver has
262	  been updated to include a number of stability fixes.</para>
263
264      </sect4>
265    </sect3>
266
267    <sect3 id="net-proto">
268      <title>Network Protocols</title>
269
270      <para>The &man.bpf.4; packet filter and capture facility now
271        supports a zero-copy mode of operation, in which buffers are
272        loaned from a user process to the kernel.  This feature can
273        be enabled by setting
274        the <varname>net.bpf.zerocopy_enable</varname> sysctl
275        variable to <literal>1</literal>.</para>
276
277      <para>ISDN4BSD(I4B), <filename>netatm</filename>, and all
278        related subsystems have been removed due to lack of
279        multi-processor support.</para>
280
281      <para role="merged">A bug in TCP options padding, where the wrong padding
282        bytes were used, has been fixed.</para>
283
284    </sect3>
285
286    <sect3 id="disks">
287      <title>Disks and Storage</title>
288
289      <para role="merged">The &man.aac.4; driver now supports volumes larger than
290        2TB in size.</para>
291
292      <para>The &man.ata.4; driver now supports a spindown command for
293        disks; after a configurable amount of time, if no requests
294        have been received for a disk, the disk will be spun down
295        until the next request.  The &man.atacontrol.8; utility now
296        supports a <command>spindown</command> command to configure
297        this feature.</para>
298
299      <para role="merged">The &man.hptrr.4; driver has been updated to version 1.2
300        from Highpoint.</para>
301
302    </sect3>
303
304    <sect3 id="fs">
305      <title>File Systems</title>
306
307      <para>A problem with using &man.mmap.2; on ZFS filesystems has
308        been fixed.</para>
309
310      <para>A new kernel-mode NFS lock manager has been added,
311        improving performance and behavior of NFS locking.  A new
312        &man.clear.locks.8; command has been added to clear locks held
313        on behalf of an NFS client.</para>
314
315    </sect3>
316  </sect2>
317
318  <sect2 id="userland">
319    <title>Userland Changes</title>
320
321    <para role="merged">The &man.adduser.8; utility now supports
322      a <option>-M</option> option to set the mode of a new user's
323      home directory.</para>
324
325    <para>BSD-licensed versions of &man.ar.1; and &man.ranlib.1;,
326      based on <filename>libarchive</filename>, have replaced the GNU
327      Binutils versions of these utilities.</para>
328
329    <para role="merged">&man.chflags.1; now supports a <option>-v</option> flag for
330      verbose output and a <option>-f</option> flag to ignore errors
331      with the same semantics as (for example)
332      &man.chmod.1;.</para>
333
334    <para>For compatiblity with other implementations, &man.cp.1; now
335      supports a <option>-a</option> flag, which is equivalent to
336      specifying the <option>-RrP</option> flags.</para>
337
338    <para>BSD-licensed version of &man.cpio.1; based on
339      <filename>libarchive</filename>, has replaced the GNU cpio.
340      Note that the GNU cpio is still installed as
341      <filename>gcpio</filename>.</para>
342
343    <para>The &man.env.1; program now supports <option>-u
344      <replaceable>name</replaceable></option>
345      which will completely unset the given variable
346      <replaceable>name</replaceable> by removing it from the environment,
347      instead of just setting it to a null value.</para>
348
349    <para>The &man.fdopendir.3; library function has been added.</para>
350
351    <para role="merged">The &man.fetch.3; library now support HTTP 1.1
352      If-Modified-Since behavior.  The &man.fetch.1; program now
353      supports <option>-i <replaceable>filename</replaceable></option>
354      which will only download the specified HTTP URL if the content
355      is newer than <replaceable>filename</replaceable>.</para>
356
357    <para>&man.find.1; has been enhanced by the addition of a number
358      of primaries that were present in GNU find but not &os;
359      &man.find.1;.</para>
360
361    <para>&man.jexec.8; now supports <option>-h
362      <replaceable>hostname</replaceable></option> option to specify the
363      jail where the command will be executed.</para>
364
365    <para>&man.kgdb.1; now supports a new <command>add-kld</command>
366      command to make it easier to debug crash dumps with kernel
367      modules.</para>
368
369    <para>The &man.ls.1; program now supports a <option>-D</option>
370      option to specify a date format string to be used with the long
371      format (<option>-l</option>) output.</para>
372
373    <para>&man.nc.1; now supports a <option>-O</option> switch to
374      disable the use of TCP options.</para>
375
376    <para>The &man.ping6.8; utility now returns <literal>2</literal>
377      when the packet transmission was successful but no responses
378      were received (this is the same behavior as &man.ping.8;).
379      It returned a non-zero value before this change.</para>
380
381    <para>The &man.procstat.1; utility has been added to display
382      detailed information about processes.</para>
383
384    <para role="merged">The &man.realpath.1; utility now supports
385      a <option>-q</option> flag to suppress warnings; it now also
386      accepts multiple paths on its command line.</para>
387
388    <para>The &man.split.1; utility now supports a <option>-n</option>
389      flag to split a file into a certain number of chunks.</para>
390
391    <para>The &man.tar.1; utility now supports a <option>-Z</option>
392      flag to enable &man.compress.1;-style
393      compression/decompression.</para>
394
395    <para>The &man.tar.1; utility now supports a
396      <option>--numeric-owner</option> flag to ignore user/group names
397      on create and extract.</para>
398
399    <para>The &man.tar.1; utility now supports an
400      <option>-S</option> flag to sparsify files on extraction.</para>
401
402    <para>The &man.tar.1; utility now supports a <option>-s</option>
403      flag to substitute filenames based on the specified regular
404      expression.</para>
405
406    <para>The &man.tcgetsid.3; library function has been added to
407      return the process group ID for the session leader for the
408      controlling terminal.  It is defined in IEEE Std 1003.1-2001
409      (POSIX).</para>
410
411    <para>&man.top.1; now supports a <option>-P</option> flag to
412      provide per-CPU usage statistics.</para>
413
414    <para>&man.traceroute.8; now has the ability to print the AS
415      number for each hop with the new <option>-a</option> switch; a
416      new <option>-A</option> option allows selecting a particular
417      WHOIS server.</para>
418
419    <para>&man.traceroute6.8; now supports a <option>-U</option> flag
420      to send probe packets with no upper-layer protocol, rather than
421      the usual UDP probe packets.</para>
422
423    <sect3 id="rc-scripts">
424      <title><filename>/etc/rc.d</filename> Scripts</title>
425
426      <para></para>
427
428    </sect3>
429  </sect2>
430
431  <sect2 id="contrib">
432    <title>Contributed Software</title>
433
434    <para role="merged"><application>AMD</application> has been updated from 6.0.10
435      to 6.1.5.</para>
436
437    <para role="merged"><application>awk</application> has been updated from 1 May
438      2007 release to the 23 October 2007 release.</para>
439
440    <para role="merged"><application>bzip2</application> has been updated from 1.0.4
441      to 1.0.5.</para>
442
443    <para><application>CVS</application> has been updated from 1.11.17
444      to a post-1.11.22 snapshot from 10 March 2008.</para>
445
446    <para><application>hostapd</application> has been
447      updated from 0.5.8 to 0.5.10.</para>
448
449    <para><application>IPFilter</application> has been updated from
450      4.1.23 to 4.1.28.</para>
451
452    <para><application>less</application> has been updated from
453      v408 to v429.</para>
454
455    <para><application>ncurses</application> has been updated from
456      5.6-20061217 to 5.6-20080503.</para>
457
458    <para role="merged"><application>OpenSSH</application> has been updated
459      from 4.5p1 to 5.1p1.</para>
460
461    <para role="merged"><application>OpenPAM</application> has been updated from the
462      Figwort release to the Hydrangea release.</para>
463
464    <para role="merged"><application>sendmail</application> has been updated from
465      8.14.1 to 8.14.3.</para>
466
467    <para role="merged">The timezone database has been updated from
468      the <application>tzdata2008b</application> release to
469      the <application>tzdata2008h</application> release.</para>
470
471    <para><application>WPA Supplicant</application> has been
472      updated from 0.5.8 to 0.5.10.</para>
473
474  </sect2>
475
476  <sect2 id="ports">
477    <title>Ports/Packages Collection Infrastructure</title>
478
479    <para>The &man.pkg.create.1; utility now supports
480      <option>-n</option>.  When this option is specified and a
481      package tarball exists, it will not be overwritten.  This is
482      useful when multiple packages are saved with several consecutive
483      runs of &man.pkg.create.1; with the <option>-Rb</option>
484      options.</para>
485
486    <para>The pkg_sign and pkg_check utilities for cryptographically
487      signing &os; packages have been removed.  They were only useful
488      for packages compressed using &man.gzip.1;; however
489      &man.bzip2.1; compression has been the norm for some time
490      now.</para>
491
492  </sect2>
493
494  <sect2 id="releng">
495    <title>Release Engineering and Integration</title>
496
497    <para role="merged">The supported version of
498      the <application>GNOME</application> desktop environment
499      (<filename role="package">x11/gnome2</filename>) has been
500      updated from 2.20.1 to 2.22.</para>
501
502  </sect2>
503
504  <sect2 id="doc">
505    <title>Documentation</title>
506
507    <para></para>
508
509  </sect2>
510</sect1>
511
512<sect1 id="upgrade">
513  <title>Upgrading from previous releases of &os;</title>
514
515  <para arch="amd64,i386">Beginning with &os; 6.2-RELEASE,
516    binary upgrades between RELEASE versions (and snapshots of the
517    various security branches) are supported using the
518    &man.freebsd-update.8; utility.  The binary upgrade procedure will
519    update unmodified userland utilities, as well as unmodified GENERIC or
520    SMP kernels distributed as a part of an official &os; release.
521    The &man.freebsd-update.8; utility requires that the host being
522    upgraded have Internet connectivity.</para>
523
524  <para>An older form of binary upgrade is supported through the
525    <command>Upgrade</command> option from the main &man.sysinstall.8;
526    menu on CDROM distribution media.  This type of binary upgrade
527    may be useful on non-&arch.i386;, non-&arch.amd64; machines
528    or on systems with no Internet connectivity.</para>
529
530  <para>Source-based upgrades (those based on recompiling the &os;
531    base system from source code) from previous versions are
532    supported, according to the instructions in
533    <filename>/usr/src/UPDATING</filename>.</para>
534
535  <important>
536    <para>Upgrading &os; should, of course, only be attempted after
537      backing up <emphasis>all</emphasis> data and configuration
538      files.</para>
539  </important>
540</sect1>
541</article>
542