article.xml revision 260613
1<?xml version="1.0" encoding="iso-8859-1"?>
2<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V5.0-Based Extension//EN"
3        "../../../share/xml/freebsd50.dtd" [
4<!ENTITY % release PUBLIC "-//FreeBSD//ENTITIES Release Specification//EN" "release.ent">
5 %release;
6
7<!-- local entities not available in doc/release/10.0.0 tag -->
8<!ENTITY man.drill.1 "<citerefentry xmlns='http://docbook.org/ns/docbook'><refentrytitle>drill</refentrytitle><manvolnum>1</manvolnum></citerefentry>">
9<!ENTITY man.freebsd-version.1 "<citerefentry xmlns='http://docbook.org/ns/docbook'><refentrytitle>freebsd-version</refentrytitle><manvolnum>1</manvolnum></citerefentry>">
10<!ENTITY man.jemalloc.3 "<citerefentry xmlns='http://docbook.org/ns/docbook'><refentrytitle>jemalloc</refentrytitle><manvolnum>3</manvolnum></citerefentry>">
11<!ENTITY man.bhyve.4 "<citerefentry xmlns='http://docbook.org/ns/docbook'><refentrytitle>bhyve</refentrytitle><manvolnum>4</manvolnum></citerefentry>">
12<!ENTITY man.if_cxgbe.4 "<citerefentry xmlns='http://docbook.org/ns/docbook'><refentrytitle>if_cxgbe</refentrytitle><manvolnum>4</manvolnum></citerefentry>">
13<!ENTITY man.nvme.4 "<citerefentry xmlns='http://docbook.org/ns/docbook'><refentrytitle>nvme</refentrytitle><manvolnum>4</manvolnum></citerefentry>">
14<!ENTITY man.virtio.4 "<citerefentry xmlns='http://docbook.org/ns/docbook'><refentrytitle>virtio</refentrytitle><manvolnum>4</manvolnum></citerefentry>">
15<!ENTITY man.virtio_balloon.4 "<citerefentry xmlns='http://docbook.org/ns/docbook'><refentrytitle>virtio_balloon</refentrytitle><manvolnum>4</manvolnum></citerefentry>">
16<!ENTITY man.virtio_blk.4 "<citerefentry xmlns='http://docbook.org/ns/docbook'><refentrytitle>virtio_blk</refentrytitle><manvolnum>4</manvolnum></citerefentry>">
17<!ENTITY man.virtio_scsi.4 "<citerefentry xmlns='http://docbook.org/ns/docbook'><refentrytitle>virtio_scsi</refentrytitle><manvolnum>4</manvolnum></citerefentry>">
18<!ENTITY man.vmx.4 "<citerefentry xmlns='http://docbook.org/ns/docbook'><refentrytitle>vmx</refentrytitle><manvolnum>4</manvolnum></citerefentry>">
19<!ENTITY man.pkg.7 "<citerefentry xmlns='http://docbook.org/ns/docbook'><refentrytitle>pkg</refentrytitle><manvolnum>7</manvolnum></citerefentry>">
20<!ENTITY man.bhyve.8 "<citerefentry xmlns='http://docbook.org/ns/docbook'><refentrytitle>bhyve</refentrytitle><manvolnum>8</manvolnum></citerefentry>">
21<!ENTITY man.bsdconfig.8 "<citerefentry xmlns='http://docbook.org/ns/docbook'><refentrytitle>bsdconfig</refentrytitle><manvolnum>8</manvolnum></citerefentry>">
22<!ENTITY man.unbound.8 "<citerefentry xmlns='http://docbook.org/ns/docbook'><refentrytitle>unbound</refentrytitle><manvolnum>8</manvolnum></citerefentry>">
23]>
24<article xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0">
25<info><title>&os; &release.current; Release Notes</title>
26  
27
28  <author><orgname>The &os; Project</orgname></author>
29
30  <pubdate>$FreeBSD: releng/10.0/release/doc/en_US.ISO8859-1/relnotes/article.xml 260613 2014-01-13 23:34:43Z gjb $</pubdate>
31
32  <copyright>
33    <year>2000</year>
34    <year>2001</year>
35    <year>2002</year>
36    <year>2003</year>
37    <year>2004</year>
38    <year>2005</year>
39    <year>2006</year>
40    <year>2007</year>
41    <year>2008</year>
42    <year>2009</year>
43    <year>2010</year>
44    <year>2011</year>
45    <year>2012</year>
46    <year>2013</year>
47    <year>2014</year>
48    <holder role="mailto:doc@FreeBSD.org">The &os; Documentation Project</holder>
49  </copyright>
50
51  <legalnotice xml:id="trademarks" role="trademarks">
52    &tm-attrib.freebsd;
53    &tm-attrib.ibm;
54    &tm-attrib.ieee;
55    &tm-attrib.intel;
56    &tm-attrib.sparc;
57    &tm-attrib.general;
58  </legalnotice>
59
60  <abstract>
61    <para>The release notes for &os; &release.current; contain a summary
62      of the changes made to the &os; base system on the
63      &release.branch; development line.
64      This document lists applicable security advisories that were issued since
65      the last release, as well as significant changes to the &os;
66      kernel and userland.
67      Some brief remarks on upgrading are also presented.</para>
68  </abstract>
69</info>
70
71<sect1 xml:id="intro">
72  <title>Introduction</title>
73
74  <para>This document contains the release notes for &os;
75    &release.current;.  It
76    describes recently added, changed, or deleted features of &os;.
77    It also provides some notes on upgrading
78    from previous versions of &os;.</para>
79
80  <para>The latest, up-to-date version of the release notes are
81    available online at <uri
82      xlink:href="&release.url;10.0R/relnotes.html">&release.url;10.0R/relnotes.html</uri>.</para>
83
84  <para releasetype="current">The &release.type; distribution to which these release notes
85    apply represents the latest point along the &release.branch; development
86    branch since &release.branch; was created.  Information regarding pre-built, binary
87    &release.type; distributions along this branch
88    can be found at <uri xlink:href="&release.url;">&release.url;</uri>.</para>
89
90  <para releasetype="snapshot">The &release.type; distribution to which these release notes
91    apply represents a point along the &release.branch; development
92    branch between &release.prev; and the future &release.next;.
93    Information regarding
94    pre-built, binary &release.type; distributions along this branch
95    can be found at <uri xlink:href="&release.url;">&release.url;</uri>.</para>
96
97  <para releasetype="release">This distribution of &os; &release.current; is a
98    &release.type; distribution.  It can be found at <uri xlink:href="&release.url;">&release.url;</uri> or any of its mirrors.  More
99    information on obtaining this (or other) &release.type;
100    distributions of &os; can be found in the <link xlink:href="&url.books.handbook;/mirrors.html"><quote>Obtaining
101    &os;</quote> appendix</link> to the <link xlink:href="&url.books.handbook;/">&os;
102    Handbook</link>.</para>
103
104  <para>All users are encouraged to consult the release errata before
105    installing &os;.  The errata document is updated with
106    <quote>late-breaking</quote> information discovered late in the
107    release cycle or after the release.  Typically, it contains
108    information on known bugs, security advisories, and corrections to
109    documentation.  An up-to-date copy of the errata for &os;
110    &release.current; can be found on the &os; Web site.</para>
111
112</sect1>
113
114<sect1 xml:id="new">
115  <title>What's New</title>
116
117  <para>This section describes
118    the most user-visible new or changed features in &os;
119    since &release.prev;.
120    In general, changes described here are unique to the &release.branch;
121    branch unless specifically marked as &merged; features.
122  </para>
123
124  <para>Typical release note items
125    document recent security advisories issued after
126    &release.prev;,
127    new drivers or hardware support, new commands or options,
128    major bug fixes, or contributed software upgrades.  They may also
129    list changes to major ports/packages or release engineering
130    practices.  Clearly the release notes cannot list every single
131    change made to &os; between releases; this document focuses
132    primarily on security advisories, user-visible changes, and major
133    architectural improvements.</para>
134
135  <sect2 xml:id="security">
136    <title>Security Advisories</title>
137
138    <para>No security advisories.</para>
139
140  </sect2>
141
142  <sect2 xml:id="kernel">
143    <title>Kernel Changes</title>
144
145    <para revision="248508">The use of unmapped VMIO buffers eliminates the need to perform
146      TLB shootdown for mapping on buffer creation and reuse, greatly reducing the
147      amount of IPIs for shootdown on big-SMP machines and eliminating up to 25-30%
148      of the system time on i/o intensive workloads.</para>
149
150    <para arch="amd64" revision="254466">The maximum amount of memory the &os; kernel
151      can address has been increased from 1TB to 4TB.</para>
152
153    <para>A new &man.cpuset.2; API has been added
154      for thread to CPU binding and CPU resource grouping and
155      assignment.  The &man.cpuset.1; userland utility has been added
156      to allow manipulation of processor sets.</para>
157
158    <para role="merged">The &man.ddb.4; kernel debugger now has an output capture
159      facility.  Input and output from &man.ddb.4; can now be captured
160      to a memory buffer for later inspection using &man.sysctl.8; or
161      a textdump.  The new <command>capture</command> command controls
162      this feature.</para>
163
164    <para role="merged">The &man.ddb.4; debugger now supports a simple scripting
165      facility, which supports a set of named scripts consisting of a
166      set of &man.ddb.4; commands.  These commands can be managed from
167      within &man.ddb.4; or with the use of the new &man.ddb.8;
168      utility.  More details can be found in the &man.ddb.4; manual
169      page.</para>
170
171    <para role="merged">The kernel now supports a new textdump format of kernel
172      dumps.  A textdump provides higher-level information via
173      mechanically generated/extracted debugging output, rather than a
174      simple memory dump.  This facility can be used to generate brief
175      kernel bug reports that are rich in debugging information, but
176      are not dependent on kernel symbol tables or precisely
177      synchronized source code.  More information can be found in the
178      &man.textdump.4; manual page.</para>
179
180    <para>Kernel support for M:N threading has been removed.  While
181      the KSE (Kernel Scheduled Entities) project was quite successful
182      in bringing threading to FreeBSD, the M:N approach taken by the
183      KSE library was never developed to its full potential.
184      Backwards compatibility for applications using KSE threading
185      will be provided via &man.libmap.conf.5; for dynamically linked
186      binaries.  The &os; Project greatly appreciates the work of
187      &a.julian;, &a.deischen;, and &a.davidxu; on KSE support.</para>
188
189    <para>The &os; kernel now exports information about certain kernel
190      features via the <varname>kern.features</varname> sysctl tree.
191      The &man.feature.present.3; library call provides a convenient
192      interface for user applications to test the presence of
193      features.</para>
194
195    <para arch="amd64">The &os; kernel now has support for large
196      memory page mappings (<quote>superpages</quote>).</para>
197
198    <para arch="amd64,i386,ia64,powerpc" role="merged">The ULE
199      scheduler is now the default process scheduler
200      in <filename>GENERIC</filename> kernels.</para>
201
202    <para arch="amd64,i386" revision="240135">Support was added for
203      the new Intel on-CPU Bull Mountain random number
204      generator, found on IvyBridge and supposedly later CPUs,
205      accessible with RDRAND instruction.</para>
206
207    <sect3 xml:id="kernel-virtualization">
208      <title>Virtualization support</title>
209      <para arch="amd64" revision="245652">The BSD Hypervisor, &man.bhyve.8; is included
210        with &os;.  &man.bhyve.8; requires Intel CPUs with VT-x and Extended Page Table (EPT)
211        support. These features are on all Nehalem models and beyond
212        (e.g. Nehalem and newer), but not on the lower-end Atom CPUs.</para> 
213  
214      <para revision="227652">&man.virtio.4; support has been added.  &man.virtio.4; is the
215        name for the paravirtualization interface developed for the Linux KVM, but
216        since adopted to other virtual machine hypervisors (with the notable exception of Xen).
217        This work brings in a BSD-licensed clean-room implementation of the virtio kernel drivers
218        for disk IO (&man.virtio_blk.4; and &man.virtio_scsi.4;), network IO (&man.vtnet.4;),
219        memory ballooning (&man.virtio_balloon.4;), and PCI.
220        Tested with on Qemu/KVM, VirtualBox, and &man.bhyve.4;.</para>
221  
222      <para arch="amd64,i386" revision="255524">Paravirtualized drivers which
223        support Microsoft Hyper-V have been imported and made
224        part of the amd64 GENERIC kernel.  For i386, these drivers are not part of
225        GENERIC, so the following lines must be added to
226        <filename>/boot/loader.conf</filename> to load these drivers:
227        <programlisting>hv_ata_pci_disengage_load="YES"
228hv_netsvc_load="YES"
229hv_utils_load="YES"
230hv_vmbus_load="YES"</programlisting>  Alternatively, the Hyper-V drivers can be added to the i386
231        kernel by adding <literal>device hyperv</literal> to the kernel config, and then
232        recompiling the kernel.  Please refer to:
233        <link xlink:href="http://wiki.freebsd.org/HyperV">FreeBSD and Microsoft Windows Server Hyper-V support</link>
234        for full instructions on how to set up Hyper-V support under FreeBSD.</para>
235
236      <para revision="254738">The &man.vmx.4; driver has been added.
237        &man.vmx.4; is a VMware VMXNET3 ethernet driver ported from
238        OpenBSD.</para>
239
240      <para revision="255744" arch="amd64,i386">Xen PVHVM virtualization is now
241        part of the GENERIC kernel.</para>
242
243    </sect3>
244
245    <sect3 xml:id="kernel-arm">
246      <title>ARM support</title>
247
248      <para revision="239922">Raspberry PI support has been added.
249        Refer to these <link xlink:href="http://kernelnomicon.org/?p=164">setup instructions</link>
250        and <link xlink:href="http://www.raspberrypi.org/quick-start-guide">quick start
251        guide</link>.</para>
252  
253      <para revision="253396">The default ABI on ARM is now the ARM EABI. This brings a number of
254        improvements and allows future support for VFP and Thumb-2.</para> 
255  
256      <para revision="239268">ARM support has been greatly improved, including support
257        for ARMv6 and ARMv7, SMP and thread-local storage (TLS).
258        Additionally support for some newer SoC like the MV78x60 and OMAP4 was added.
259        See <link xlink:href="http://lists.freebsd.org/pipermail/freebsd-arm/2012-August/003757.html">this announcement</link>
260        for further details.</para>
261  
262      <para revision="254918">Superpages support on ARM has been added.  Superpages support
263        provides improved performance and scalability by allowing TLB
264        translations to dynamically cover large physical memory regions.
265        All ARMv6 and ARMv7-based platforms can take advantage of this feature.
266        See <link xlink:href="https://wiki.freebsd.org/ARMSuperpages">this page</link>
267        for further details.</para>
268
269    </sect3>
270
271    <sect3 xml:id="boot">
272      <title>Boot Loader Changes</title>
273
274      <para arch="amd64,i386" role="merged">The BTX kernel used by the boot
275	loader has been changed to invoke BIOS routines from real
276	mode.  This change makes it possible to boot &os; from USB
277	devices.</para>
278
279      <para arch="amd64,i386" role="merged">A new gptboot boot loader has
280        been added to support booting from a GPT labeled disk.  A
281        new <command>boot</command> command has been added to
282        &man.gpt.8;, which makes a GPT disk bootable by writing the
283        required bits of the boot loader, creating a new boot
284        partition if required.</para>
285
286    </sect3>
287
288    <sect3 xml:id="proc">
289      <title>Hardware Support</title>
290
291      <para role="merged">The &man.cmx.4; driver, a driver for Omnikey CardMan 4040
292        PCMCIA smartcard readers, has been added.</para>
293
294      <para>The &man.syscons.4; driver now supports Colemak keyboard layout.</para>
295
296      <para role="merged">The &man.uslcom.4; driver, a driver for Silicon
297        Laboratories CP2101/CP2102-based USB serial adapters, has been
298        imported from OpenBSD.</para>
299
300      <sect4 xml:id="mm">
301	<title>Multimedia Support</title>
302
303        <para revision="240609">Support for version 2.0 of the USB Audio reference design
304          has been added. New devices should support higher bandwidth,
305          increased sampling frequency and wider dynamic range.</para>
306
307      </sect4>
308
309      <sect4 xml:id="net-if">
310	<title>Network Interface Support</title>
311
312	<para>The &man.ale.4; driver has been added to provide support
313	  for Atheros AR8121/AR8113/AR8114 Gigabit/Fast Ethernet controllers.</para>
314
315	<para>The &man.em.4; driver has been split into two drivers
316	  with some common parts.  The &man.em.4; driver will continue
317	  to support adapters up to the 82575, as well as new
318	  client/desktop adapters.  A new &man.igb.4; driver
319	  will support new server adapters.</para>
320
321	<para>The &man.jme.4; driver has been added to provide support
322	  for PCIe network adapters based on JMicron JMC250 Gigabit
323	  Ethernet and JMC260 Fast Ethernet controllers.</para>
324
325	<para>The &man.malo.4; driver has been added to provide
326	  support for Marvell Libertas 88W8335 based PCI network
327	  adapters.</para>
328
329	<para>The firmware for the &man.mxge.4; driver has been
330	  updated from 1.4.25 to 1.4.29.</para>
331
332	<para>The &man.sf.4; driver has been overhauled to improve its
333	  performance and to add support for checksum offloading.  It
334	  should also work on all architectures.</para>
335
336	<para>The &man.re.4; driver has been overhauled to fix a
337	  number of issues.  This driver now has Wake On LAN (WOL)
338	  support.</para>
339
340	<para>The &man.vr.4; driver has been overhauled to fix a
341	  number of outstanding issues.  It also now works on all
342	  architectures.</para>
343
344	<para arch="amd64,i386" role="merged">The &man.wpi.4; driver has
345	  been updated to include a number of stability fixes.</para>
346
347	<para revision="248925">The &man.cxgbe.4; driver has been updated to support
348	  40G/10G Ethernet NICs based on Chelsio's Terminator 5 (T5) ASIC.</para>
349
350	<para revision="256694">The &man.if_cxgbe.4; driver has been added.  This is an
351	  experimental iWARP/RDMA driver
352	  (kernel verbs only) for Chelsio's T4 and T5 based cards.</para>
353
354	<para revision="255932">The Open Fabrics Enterprise Distribution (OFED) and
355	  OFED Infiniband core has been
356	  updated to the same version as supplied by Linux version 3.7</para>
357
358	<para revision="255932">The Mellanox Infiniband driver has been updated to firmware
359	  version 2.30.3200 for ConnectX3 NICs.  Support has been added for ConnectX3 VPI NICs, where
360	  each port can be used as Infiniband 56 GB/s or Ethernet 40 GB/s.  Support has been added
361	  for dynamically loading kernel modules for Infiniband core (ibcore) and
362	  IP over Infiniband (ipoib).</para>
363
364	<para revision="227614">&man.netmap.4; has been added.  &man.netmap.4; is a framework for
365          high-performance direct-to-hardware packet IO, offering low latency and high PPS
366          rates to userland applications while bypassing any kernel-side packet processing.
367          With &man.netmap.4; it is trivially possible to fully saturate a 10 Gbps network interface with
368          minimal packet sizes.  For more information, see:
369          <link xlink:href="http://info.iet.unipi.it/~luigi/netmap/">Netmap Project</link>.</para> 
370
371      </sect4>
372    </sect3>
373
374    <sect3 xml:id="net-proto">
375      <title>Network Protocols</title>
376
377      <para revision="228571">&man.carp.4; has been rewritten to make addresses
378        more sane from the viewpoint of routing daemons such as
379        quagga/zebra. It also brings support for a single redundant
380        address on the subnet (carpdev), switching state with
381        &man.ifconfig.8;, better locking and using modern kernel
382        interfaces to allocate multicast memberships.
383        Configuration of the CARP protocol via &man.ifconfig.8; has changed, as well as format
384	of CARP events submitted to &man.devd.8; has changed. See &man.carp.4;
385	for more information. The arpbalance feature of &man.carp.4; is currently
386	not supported anymore.</para>
387
388      <para revision="240233">The &man.pf.4; firewall now supports fine-grain locking
389        and better utilization on multi-cpu machines resulting in
390        significant improvements in performance.</para>
391
392      <para revision="250700">Support for up to 65536 routing tables has been
393        introduced.</para>
394
395      <para revision="248552">Support for setting/matching differentiated services
396        codepoints (DSCP) in IP header has been added to
397        &man.ipfw.8;.</para>
398
399    </sect3>
400
401    <sect3 xml:id="disks">
402      <title>Disks and Storage</title>
403
404      <para role="merged">The &man.aac.4; driver now supports volumes larger than
405        2TB in size.</para>
406
407      <para>The &man.ata.4; driver now supports a spindown command for
408        disks; after a configurable amount of time, if no requests
409        have been received for a disk, the disk will be spun down
410        until the next request.  The &man.atacontrol.8; utility now
411        supports a <command>spindown</command> command to configure
412        this feature.</para>
413
414      <para role="merged">The &man.hptrr.4; driver has been updated to version 1.2
415        from Highpoint.</para>
416
417      <para revision="240616">&man.nvme.4; has been added and provides NVM Express support.
418        NVM Express is an optimized register interface, command set and feature set of
419        PCI Express (PCIe)-based Solid-State Drives (SSDs).  For more information,
420        see <link xlink:href="http://http://www.nvmexpress.org/">nvmexpress.org</link>.</para>
421
422    </sect3>
423
424    <sect3 xml:id="fs">
425      <title>File Systems</title>
426
427      <para revision="255570">A new kernel-based iSCSI target and initiator has been
428        added</para>
429
430      <para revision="243246">UFS filesystems can now be enlarged with &man.growfs.8; while
431        mounted read-write. This is especially useful for virtual
432        machines, allowing the addition of more harddrive space without
433        interruption of service.</para>
434
435      <para revision="241519">A state of the art FUSE implementation is now part of the
436        base system. It allows the use of nearly all fusefs file
437        systems</para>
438
439      <sect4 xml:id="fs-zfs">
440	<title>ZFS</title>
441
442        <para revision="">&man.bsdinstall.8; now supports installing
443          ZFS on the root file system.  It includes a single configuration menu
444          that allows you to select all of the required details, including
445          which drives to use, what ZFS RAID level to use (taking into consideration
446          the selected number of drives), GPT or MBR, GELI encryption, forcing 4K sectors,
447          pool name, etc.</para>
448
449        <para revision="240868">TRIM support has been added for
450          ZFS.</para>
451
452        <para revision="246586">Support for the high performance LZ4 compression algorithm
453          has been added to ZFS. LZ4 is usually faster and can achieve a
454          higher compression ratio than LZJB, the default compression
455          algorithm</para>
456
457        <para revision="252140">Support for L2ARC compression has been added to ZFS.</para>
458
459        <para revision="243524">The zio nop-write improvement from Illumos
460          was imported into &os;. To reduce I/O, nop-write skips overwriting
461          data if the checksum (cryptographically secure) of new data
462          matches the checksum of existing data. It also saves space if
463          snapshots are in use.  This improvement only works only on
464          datasets with enabled compression, disabled deduplication and
465          sha256 checksums.</para>
466
467        <para>ZFS will now compare the checksums of incoming writes to
468          the checksum of the existing on-disk data and avoid issuing any
469          write I/O for data that has not changed. This will reduce I/O
470          as well as space usage because if the old block is referenced
471          by a snapshot, both copies of the block are kept even though
472          both contain the same data.</para>
473
474      </sect4>
475
476    </sect3>
477
478  </sect2>
479
480  <sect2 xml:id="userland">
481    <title>Userland Changes</title>
482
483   <para revision="255321">On platforms where &man.clang.1; is the default
484      system compiler, (such as i386, amd64, arm) GCC and GNU libstdc++ are no
485      longer built by default.  &man.clang.1; and libc++ from LLVM are used on
486      these platforms by instead.  GCC 4.2.1 and libstdc++ are still built
487      and used by default on pc98 and all other platforms where &man.clang.1;
488      is not the default system compiler.
489   </para>
490
491   <para revision="251662">&man.clang.1; and llvm have been updated to
492     version 3.3 release.  Please refer to
493     <link xlink:href="http://llvm.org/releases/3.3/tools/clang/docs/ReleaseNotes.html">
494     Clang 3.3 Release Notes.</link></para>
495
496    <para role="merged" revision="255949">BIND has been replaced by &man.unbound.8; for
497      local dns resolution in the base system.  With this change, nslookup
498      and dig are no longer a part of the base system.  Users should
499      instead use &man.host.1; and &man.drill.1; Alternatively,
500      nslookup and dig can be obtained by installing the
501      dns/bind-tools port.</para>
502
503    <para revision="225937">sysinstall has been removed from the base system.
504      Auxiliary libraries and tools used by sysinstall such as libdisk, libftpio,
505      and sade have also been removed.  sysinstall has been replaced by
506      &man.bsdinstall.8; and &man.bsdconfig.8;.</para>
507
508    <para revision="256106">&man.freebsd-version.1; has been added.  This tool
509      makes a best effort to determine the version and patch level of
510      the installed kernel and userland.</para>
511
512    <para revision="255191">GNU patch has been removed from the base system, and replaced
513      by a BSD-licensed &man.patch.1; program.</para>
514
515    <para revision="241511">GNU sort has been removed from the base system, and replaced
516      by a BSD-licensed &man.sort.1; program.</para>
517
518    <para revision="235723">Berkely yacc (byacc) has been imported
519      from <link xlink:href="http://invisible-island.net/byacc/">invisible island</link>.
520      This brings bison compatibilities to &man.yacc.1; while preserving full
521      backwards compatibility with previous version of &man.yacc.1;.</para>
522
523    <para revision="250881">&man.lex.1; has been replaced by flex 2.5.37</para>
524
525    <para revision="250699">&man.make.1; has been replaced with the 
526      "Portable" BSD make tool (bmake) from NetBSD.</para>
527
528    <para role="merged">The &man.adduser.8; utility now supports
529      a <option>-M</option> option to set the mode of a new user's
530      home directory.</para>
531
532    <para>BSD-licensed versions of &man.ar.1; and &man.ranlib.1;,
533      based on <filename>libarchive</filename>, have replaced the GNU
534      Binutils versions of these utilities.</para>
535
536    <para>BSD-licensed versions of &man.bc.1; and &man.dc.1; have
537      replaced their GNU counterparts.</para>
538
539    <para role="merged">&man.chflags.1; now supports a <option>-v</option> flag for
540      verbose output and a <option>-f</option> flag to ignore errors
541      with the same semantics as (for example)
542      &man.chmod.1;.</para>
543
544    <para>For compatibility with other implementations, &man.cp.1; now
545      supports a <option>-a</option> flag, which is equivalent to
546      specifying the <option>-RrP</option> flags.</para>
547
548    <para>BSD-licensed version of &man.cpio.1; based on
549      <filename>libarchive</filename>, has replaced the GNU cpio.
550      Note that the GNU cpio is still installed as
551      <filename>gcpio</filename>.</para>
552
553    <para>The &man.env.1; program now supports <option>-u
554      <replaceable>name</replaceable></option>
555      which will completely unset the given variable
556      <replaceable>name</replaceable> by removing it from the environment,
557      instead of just setting it to a null value.</para>
558
559    <para>The &man.fdopendir.3; library function has been added.</para>
560
561    <para role="merged">The &man.fetch.3; library now support HTTP 1.1
562      If-Modified-Since behavior.  The &man.fetch.1; program now
563      supports <option>-i <replaceable>filename</replaceable></option>
564      which will only download the specified HTTP URL if the content
565      is newer than <replaceable>filename</replaceable>.</para>
566
567    <para>&man.find.1; has been enhanced by the addition of a number
568      of primaries that were present in GNU find but not &os;
569      &man.find.1;.</para>
570
571    <para>&man.kgdb.1; now supports a new <command>add-kld</command>
572      command to make it easier to debug crash dumps with kernel
573      modules.</para>
574
575    <para>The &man.ls.1; program now supports a <option>-D</option>
576      option to specify a date format string to be used with the long
577      format (<option>-l</option>) output.</para>
578
579    <para>&man.nc.1; now supports a <option>-O</option> switch to
580      disable the use of TCP options.</para>
581
582    <para>&man.nc.1;'s <option>-o</option> switch has been deprecated.
583      It will be removed in a future release.</para>
584
585    <para>The &man.ping6.8; utility now returns <literal>2</literal>
586      when the packet transmission was successful but no responses
587      were received (this is the same behavior as &man.ping.8;).
588      It returned a non-zero value before this change.</para>
589
590    <para>The &man.procstat.1; utility has been added to display
591      detailed information about processes.</para>
592
593    <para role="merged">The &man.realpath.1; utility now supports
594      a <option>-q</option> flag to suppress warnings; it now also
595      accepts multiple paths on its command line.</para>
596
597    <para>&man.sh.1; has many bug fixes, some new features, and will now
598      refuse to parse some invalid scripts.  Additionally, it now
599      has filename completion and defaults to the &quot;emacs&quot; editing
600      mode.</para>
601
602    <para>The &man.split.1; utility now supports a <option>-n</option>
603      flag to split a file into a certain number of chunks.</para>
604
605    <para>The &man.tar.1; utility now supports a <option>-Z</option>
606      flag to enable &man.compress.1;-style
607      compression/decompression.</para>
608
609    <para>The &man.tar.1; utility now supports a
610      <option>--numeric-owner</option> flag to ignore user/group names
611      on create and extract.</para>
612
613    <para>The &man.tar.1; utility now supports an
614      <option>-S</option> flag to sparsify files on extraction.</para>
615
616    <para>The &man.tar.1; utility now supports a <option>-s</option>
617      flag to substitute filenames based on the specified regular
618      expression.</para>
619
620    <para>The &man.tcgetsid.3; library function has been added to
621      return the process group ID for the session leader for the
622      controlling terminal.  It is defined in IEEE Std 1003.1-2001
623      (POSIX).</para>
624
625    <para>&man.top.1; now supports a <option>-P</option> flag to
626      provide per-CPU usage statistics.</para>
627
628    <para>&man.zdump.8; is now working properly on 64 bit architectures.
629      </para>
630
631    <para>&man.traceroute.8; now has the ability to print the AS
632      number for each hop with the new <option>-a</option> switch; a
633      new <option>-A</option> option allows selecting a particular
634      WHOIS server.</para>
635
636    <para>&man.traceroute6.8; now supports a <option>-U</option> flag
637      to send probe packets with no upper-layer protocol, rather than
638      the usual UDP probe packets.</para>
639
640    <sect3 xml:id="rc-scripts">
641      <title><filename>/etc/rc.d</filename> Scripts</title>
642
643      <para>The followoing &man.rc.8; scripts have been added:</para>
644
645      <informaltable frame="none" pgwide="0">
646	<tgroup cols="2">
647	  <colspec colwidth="1*" />
648	  <colspec colwidth="1*" />
649	  <thead>
650	    <row>
651	      <entry>&man.rc.8; Script</entry>
652	      <entry>Function</entry>
653	    </row>
654	  </thead>
655
656	  <tbody>
657	    <row>
658	      <entry><filename>ctld</filename></entry>
659	      <entry><para>iSCSI target daemon startup
660		  script</para></entry>
661	    </row>
662	    <row>
663	      <entry><filename>iscsictl</filename></entry>
664	      <entry><para>iSCSI initiator management utility
665		startup script</para></entry>
666	    </row>
667	    <row>
668	      <entry><filename>iscsid</filename></entry>
669	      <entry><para>iSCSI initiatior daemon startup
670		script</para></entry>
671	    </row>
672	    <row>
673	      <entry><filename>kfd</filename></entry>
674	      <entry><para>Kerberos ticket forwarding daemon
675		startup script</para></entry>
676	    </row>
677	    <row>
678	      <entry><filename>local_unbound</filename></entry>
679	      <entry><para>Unbound startup script for the local
680		caching resolver</para></entry>
681	    </row>
682	    <row>
683	      <entry><filename>postrandom</filename></entry>
684	      <entry><para>Generates a new entropy file at system
685		boot</para></entry>
686	    </row>
687	    <row>
688	      <entry><filename>swap</filename></entry>
689	      <entry><para>Replaces <filename>swap1</filename>;
690		enable swap at system boot</para></entry>
691	    </row>
692	    <row>
693	      <entry><filename>swaplate</filename></entry>
694	      <entry><para>Enables swap with <quote>late</quote>
695		set at system boot</para></entry>
696	    </row>
697	    <row>
698	      <entry><filename>utx</filename></entry>
699	      <entry><para>User accounting database startup and
700		shutdown script</para></entry>
701	    </row>
702	  </tbody>
703	</tgroup>
704      </informaltable>
705
706      <para>The following &man.rc.8; scripts have been removed:</para>
707
708      <informaltable frame="none" pgwide="0">
709	<tgroup cols="2">
710	  <colspec colwidth="1*" />
711	  <thead>
712	    <row>
713	      <entry>&man.rc.8; Script</entry>
714	      <entry><para>Reason</para></entry>
715	    </row>
716	  </thead>
717
718	  <tbody>
719	    <row>
720	      <entry><filename>encswap</filename></entry>
721	      <entry><para>Replaced by <filename>swap</filename> and
722		<filename>swaplate</filename></para></entry>
723	    </row>
724	    <row>
725	      <entry><filename>named</filename></entry>
726	      <entry><para>Removed with
727		  <application>BIND</application></para></entry>
728	    </row>
729	    <row>
730	      <entry><filename>swap1</filename></entry>
731	      <entry><para>Replaced by <filename>swap</filename> and
732		<filename>swaplate</filename></para></entry>
733	    </row>
734	  </tbody>
735	</tgroup>
736      </informaltable>
737    </sect3>
738  </sect2>
739
740  <sect2 xml:id="contrib">
741    <title>Contributed Software</title>
742
743    <para revision="251300">&man.jemalloc.3; has been updated to 3.4.0.
744      See <link xlink:href="http://www.facebook.com/jemalloc/">this link</link>.
745      for more details.</para>
746
747    <para role="merged"><application>AMD</application> has been updated from 6.0.10
748      to 6.1.5.</para>
749
750    <para role="merged"><application>awk</application> has been updated from 1 May
751      2007 release to the 23 October 2007 release.</para>
752
753    <para role="merged"><application>bzip2</application> has been updated from 1.0.4
754      to 1.0.5.</para>
755
756    <para revision="251794"><application>CVS</application> has been removed from the
757    base system, but is still available from ports</para>
758
759    <para revision="251886">Subversion has been imported into the base system and
760      is installed as <application>svnlite</application>.  <application>svnlite</application>
761      should only be used for checking out &os; source and committing, and does not
762      replace the full Subversion port.</para>
763
764    <para revision="234449"><application>file</application> has been updated to 5.11.</para>
765
766    <para revision="252726"><application>hostapd</application> has been
767      updated from 0.5.8 to 0.5.10.</para>
768
769    <para><application>IPFilter</application> has been updated to 5.1.2.</para>
770
771    <para revision="250592"><application>less</application> has been updated to
772      v458.</para>
773
774    <para><application>ncurses</application> has been updated from
775      to 5.7-20081102.</para>
776
777    <para role="merged"><application>OpenSSH</application> has been updated
778      to 6.4.</para>
779
780    <para revision="236109"><application>OpenPAM</application> has been updated to
781      the Micrampelis release.</para>
782
783    <para role="merged"><application>sendmail</application> has been updated from
784      8.14.1 to 8.14.7.</para>
785
786    <para role="merged">The timezone database has been updated from
787      the <application>tzdata2008h</application> release to
788      the <application>tzdata2009m</application> release.</para>
789
790    <para>The stdtime part of libc, &man.zdump.8; and &man.zic.8;
791      have been updated from the <application>tzcode2004a</application>
792      release to the <application>tzcode2009h</application> release.
793      If you have upgraded from source or via the &man.freebsd-update.8;,
794      then please run &man.tzsetup.8; to install a new /etc/localtime.
795      </para>
796
797    <para revision="252726"><application>WPA Supplicant</application> has been
798      updated to 2.0.</para>
799
800    <para role="merged"><application>xz</application> has been updated
801      from snapshot as of 12 April 2010 to 5.0.0.</para>
802
803    <para revision="258231" role="merged">&man.nvi.1; has been updated to 2.1.2.</para>
804
805    <para revision="254225">&man.nvi.1; supports wide character locales.</para>
806
807  </sect2>
808
809  <sect2 xml:id="ports">
810    <title>Ports/Packages Collection Infrastructure</title>
811
812    <para revision="257444">The pkg_add, pkg_create, pkg_delete, pkg_info,
813      pkg_updating, and pkg_version utilities have been removed.
814      &man.pkg.7; must now be used to install binary packages.  &man.pkg.7;
815      is the next generation &os; package manager, also referred to as "pkgng".</para>
816
817  </sect2>
818
819  <sect2 xml:id="releng">
820    <title>Release Engineering and Integration</title>
821
822    <para role="merged">The supported version of
823      the <application>GNOME</application> desktop environment
824      (<package>x11/gnome2</package>) has been
825      updated from 2.20.1 to 2.22.</para>
826
827  </sect2>
828
829  <!--
830  <sect2 xml:id="doc">
831    <title>Documentation</title>
832
833    <para/>
834
835  </sect2>
836  -->
837</sect1>
838
839<sect1 xml:id="upgrade">
840  <title>Upgrading from previous releases of &os;</title>
841
842  <para arch="amd64,i386">Beginning with &os; 6.2-RELEASE,
843    binary upgrades between RELEASE versions (and snapshots of the
844    various security branches) are supported using the
845    &man.freebsd-update.8; utility.  The binary upgrade procedure will
846    update unmodified userland utilities, as well as unmodified GENERIC or
847    SMP kernels distributed as a part of an official &os; release.
848    The &man.freebsd-update.8; utility requires that the host being
849    upgraded have Internet connectivity.</para>
850
851  <para>Source-based upgrades (those based on recompiling the &os;
852    base system from source code) from previous versions are
853    supported, according to the instructions in
854    <filename>/usr/src/UPDATING</filename>.</para>
855
856  <important>
857    <para>Upgrading &os; should, of course, only be attempted after
858      backing up <emphasis>all</emphasis> data and configuration
859      files.</para>
860  </important>
861</sect1>
862</article>
863