article.xml revision 258954
1163953Srrs<?xml version="1.0" encoding="iso-8859-1"?>
2169382Srrs<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V5.0-Based Extension//EN"
3235828Stuexen        "../../../share/xml/freebsd50.dtd" [
4235828Stuexen<!ENTITY % release PUBLIC "-//FreeBSD//ENTITIES Release Specification//EN" "release.ent">
5163953Srrs %release;
6163953Srrs]>
7163953Srrs<article xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0">
8163953Srrs<info><title>&os; &release.current; Release Notes</title>
9163953Srrs  
10228653Stuexen
11163953Srrs  <author><orgname>The &os; Project</orgname></author>
12163953Srrs
13163953Srrs  <pubdate>$FreeBSD: stable/10/release/doc/en_US.ISO8859-1/relnotes/article.xml 258954 2013-12-05 01:21:45Z rodrigc $</pubdate>
14228653Stuexen
15163953Srrs  <copyright>
16163953Srrs    <year>2000</year>
17163953Srrs    <year>2001</year>
18163953Srrs    <year>2002</year>
19163953Srrs    <year>2003</year>
20163953Srrs    <year>2004</year>
21163953Srrs    <year>2005</year>
22163953Srrs    <year>2006</year>
23163953Srrs    <year>2007</year>
24163953Srrs    <year>2008</year>
25163953Srrs    <year>2009</year>
26163953Srrs    <year>2010</year>
27163953Srrs    <year>2011</year>
28163953Srrs    <year>2012</year>
29163953Srrs    <year>2013</year>
30163953Srrs    <holder role="mailto:doc@FreeBSD.org">The &os; Documentation Project</holder>
31163953Srrs  </copyright>
32163953Srrs
33163953Srrs  <legalnotice xml:id="trademarks" role="trademarks">
34163953Srrs    &tm-attrib.freebsd;
35163953Srrs    &tm-attrib.ibm;
36235828Stuexen    &tm-attrib.ieee;
37235828Stuexen    &tm-attrib.intel;
38163953Srrs    &tm-attrib.sparc;
39211969Stuexen    &tm-attrib.general;
40211969Stuexen  </legalnotice>
41211969Stuexen
42188605Srrs  <abstract>
43211969Stuexen    <para>The release notes for &os; &release.current; contain a summary
44205104Srrs      of the changes made to the &os; base system on the
45163953Srrs      &release.branch; development line.
46188067Srrs      This document lists applicable security advisories that were issued since
47163953Srrs      the last release, as well as significant changes to the &os;
48      kernel and userland.
49      Some brief remarks on upgrading are also presented.</para>
50  </abstract>
51</info>
52
53<sect1 xml:id="intro">
54  <title>Introduction</title>
55
56  <para>This document contains the release notes for &os;
57    &release.current;.  It
58    describes recently added, changed, or deleted features of &os;.
59    It also provides some notes on upgrading
60    from previous versions of &os;.</para>
61
62  <para releasetype="current">The &release.type; distribution to which these release notes
63    apply represents the latest point along the &release.branch; development
64    branch since &release.branch; was created.  Information regarding pre-built, binary
65    &release.type; distributions along this branch
66    can be found at <uri xlink:href="&release.url;">&release.url;</uri>.</para>
67
68  <para releasetype="snapshot">The &release.type; distribution to which these release notes
69    apply represents a point along the &release.branch; development
70    branch between &release.prev; and the future &release.next;.
71    Information regarding
72    pre-built, binary &release.type; distributions along this branch
73    can be found at <uri xlink:href="&release.url;">&release.url;</uri>.</para>
74
75  <para releasetype="release">This distribution of &os; &release.current; is a
76    &release.type; distribution.  It can be found at <uri xlink:href="&release.url;">&release.url;</uri> or any of its mirrors.  More
77    information on obtaining this (or other) &release.type;
78    distributions of &os; can be found in the <link xlink:href="&url.books.handbook;/mirrors.html"><quote>Obtaining
79    &os;</quote> appendix</link> to the <link xlink:href="&url.books.handbook;/">&os;
80    Handbook</link>.</para>
81
82  <para>All users are encouraged to consult the release errata before
83    installing &os;.  The errata document is updated with
84    <quote>late-breaking</quote> information discovered late in the
85    release cycle or after the release.  Typically, it contains
86    information on known bugs, security advisories, and corrections to
87    documentation.  An up-to-date copy of the errata for &os;
88    &release.current; can be found on the &os; Web site.</para>
89
90</sect1>
91
92<sect1 xml:id="new">
93  <title>What's New</title>
94
95  <para>This section describes
96    the most user-visible new or changed features in &os;
97    since &release.prev;.
98    In general, changes described here are unique to the &release.branch;
99    branch unless specifically marked as &merged; features.
100  </para>
101
102  <para>Typical release note items
103    document recent security advisories issued after
104    &release.prev;,
105    new drivers or hardware support, new commands or options,
106    major bug fixes, or contributed software upgrades.  They may also
107    list changes to major ports/packages or release engineering
108    practices.  Clearly the release notes cannot list every single
109    change made to &os; between releases; this document focuses
110    primarily on security advisories, user-visible changes, and major
111    architectural improvements.</para>
112
113  <sect2 xml:id="security">
114    <title>Security Advisories</title>
115
116    <para/>
117
118  </sect2>
119
120  <sect2 xml:id="kernel">
121    <title>Kernel Changes</title>
122
123    <para arch="amd64">The maximum amount of memory the &os; kernel
124      can address has been increased from 1TB to 4TB.</para>
125
126    <para>A new &man.cpuset.2; API has been added
127      for thread to CPU binding and CPU resource grouping and
128      assignment.  The &man.cpuset.1; userland utility has been added
129      to allow manipulation of processor sets.</para>
130
131    <para role="merged">The &man.ddb.4; kernel debugger now has an output capture
132      facility.  Input and output from &man.ddb.4; can now be captured
133      to a memory buffer for later inspection using &man.sysctl.8; or
134      a textdump.  The new <command>capture</command> command controls
135      this feature.</para>
136
137    <para role="merged">The &man.ddb.4; debugger now supports a simple scripting
138      facility, which supports a set of named scripts consisting of a
139      set of &man.ddb.4; commands.  These commands can be managed from
140      within &man.ddb.4; or with the use of the new &man.ddb.8;
141      utility.  More details can be found in the &man.ddb.4; manual
142      page.</para>
143
144    <para role="merged">The kernel now supports a new textdump format of kernel
145      dumps.  A textdump provides higher-level information via
146      mechanically generated/extracted debugging output, rather than a
147      simple memory dump.  This facility can be used to generate brief
148      kernel bug reports that are rich in debugging information, but
149      are not dependent on kernel symbol tables or precisely
150      synchronized source code.  More information can be found in the
151      &man.textdump.4; manual page.</para>
152
153    <para>Kernel support for M:N threading has been removed.  While
154      the KSE (Kernel Scheduled Entities) project was quite successful
155      in bringing threading to FreeBSD, the M:N approach taken by the
156      KSE library was never developed to its full potential.
157      Backwards compatibility for applications using KSE threading
158      will be provided via &man.libmap.conf.5; for dynamically linked
159      binaries.  The &os; Project greatly appreciates the work of
160      &a.julian;, &a.deischen;, and &a.davidxu; on KSE support.</para>
161
162    <para>The &os; kernel now exports information about certain kernel
163      features via the <varname>kern.features</varname> sysctl tree.
164      The &man.feature.present.3; library call provides a convenient
165      interface for user applications to test the presence of
166      features.</para>
167
168    <para arch="amd64">The &os; kernel now has support for large
169      memory page mappings (<quote>superpages</quote>).</para>
170
171    <para arch="amd64,i386,ia64,powerpc" role="merged">The ULE
172      scheduler is now the default process scheduler
173      in <filename>GENERIC</filename> kernels.</para>
174
175    <sect3 xml:id="boot">
176      <title>Boot Loader Changes</title>
177
178      <para arch="amd64,i386" role="merged">The BTX kernel used by the boot
179	loader has been changed to invoke BIOS routines from real
180	mode.  This change makes it possible to boot &os; from USB
181	devices.</para>
182
183      <para arch="amd64,i386" role="merged">A new gptboot boot loader has
184        been added to support booting from a GPT labeled disk.  A
185        new <command>boot</command> command has been added to
186        &man.gpt.8;, which makes a GPT disk bootable by writing the
187        required bits of the boot loader, creating a new boot
188        partition if required.</para>
189
190    </sect3>
191
192    <sect3 xml:id="proc">
193      <title>Hardware Support</title>
194
195      <para role="merged">The &man.cmx.4; driver, a driver for Omnikey CardMan 4040
196        PCMCIA smartcard readers, has been added.</para>
197
198      <para>The &man.syscons.4; driver now supports Colemak keyboard layout.</para>
199
200      <para role="merged">The &man.uslcom.4; driver, a driver for Silicon
201        Laboratories CP2101/CP2102-based USB serial adapters, has been
202        imported from OpenBSD.</para>
203
204      <sect4 xml:id="mm">
205	<title>Multimedia Support</title>
206
207        <para>Support for version 2.0 of the USB Audio reference design
208          has been added. New devices should support higher bandwidth,
209          increased sampling frequency and wider dynamic range.</para>
210
211      </sect4>
212
213      <sect4 xml:id="net-if">
214	<title>Network Interface Support</title>
215
216	<para>The &man.ale.4; driver has been added to provide support
217	  for Atheros AR8121/AR8113/AR8114 Gigabit/Fast Ethernet controllers.</para>
218
219	<para>The &man.em.4; driver has been split into two drivers
220	  with some common parts.  The &man.em.4; driver will continue
221	  to support adapters up to the 82575, as well as new
222	  client/desktop adapters.  A new &man.igb.4; driver
223	  will support new server adapters.</para>
224
225	<para>The &man.jme.4; driver has been added to provide support
226	  for PCIe network adapters based on JMicron JMC250 Gigabit
227	  Ethernet and JMC260 Fast Ethernet controllers.</para>
228
229	<para>The &man.malo.4; driver has been added to provide
230	  support for Marvell Libertas 88W8335 based PCI network
231	  adapters.</para>
232
233	<para>The firmware for the &man.mxge.4; driver has been
234	  updated from 1.4.25 to 1.4.29.</para>
235
236	<para>The &man.sf.4; driver has been overhauled to improve its
237	  performance and to add support for checksum offloading.  It
238	  should also work on all architectures.</para>
239
240	<para>The &man.re.4; driver has been overhauled to fix a
241	  number of issues.  This driver now has Wake On LAN (WOL)
242	  support.</para>
243
244	<para>The &man.vr.4; driver has been overhauled to fix a
245	  number of outstanding issues.  It also now works on all
246	  architectures.</para>
247
248	<para arch="amd64,i386" role="merged">The &man.wpi.4; driver has
249	  been updated to include a number of stability fixes.</para>
250
251      </sect4>
252    </sect3>
253
254    <sect3 xml:id="net-proto">
255      <title>Network Protocols</title>
256
257      <para>&man.carp.4; has been rewritten to make addresses
258        more sane from the viewpoint of routing daemons such as
259        quagga/zebra. It also brings support for a single redundant
260        address on the subnet (carpdev), switching state with
261        ifconfig, better locking and using modern kernel
262        interfaces to allocate multicast memberships.</para>
263
264      <para>The &man.pf.4; firewall now supports fine-grain locking
265        and better utilization on multi-cpu machines resulting in
266        significant improvements in performance.</para>
267
268      <para>Support for up to 65536 routing tables has been
269        introduced.</para>
270
271      <para>Support for setting/matching differentiated services
272        codepoints (DSCP) in IP header has been added to
273        &man.ipfw.8;.</para>
274
275    </sect3>
276
277    <sect3 xml:id="disks">
278      <title>Disks and Storage</title>
279
280      <para role="merged">The &man.aac.4; driver now supports volumes larger than
281        2TB in size.</para>
282
283      <para>The &man.ata.4; driver now supports a spindown command for
284        disks; after a configurable amount of time, if no requests
285        have been received for a disk, the disk will be spun down
286        until the next request.  The &man.atacontrol.8; utility now
287        supports a <command>spindown</command> command to configure
288        this feature.</para>
289
290      <para role="merged">The &man.hptrr.4; driver has been updated to version 1.2
291        from Highpoint.</para>
292
293    </sect3>
294
295    <sect3 xml:id="fs">
296      <title>File Systems</title>
297
298      <para>A new kernel-based iSCSI target and initiator has been
299        added</para>
300
301      <para>UFS filesystems can now be enlarged with &man.growfs.8; while
302        mounted read-write. This is especially useful for virtual
303        machines, allowing the addition of more harddrive space without
304        interruption of service.</para>
305
306      <para>A state of the art FUSE implementation is now part of the
307        base system. It allows the use of nearly all fusefs file
308        systems</para>
309
310      <para>Support for the high performance LZ4 compression algorithm
311        has been added to ZFS. LZ4 is usually faster and can achieve a
312        higher compression ratio than LZJB, the default compression
313        algorithm</para>
314
315      <para>Support for L2ARC compression has been added to ZFS.</para>
316
317      <para>ZFS will now compare the checksums of incoming writes to
318        the checksum of the existing on-disk data and avoid issuing any
319        write I/O for data that has not changed. This will reduce I/O
320        as well as space usage because if the old block is referenced
321        by a snapshot, both copies of the block are kept even though
322        both contain the same data.</para>
323
324    </sect3>
325
326  </sect2>
327
328  <sect2 xml:id="userland">
329    <title>Userland Changes</title>
330
331    <para role="merged">The &man.adduser.8; utility now supports
332      a <option>-M</option> option to set the mode of a new user's
333      home directory.</para>
334
335    <para>BSD-licensed versions of &man.ar.1; and &man.ranlib.1;,
336      based on <filename>libarchive</filename>, have replaced the GNU
337      Binutils versions of these utilities.</para>
338
339    <para>BSD-licensed versions of &man.bc.1; and &man.dc.1; have
340      replaced their GNU counterparts.</para>
341
342    <para role="merged">&man.chflags.1; now supports a <option>-v</option> flag for
343      verbose output and a <option>-f</option> flag to ignore errors
344      with the same semantics as (for example)
345      &man.chmod.1;.</para>
346
347    <para>For compatibility with other implementations, &man.cp.1; now
348      supports a <option>-a</option> flag, which is equivalent to
349      specifying the <option>-RrP</option> flags.</para>
350
351    <para>BSD-licensed version of &man.cpio.1; based on
352      <filename>libarchive</filename>, has replaced the GNU cpio.
353      Note that the GNU cpio is still installed as
354      <filename>gcpio</filename>.</para>
355
356    <para>The &man.env.1; program now supports <option>-u
357      <replaceable>name</replaceable></option>
358      which will completely unset the given variable
359      <replaceable>name</replaceable> by removing it from the environment,
360      instead of just setting it to a null value.</para>
361
362    <para>The &man.fdopendir.3; library function has been added.</para>
363
364    <para role="merged">The &man.fetch.3; library now support HTTP 1.1
365      If-Modified-Since behavior.  The &man.fetch.1; program now
366      supports <option>-i <replaceable>filename</replaceable></option>
367      which will only download the specified HTTP URL if the content
368      is newer than <replaceable>filename</replaceable>.</para>
369
370    <para>&man.find.1; has been enhanced by the addition of a number
371      of primaries that were present in GNU find but not &os;
372      &man.find.1;.</para>
373
374    <para>&man.kgdb.1; now supports a new <command>add-kld</command>
375      command to make it easier to debug crash dumps with kernel
376      modules.</para>
377
378    <para>The &man.ls.1; program now supports a <option>-D</option>
379      option to specify a date format string to be used with the long
380      format (<option>-l</option>) output.</para>
381
382    <para>&man.nc.1; now supports a <option>-O</option> switch to
383      disable the use of TCP options.</para>
384
385    <para>&man.nc.1;'s <option>-o</option> switch has been deprecated.
386      It will be removed in a future release.</para>
387
388    <para>The &man.ping6.8; utility now returns <literal>2</literal>
389      when the packet transmission was successful but no responses
390      were received (this is the same behavior as &man.ping.8;).
391      It returned a non-zero value before this change.</para>
392
393    <para>The &man.procstat.1; utility has been added to display
394      detailed information about processes.</para>
395
396    <para role="merged">The &man.realpath.1; utility now supports
397      a <option>-q</option> flag to suppress warnings; it now also
398      accepts multiple paths on its command line.</para>
399
400    <para>&man.sh.1; has many bug fixes, some new features, and will now
401      refuse to parse some invalid scripts.  Additionally, it now
402      has filename completion and defaults to the &quot;emacs&quot; editing
403      mode.</para>
404
405    <para>The &man.split.1; utility now supports a <option>-n</option>
406      flag to split a file into a certain number of chunks.</para>
407
408    <para>The &man.tar.1; utility now supports a <option>-Z</option>
409      flag to enable &man.compress.1;-style
410      compression/decompression.</para>
411
412    <para>The &man.tar.1; utility now supports a
413      <option>--numeric-owner</option> flag to ignore user/group names
414      on create and extract.</para>
415
416    <para>The &man.tar.1; utility now supports an
417      <option>-S</option> flag to sparsify files on extraction.</para>
418
419    <para>The &man.tar.1; utility now supports a <option>-s</option>
420      flag to substitute filenames based on the specified regular
421      expression.</para>
422
423    <para>The &man.tcgetsid.3; library function has been added to
424      return the process group ID for the session leader for the
425      controlling terminal.  It is defined in IEEE Std 1003.1-2001
426      (POSIX).</para>
427
428    <para>&man.top.1; now supports a <option>-P</option> flag to
429      provide per-CPU usage statistics.</para>
430
431    <para>&man.zdump.8; is now working properly on 64 bit architectures.
432      </para>
433
434    <para>&man.traceroute.8; now has the ability to print the AS
435      number for each hop with the new <option>-a</option> switch; a
436      new <option>-A</option> option allows selecting a particular
437      WHOIS server.</para>
438
439    <para>&man.traceroute6.8; now supports a <option>-U</option> flag
440      to send probe packets with no upper-layer protocol, rather than
441      the usual UDP probe packets.</para>
442
443    <sect3 xml:id="rc-scripts">
444      <title><filename>/etc/rc.d</filename> Scripts</title>
445
446      <para/>
447
448    </sect3>
449  </sect2>
450
451  <sect2 xml:id="contrib">
452    <title>Contributed Software</title>
453
454    <para role="merged"><application>AMD</application> has been updated from 6.0.10
455      to 6.1.5.</para>
456
457    <para role="merged"><application>awk</application> has been updated from 1 May
458      2007 release to the 23 October 2007 release.</para>
459
460    <para role="merged"><application>bzip2</application> has been updated from 1.0.4
461      to 1.0.5.</para>
462
463    <para><application>CVS</application> has been removed from the
464    base system, but is still available from ports</para>
465
466    <para><application>FILE</application> has been updated from 4.23
467      to 5.03.</para>
468
469    <para><application>hostapd</application> has been
470      updated from 0.5.8 to 0.5.10.</para>
471
472    <para><application>IPFilter</application> has been updated from
473      4.1.23 to 4.1.28.</para>
474
475    <para><application>less</application> has been updated from
476      v408 to v429.</para>
477
478    <para><application>ncurses</application> has been updated from
479      5.6-20061217 to 5.6-20080503.</para>
480
481    <para role="merged"><application>OpenSSH</application> has been updated
482      from 4.5p1 to 5.1p1.</para>
483
484    <para role="merged"><application>OpenPAM</application> has been updated from the
485      Figwort release to the Hydrangea release.</para>
486
487    <para role="merged"><application>sendmail</application> has been updated from
488      8.14.1 to 8.14.7.</para>
489
490    <para role="merged">The timezone database has been updated from
491      the <application>tzdata2008h</application> release to
492      the <application>tzdata2009m</application> release.</para>
493
494    <para>The stdtime part of libc, &man.zdump.8; and &man.zic.8;
495      have been updated from the <application>tzcode2004a</application>
496      release to the <application>tzcode2009h</application> release.
497      If you have upgraded from source or via the &man.freebsd-update.8;,
498      then please run &man.tzsetup.8; to install a new /etc/localtime.
499      </para>
500
501    <para><application>WPA Supplicant</application> has been
502      updated from 0.5.8 to 0.5.10.</para>
503
504    <para role="merged"><application>xz</application> has been updated
505      from snapshot as of 12 April 2010 to 5.0.0.</para>
506
507  </sect2>
508
509  <sect2 xml:id="ports">
510    <title>Ports/Packages Collection Infrastructure</title>
511
512    <para>The &man.pkg.create.1; utility now supports
513      <option>-n</option>.  When this option is specified and a
514      package tarball exists, it will not be overwritten.  This is
515      useful when multiple packages are saved with several consecutive
516      runs of &man.pkg.create.1; with the <option>-Rb</option>
517      options.</para>
518
519    <para>The pkg_sign and pkg_check utilities for cryptographically
520      signing &os; packages have been removed.  They were only useful
521      for packages compressed using &man.gzip.1;; however
522      &man.bzip2.1; compression has been the norm for some time
523      now.</para>
524
525  </sect2>
526
527  <sect2 xml:id="releng">
528    <title>Release Engineering and Integration</title>
529
530    <para role="merged">The supported version of
531      the <application>GNOME</application> desktop environment
532      (<package>x11/gnome2</package>) has been
533      updated from 2.20.1 to 2.22.</para>
534
535  </sect2>
536
537  <sect2 xml:id="doc">
538    <title>Documentation</title>
539
540    <para/>
541
542  </sect2>
543</sect1>
544
545<sect1 xml:id="upgrade">
546  <title>Upgrading from previous releases of &os;</title>
547
548  <para arch="amd64,i386">Beginning with &os; 6.2-RELEASE,
549    binary upgrades between RELEASE versions (and snapshots of the
550    various security branches) are supported using the
551    &man.freebsd-update.8; utility.  The binary upgrade procedure will
552    update unmodified userland utilities, as well as unmodified GENERIC or
553    SMP kernels distributed as a part of an official &os; release.
554    The &man.freebsd-update.8; utility requires that the host being
555    upgraded have Internet connectivity.</para>
556
557  <para>Source-based upgrades (those based on recompiling the &os;
558    base system from source code) from previous versions are
559    supported, according to the instructions in
560    <filename>/usr/src/UPDATING</filename>.</para>
561
562  <important>
563    <para>Upgrading &os; should, of course, only be attempted after
564      backing up <emphasis>all</emphasis> data and configuration
565      files.</para>
566  </important>
567</sect1>
568</article>
569