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