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