article.xml revision 259797
1286441Srpaulo<?xml version="1.0" encoding="iso-8859-1"?> 2286441Srpaulo<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V5.0-Based Extension//EN" 3286441Srpaulo "../../../share/xml/freebsd50.dtd" [ 4286441Srpaulo<!ENTITY % release PUBLIC "-//FreeBSD//ENTITIES Release Specification//EN" "release.ent"> 5286441Srpaulo %release; 6286441Srpaulo]> 7286441Srpaulo<article xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0"> 8286441Srpaulo<info><title>&os; &release.current; Release Notes</title> 9286441Srpaulo 10286441Srpaulo 11286441Srpaulo <author><orgname>The &os; Project</orgname></author> 12286441Srpaulo 13286441Srpaulo <pubdate>$FreeBSD: releng/10.0/release/doc/en_US.ISO8859-1/relnotes/article.xml 259797 2013-12-23 22:31:40Z gjb $</pubdate> 14286441Srpaulo 15286441Srpaulo <copyright> 16286441Srpaulo <year>2000</year> 17286441Srpaulo <year>2001</year> 18286441Srpaulo <year>2002</year> 19286441Srpaulo <year>2003</year> 20286441Srpaulo <year>2004</year> 21286441Srpaulo <year>2005</year> 22286441Srpaulo <year>2006</year> 23286441Srpaulo <year>2007</year> 24286441Srpaulo <year>2008</year> 25286441Srpaulo <year>2009</year> 26286441Srpaulo <year>2010</year> 27286441Srpaulo <year>2011</year> 28286441Srpaulo <year>2012</year> 29286441Srpaulo <year>2013</year> 30286441Srpaulo <holder role="mailto:doc@FreeBSD.org">The &os; Documentation Project</holder> 31286441Srpaulo </copyright> 32286441Srpaulo 33286441Srpaulo <legalnotice xml:id="trademarks" role="trademarks"> 34286441Srpaulo &tm-attrib.freebsd; 35286441Srpaulo &tm-attrib.ibm; 36286441Srpaulo &tm-attrib.ieee; 37286441Srpaulo &tm-attrib.intel; 38286441Srpaulo &tm-attrib.sparc; 39286441Srpaulo &tm-attrib.general; 40286441Srpaulo </legalnotice> 41286441Srpaulo 42286441Srpaulo <abstract> 43286441Srpaulo <para>The release notes for &os; &release.current; contain a summary 44286441Srpaulo of the changes made to the &os; base system on the 45286441Srpaulo &release.branch; development line. 46286441Srpaulo This document lists applicable security advisories that were issued since 47286441Srpaulo the last release, as well as significant changes to the &os; 48286441Srpaulo kernel and userland. 49286441Srpaulo Some brief remarks on upgrading are also presented.</para> 50286441Srpaulo </abstract> 51286441Srpaulo</info> 52286441Srpaulo 53286441Srpaulo<sect1 xml:id="intro"> 54286441Srpaulo <title>Introduction</title> 55286441Srpaulo 56286441Srpaulo <para>This document contains the release notes for &os; 57286441Srpaulo &release.current;. It 58286441Srpaulo describes recently added, changed, or deleted features of &os;. 59286441Srpaulo It also provides some notes on upgrading 60286441Srpaulo from previous versions of &os;.</para> 61286441Srpaulo 62286441Srpaulo <para>The latest, up-to-date version of the release notes are 63286441Srpaulo available online at <uri 64286441Srpaulo xlink:href="&release.url;10.0R/relnotes.html">&release.url;10.0R/relnotes.html</uri>.</para> 65286441Srpaulo 66286441Srpaulo <para releasetype="current">The &release.type; distribution to which these release notes 67286441Srpaulo apply represents the latest point along the &release.branch; development 68286441Srpaulo branch since &release.branch; was created. Information regarding pre-built, binary 69286441Srpaulo &release.type; distributions along this branch 70286441Srpaulo can be found at <uri xlink:href="&release.url;">&release.url;</uri>.</para> 71286441Srpaulo 72286441Srpaulo <para releasetype="snapshot">The &release.type; distribution to which these release notes 73286441Srpaulo apply represents a point along the &release.branch; development 74286441Srpaulo branch between &release.prev; and the future &release.next;. 75286441Srpaulo Information regarding 76286441Srpaulo pre-built, binary &release.type; distributions along this branch 77286441Srpaulo can be found at <uri xlink:href="&release.url;">&release.url;</uri>.</para> 78286441Srpaulo 79286441Srpaulo <para releasetype="release">This distribution of &os; &release.current; is a 80286441Srpaulo &release.type; distribution. It can be found at <uri xlink:href="&release.url;">&release.url;</uri> or any of its mirrors. More 81286441Srpaulo information on obtaining this (or other) &release.type; 82286441Srpaulo distributions of &os; can be found in the <link xlink:href="&url.books.handbook;/mirrors.html"><quote>Obtaining 83286441Srpaulo &os;</quote> appendix</link> to the <link xlink:href="&url.books.handbook;/">&os; 84286441Srpaulo Handbook</link>.</para> 85286441Srpaulo 86286441Srpaulo <para>All users are encouraged to consult the release errata before 87286441Srpaulo installing &os;. The errata document is updated with 88286441Srpaulo <quote>late-breaking</quote> information discovered late in the 89286441Srpaulo release cycle or after the release. Typically, it contains 90286441Srpaulo information on known bugs, security advisories, and corrections to 91286441Srpaulo documentation. An up-to-date copy of the errata for &os; 92286441Srpaulo &release.current; can be found on the &os; Web site.</para> 93286441Srpaulo 94286441Srpaulo</sect1> 95286441Srpaulo 96286441Srpaulo<sect1 xml:id="new"> 97286441Srpaulo <title>What's New</title> 98286441Srpaulo 99286441Srpaulo <para>This section describes 100286441Srpaulo the most user-visible new or changed features in &os; 101286441Srpaulo since &release.prev;. 102286441Srpaulo In general, changes described here are unique to the &release.branch; 103286441Srpaulo branch unless specifically marked as &merged; features. 104286441Srpaulo </para> 105286441Srpaulo 106286441Srpaulo <para>Typical release note items 107286441Srpaulo document recent security advisories issued after 108286441Srpaulo &release.prev;, 109286441Srpaulo new drivers or hardware support, new commands or options, 110286441Srpaulo major bug fixes, or contributed software upgrades. They may also 111286441Srpaulo list changes to major ports/packages or release engineering 112286441Srpaulo practices. Clearly the release notes cannot list every single 113286441Srpaulo change made to &os; between releases; this document focuses 114286441Srpaulo primarily on security advisories, user-visible changes, and major 115286441Srpaulo architectural improvements.</para> 116286441Srpaulo 117286441Srpaulo <sect2 xml:id="security"> 118286441Srpaulo <title>Security Advisories</title> 119286441Srpaulo 120286441Srpaulo <para/> 121286441Srpaulo 122286441Srpaulo </sect2> 123286441Srpaulo 124286441Srpaulo <sect2 xml:id="kernel"> 125286441Srpaulo <title>Kernel Changes</title> 126286441Srpaulo 127286441Srpaulo <para revision="248508">The use of unmapped VMIO buffers eliminates the need to perform 128286441Srpaulo TLB shootdown for mapping on buffer creation and reuse, greatly reducing the 129286441Srpaulo amount of IPIs for shootdown on big-SMP machines and eliminating up to 25-30% 130286441Srpaulo of the system time on i/o intensive workloads.</para> 131286441Srpaulo 132286441Srpaulo <para arch="amd64" revision="254466">The maximum amount of memory the &os; kernel 133286441Srpaulo can address has been increased from 1TB to 4TB.</para> 134286441Srpaulo 135286441Srpaulo <para>A new &man.cpuset.2; API has been added 136286441Srpaulo for thread to CPU binding and CPU resource grouping and 137286441Srpaulo assignment. The &man.cpuset.1; userland utility has been added 138286441Srpaulo to allow manipulation of processor sets.</para> 139286441Srpaulo 140286441Srpaulo <para role="merged">The &man.ddb.4; kernel debugger now has an output capture 141286441Srpaulo facility. Input and output from &man.ddb.4; can now be captured 142286441Srpaulo to a memory buffer for later inspection using &man.sysctl.8; or 143286441Srpaulo a textdump. The new <command>capture</command> command controls 144286441Srpaulo this feature.</para> 145286441Srpaulo 146286441Srpaulo <para role="merged">The &man.ddb.4; debugger now supports a simple scripting 147286441Srpaulo facility, which supports a set of named scripts consisting of a 148286441Srpaulo set of &man.ddb.4; commands. These commands can be managed from 149286441Srpaulo within &man.ddb.4; or with the use of the new &man.ddb.8; 150286441Srpaulo utility. More details can be found in the &man.ddb.4; manual 151286475Srpaulo page.</para> 152286475Srpaulo 153286475Srpaulo <para role="merged">The kernel now supports a new textdump format of kernel 154286475Srpaulo dumps. A textdump provides higher-level information via 155286475Srpaulo mechanically generated/extracted debugging output, rather than a 156286475Srpaulo simple memory dump. This facility can be used to generate brief 157286475Srpaulo kernel bug reports that are rich in debugging information, but 158286475Srpaulo are not dependent on kernel symbol tables or precisely 159286475Srpaulo synchronized source code. More information can be found in the 160286475Srpaulo &man.textdump.4; manual page.</para> 161286475Srpaulo 162286441Srpaulo <para>Kernel support for M:N threading has been removed. While 163286475Srpaulo the KSE (Kernel Scheduled Entities) project was quite successful 164286441Srpaulo in bringing threading to FreeBSD, the M:N approach taken by the 165286441Srpaulo KSE library was never developed to its full potential. 166286441Srpaulo Backwards compatibility for applications using KSE threading 167286441Srpaulo will be provided via &man.libmap.conf.5; for dynamically linked 168286441Srpaulo binaries. The &os; Project greatly appreciates the work of 169286441Srpaulo &a.julian;, &a.deischen;, and &a.davidxu; on KSE support.</para> 170286441Srpaulo 171286441Srpaulo <para>The &os; kernel now exports information about certain kernel 172286441Srpaulo features via the <varname>kern.features</varname> sysctl tree. 173286441Srpaulo The &man.feature.present.3; library call provides a convenient 174286441Srpaulo interface for user applications to test the presence of 175286441Srpaulo features.</para> 176286441Srpaulo 177286441Srpaulo <para arch="amd64">The &os; kernel now has support for large 178286441Srpaulo memory page mappings (<quote>superpages</quote>).</para> 179286441Srpaulo 180286441Srpaulo <para arch="amd64,i386,ia64,powerpc" role="merged">The ULE 181286441Srpaulo scheduler is now the default process scheduler 182286441Srpaulo in <filename>GENERIC</filename> kernels.</para> 183286441Srpaulo 184286441Srpaulo <para arch="amd64,i386" revision="240135">Support was added for 185286441Srpaulo the new Intel on-CPU Bull Mountain random number 186286441Srpaulo generator, found on IvyBridge and supposedly later CPUs, 187286441Srpaulo accessible with RDRAND instruction.</para> 188286441Srpaulo 189286441Srpaulo <sect3 xml:id="kernel-virtualization"> 190286441Srpaulo <title>Virtualization support</title> 191286441Srpaulo <para arch="amd64" revision="245652">The BSD Hypervisor, &man.bhyve.8; is included 192286441Srpaulo with &os;. &man.bhyve.8; requires Intel CPUs with VT-x and Extended Page Table (EPT) 193286441Srpaulo support. These features are on all Nehalem models and beyond 194286441Srpaulo (e.g. Nehalem and newer), but not on the lower-end Atom CPUs.</para> 195286441Srpaulo 196286441Srpaulo <para revision="227652">&man.virtio.4; support has been added. &man.virtio.4; is the 197286441Srpaulo name for the paravirtualization interface developed for the Linux KVM, but 198286441Srpaulo since adopted to other virtual machine hypervisors (with the notable exception of Xen). 199286441Srpaulo This work brings in a BSD-licensed clean-room implementation of the virtio kernel drivers 200286441Srpaulo for disk IO (&man.virtio_blk.4; and &man.virtio_scsi.4;), network IO (&man.vtnet.4;), 201286441Srpaulo memory ballooning (&man.virtio_balloon.4;), and PCI. 202286441Srpaulo Tested with on Qemu/KVM, VirtualBox, and &man.bhyve.4;.</para> 203286441Srpaulo 204286441Srpaulo <para arch="amd64,i386" revision="255524">Paravirtualized drivers which 205286441Srpaulo support Microsoft Hyper-V have been imported and made 206286441Srpaulo part of the amd64 GENERIC kernel. For i386, these drivers are not part of 207286441Srpaulo GENERIC, so the following lines must be added to 208286441Srpaulo <filename>/boot/loader.conf</filename> to load these drivers: 209286441Srpaulo <programlisting>hv_ata_pci_disengage_load="YES" 210286441Srpaulohv_netsvc_load="YES" 211286441Srpaulohv_utils_load="YES" 212286441Srpaulohv_vmbus_load="YES"</programlisting> Alternatively, the Hyper-V drivers can be added to the i386 213286441Srpaulo kernel by adding <literal>device hyperv</literal> to the kernel config, and then 214286441Srpaulo recompiling the kernel.</para> 215286441Srpaulo 216286441Srpaulo <para revision="254738">The &man.vmx.4; driver has been added. 217286441Srpaulo &man.vmx.4; is a VMware VMXNET3 ethernet driver ported from 218286441Srpaulo OpenBSD.</para> 219286441Srpaulo 220286441Srpaulo <para revision="255744" arch="amd64,i386">Xen PVHVM virtualization is now 221286441Srpaulo part of the GENERIC kernel.</para> 222286441Srpaulo 223286441Srpaulo </sect3> 224286441Srpaulo 225286441Srpaulo <sect3 xml:id="kernel-arm"> 226286441Srpaulo <title>ARM support</title> 227286441Srpaulo 228286441Srpaulo <para revision="239922">Raspberry PI support has been added. 229286441Srpaulo Refer to these <link xlink:href="http://kernelnomicon.org/?p=164">setup instructions</link> 230286441Srpaulo and <link xlink:href="http://www.raspberrypi.org/quick-start-guide">quick start 231286441Srpaulo guide</link>.</para> 232286441Srpaulo 233286441Srpaulo <para revision="253396">The default ABI on ARM is now the ARM EABI. This brings a number of 234286441Srpaulo improvements and allows future support for VFP and Thumb-2.</para> 235286441Srpaulo 236286441Srpaulo <para revision="239268">ARM support has been greatly improved, including support 237286441Srpaulo for ARMv6 and ARMv7, SMP and thread-local storage (TLS). 238286441Srpaulo Additionally support for some newer SoC like the MV78x60 and OMAP4 was added. 239286441Srpaulo See <link xlink:href="http://lists.freebsd.org/pipermail/freebsd-arm/2012-August/003757.html">this announcement</link> 240286441Srpaulo for further details.</para> 241286441Srpaulo 242286441Srpaulo <para revision="254918">Superpages support on ARM has been added. Superpages support 243286441Srpaulo provides improved performance and scalability by allowing TLB 244286441Srpaulo translations to dynamically cover large physical memory regions. 245286441Srpaulo All ARMv6 and ARMv7-based platforms can take advantage of this feature. 246286441Srpaulo See <link xlink:href="https://wiki.freebsd.org/ARMSuperpages">this page</link> 247286441Srpaulo for further details.</para> 248286441Srpaulo 249286441Srpaulo </sect3> 250286441Srpaulo 251286441Srpaulo <sect3 xml:id="boot"> 252286441Srpaulo <title>Boot Loader Changes</title> 253286441Srpaulo 254286441Srpaulo <para arch="amd64,i386" role="merged">The BTX kernel used by the boot 255286441Srpaulo loader has been changed to invoke BIOS routines from real 256286441Srpaulo mode. This change makes it possible to boot &os; from USB 257286441Srpaulo devices.</para> 258286441Srpaulo 259286441Srpaulo <para arch="amd64,i386" role="merged">A new gptboot boot loader has 260286441Srpaulo been added to support booting from a GPT labeled disk. A 261286441Srpaulo new <command>boot</command> command has been added to 262286441Srpaulo &man.gpt.8;, which makes a GPT disk bootable by writing the 263286441Srpaulo required bits of the boot loader, creating a new boot 264286441Srpaulo partition if required.</para> 265286441Srpaulo 266286441Srpaulo </sect3> 267286441Srpaulo 268286441Srpaulo <sect3 xml:id="proc"> 269286441Srpaulo <title>Hardware Support</title> 270286441Srpaulo 271286441Srpaulo <para role="merged">The &man.cmx.4; driver, a driver for Omnikey CardMan 4040 272286441Srpaulo PCMCIA smartcard readers, has been added.</para> 273293100Savos 274286441Srpaulo <para>The &man.syscons.4; driver now supports Colemak keyboard layout.</para> 275286441Srpaulo 276286441Srpaulo <para role="merged">The &man.uslcom.4; driver, a driver for Silicon 277286441Srpaulo Laboratories CP2101/CP2102-based USB serial adapters, has been 278286441Srpaulo imported from OpenBSD.</para> 279286441Srpaulo 280286441Srpaulo <sect4 xml:id="mm"> 281286441Srpaulo <title>Multimedia Support</title> 282286441Srpaulo 283286441Srpaulo <para revision="240609">Support for version 2.0 of the USB Audio reference design 284286441Srpaulo has been added. New devices should support higher bandwidth, 285286441Srpaulo increased sampling frequency and wider dynamic range.</para> 286286441Srpaulo 287286441Srpaulo </sect4> 288286441Srpaulo 289286441Srpaulo <sect4 xml:id="net-if"> 290286441Srpaulo <title>Network Interface Support</title> 291286441Srpaulo 292286441Srpaulo <para>The &man.ale.4; driver has been added to provide support 293286441Srpaulo for Atheros AR8121/AR8113/AR8114 Gigabit/Fast Ethernet controllers.</para> 294286441Srpaulo 295286441Srpaulo <para>The &man.em.4; driver has been split into two drivers 296286441Srpaulo with some common parts. The &man.em.4; driver will continue 297286441Srpaulo to support adapters up to the 82575, as well as new 298286441Srpaulo client/desktop adapters. A new &man.igb.4; driver 299286441Srpaulo will support new server adapters.</para> 300286441Srpaulo 301286441Srpaulo <para>The &man.jme.4; driver has been added to provide support 302286441Srpaulo for PCIe network adapters based on JMicron JMC250 Gigabit 303286441Srpaulo Ethernet and JMC260 Fast Ethernet controllers.</para> 304286441Srpaulo 305286441Srpaulo <para>The &man.malo.4; driver has been added to provide 306286441Srpaulo support for Marvell Libertas 88W8335 based PCI network 307286441Srpaulo adapters.</para> 308286441Srpaulo 309286441Srpaulo <para>The firmware for the &man.mxge.4; driver has been 310286441Srpaulo updated from 1.4.25 to 1.4.29.</para> 311286441Srpaulo 312286441Srpaulo <para>The &man.sf.4; driver has been overhauled to improve its 313286441Srpaulo performance and to add support for checksum offloading. It 314286441Srpaulo should also work on all architectures.</para> 315287197Sglebius 316287197Sglebius <para>The &man.re.4; driver has been overhauled to fix a 317287197Sglebius number of issues. This driver now has Wake On LAN (WOL) 318286441Srpaulo support.</para> 319287197Sglebius 320286441Srpaulo <para>The &man.vr.4; driver has been overhauled to fix a 321286441Srpaulo number of outstanding issues. It also now works on all 322286441Srpaulo architectures.</para> 323286441Srpaulo 324286441Srpaulo <para arch="amd64,i386" role="merged">The &man.wpi.4; driver has 325286441Srpaulo been updated to include a number of stability fixes.</para> 326286441Srpaulo 327286441Srpaulo <para revision="248925">The &man.cxgbe.4; driver has been updated to support 328286441Srpaulo 40G/10G Ethernet NICs based on Chelsio's Terminator 5 (T5) ASIC.</para> 329286441Srpaulo 330286441Srpaulo <para revision="256694">The iw_cxgbe driver has been added. This is an 331286441Srpaulo experimental iWARP/RDMA driver 332286441Srpaulo (kernel verbs only) for Chelsio's T4 and T5 based cards.</para> 333286441Srpaulo 334286441Srpaulo <para revision="255932">The Open Fabrics Enterprise Distribution (OFED) and 335286441Srpaulo OFED Infiniband core has been 336286441Srpaulo updated to the same version as supplied by Linux version 3.7</para> 337286441Srpaulo 338286441Srpaulo <para revision="255932">The Mellanox Infiniband driver has been updated to firmware 339286441Srpaulo version 2.30.3200 for ConnectX3 NICs. Support has been added for ConnectX3 VPI NICs, where 340286441Srpaulo each port can be used as Infiniband 56 GB/s or Ethernet 40 GB/s. Support has been added 341286441Srpaulo for dynamically loading kernel modules for Infiniband core (ibcore) and 342286441Srpaulo IP over Infiniband (ipoib).</para> 343286441Srpaulo 344286441Srpaulo <para revision="227614">&man.netmap.4; has been added. &man.netmap.4; is a framework for 345286441Srpaulo high-performance direct-to-hardware packet IO, offering low latency and high PPS 346286441Srpaulo rates to userland applications while bypassing any kernel-side packet processing. 347286441Srpaulo With &man.netmap.4; it is trivially possible to fully saturate a 10 Gbps network interface with 348286441Srpaulo minimal packet sizes. For more information, see: 349286441Srpaulo <link xlink:href="http://info.iet.unipi.it/~luigi/netmap/">Netmap Project</link>.</para> 350286441Srpaulo 351286441Srpaulo </sect4> 352286441Srpaulo </sect3> 353286441Srpaulo 354286441Srpaulo <sect3 xml:id="net-proto"> 355286441Srpaulo <title>Network Protocols</title> 356286441Srpaulo 357286441Srpaulo <para revision="228571">&man.carp.4; has been rewritten to make addresses 358286441Srpaulo more sane from the viewpoint of routing daemons such as 359286441Srpaulo quagga/zebra. It also brings support for a single redundant 360286441Srpaulo address on the subnet (carpdev), switching state with 361286441Srpaulo &man.ifconfig.8;, better locking and using modern kernel 362286441Srpaulo interfaces to allocate multicast memberships. 363286441Srpaulo Configuration of the CARP protocol via &man.ifconfig.8; has changed, as well as format 364286441Srpaulo of CARP events submitted to &man.devd.8; has changed. See &man.carp.4; 365286441Srpaulo for more information. The arpbalance feature of &man.carp.4; is currently 366286441Srpaulo not supported anymore.</para> 367286441Srpaulo 368286441Srpaulo <para revision="240233">The &man.pf.4; firewall now supports fine-grain locking 369286441Srpaulo and better utilization on multi-cpu machines resulting in 370286441Srpaulo significant improvements in performance.</para> 371286441Srpaulo 372286441Srpaulo <para revision="250700">Support for up to 65536 routing tables has been 373286441Srpaulo introduced.</para> 374286441Srpaulo 375286441Srpaulo <para revision="248552">Support for setting/matching differentiated services 376286441Srpaulo codepoints (DSCP) in IP header has been added to 377286441Srpaulo &man.ipfw.8;.</para> 378286441Srpaulo 379286441Srpaulo </sect3> 380286441Srpaulo 381286441Srpaulo <sect3 xml:id="disks"> 382286441Srpaulo <title>Disks and Storage</title> 383286441Srpaulo 384286441Srpaulo <para role="merged">The &man.aac.4; driver now supports volumes larger than 385286441Srpaulo 2TB in size.</para> 386286441Srpaulo 387286441Srpaulo <para>The &man.ata.4; driver now supports a spindown command for 388286441Srpaulo disks; after a configurable amount of time, if no requests 389286441Srpaulo have been received for a disk, the disk will be spun down 390286441Srpaulo until the next request. The &man.atacontrol.8; utility now 391286441Srpaulo supports a <command>spindown</command> command to configure 392286441Srpaulo this feature.</para> 393286441Srpaulo 394286441Srpaulo <para role="merged">The &man.hptrr.4; driver has been updated to version 1.2 395286441Srpaulo from Highpoint.</para> 396286441Srpaulo 397286441Srpaulo <para revision="240616">&man.nvme.4; has been added and provides NVM Express support. 398286441Srpaulo NVM Express is an optimized register interface, command set and feature set of 399286441Srpaulo PCI Express (PCIe)-based Solid-State Drives (SSDs). For more information, 400286441Srpaulo see <link xlink:href="http://http://www.nvmexpress.org/">nvmexpress.org</link>.</para> 401286441Srpaulo 402286441Srpaulo </sect3> 403286441Srpaulo 404286441Srpaulo <sect3 xml:id="fs"> 405286441Srpaulo <title>File Systems</title> 406286441Srpaulo 407286441Srpaulo <para revision="255570">A new kernel-based iSCSI target and initiator has been 408286441Srpaulo added</para> 409286441Srpaulo 410286441Srpaulo <para revision="243246">UFS filesystems can now be enlarged with &man.growfs.8; while 411286441Srpaulo mounted read-write. This is especially useful for virtual 412286441Srpaulo machines, allowing the addition of more harddrive space without 413286441Srpaulo interruption of service.</para> 414286441Srpaulo 415286441Srpaulo <para revision="241519">A state of the art FUSE implementation is now part of the 416286441Srpaulo base system. It allows the use of nearly all fusefs file 417286441Srpaulo systems</para> 418286441Srpaulo 419286441Srpaulo <sect4 xml:id="fs-zfs"> 420286441Srpaulo <title>ZFS</title> 421286441Srpaulo 422286441Srpaulo <para revision="">&man.bsdinstall.8; now supports installing 423286441Srpaulo ZFS on the root file system. It includes a single configuration menu 424286441Srpaulo that allows you to select all of the required details, including 425286441Srpaulo which drives to use, what ZFS RAID level to use (taking into consideration 426293177Savos the selected number of drives), GPT or MBR, GELI encryption, forcing 4K sectors, 427293177Savos pool name, etc.</para> 428286441Srpaulo 429286441Srpaulo <para revision="240868">TRIM support has been added for 430286441Srpaulo ZFS.</para> 431286441Srpaulo 432286441Srpaulo <para revision="246586">Support for the high performance LZ4 compression algorithm 433286441Srpaulo has been added to ZFS. LZ4 is usually faster and can achieve a 434286441Srpaulo higher compression ratio than LZJB, the default compression 435286441Srpaulo algorithm</para> 436286441Srpaulo 437286441Srpaulo <para revision="252140">Support for L2ARC compression has been added to ZFS.</para> 438286441Srpaulo 439286441Srpaulo <para revision="243524">The zio nop-write improvement from Illumos 440286441Srpaulo was imported into &os;. To reduce I/O, nop-write skips overwriting 441286441Srpaulo data if the checksum (cryptographically secure) of new data 442286441Srpaulo matches the checksum of existing data. It also saves space if 443286441Srpaulo snapshots are in use. This improvement only works only on 444286441Srpaulo datasets with enabled compression, disabled deduplication and 445286441Srpaulo sha256 checksums.</para> 446286441Srpaulo 447286441Srpaulo <para>ZFS will now compare the checksums of incoming writes to 448286441Srpaulo the checksum of the existing on-disk data and avoid issuing any 449286441Srpaulo write I/O for data that has not changed. This will reduce I/O 450286441Srpaulo as well as space usage because if the old block is referenced 451286441Srpaulo by a snapshot, both copies of the block are kept even though 452293177Savos both contain the same data.</para> 453286441Srpaulo 454286441Srpaulo </sect4> 455286441Srpaulo 456286441Srpaulo </sect3> 457293177Savos 458286441Srpaulo </sect2> 459286441Srpaulo 460286441Srpaulo <sect2 xml:id="userland"> 461293177Savos <title>Userland Changes</title> 462286441Srpaulo 463286441Srpaulo <para revision="255321">On platforms where &man.clang.1; is the default 464286441Srpaulo system compiler, (such as i386, amd64, arm) GCC and GNU libstdc++ are no 465286441Srpaulo longer built by default. &man.clang.1; and libc++ from LLVM are used on 466286441Srpaulo these platforms by instead. GCC 4.2.1 and libstdc++ are still built 467286441Srpaulo and used by default on pc98 and all other platforms where &man.clang.1; 468293177Savos is not the default system compiler. 469286441Srpaulo </para> 470286441Srpaulo 471286441Srpaulo <para revision="251662">&man.clang.1; and llvm have been updated to 472286441Srpaulo version 3.3 release. Please refer to 473286441Srpaulo <link xlink:href="http://llvm.org/releases/3.3/tools/clang/docs/ReleaseNotes.html"> 474293177Savos Clang 3.3 Release Notes.</link></para> 475293177Savos 476286441Srpaulo <para role="merged" revision="255949">BIND has been replaced by &man.unbound.8; for 477286441Srpaulo local dns resolution in the base system. With this change, nslookup 478286441Srpaulo and dig are no longer a part of the base system. Users should 479286441Srpaulo instead use &man.host.1; and &man.drill.1; Alternatively, 480286441Srpaulo nslookup and dig can be obtained by installing the 481286441Srpaulo dns/bind-tools port.</para> 482286441Srpaulo 483286441Srpaulo <para revision="225937">sysinstall has been removed from the base system. 484286441Srpaulo Auxiliary libraries and tools used by sysinstall such as libdisk, libftpio, 485293177Savos and sade have also been removed. sysinstall has been replaced by 486286441Srpaulo &man.bsdinstall.8; and &man.bsdconfig.8;.</para> 487286441Srpaulo 488286441Srpaulo <para revision="256106">&man.freebsd-version.1; has been added. This tool 489286441Srpaulo makes a best effort to determine the version and patch level of 490286441Srpaulo the installed kernel and userland.</para> 491286441Srpaulo 492286441Srpaulo <para revision="255191">GNU patch has been removed from the base system, and replaced 493286441Srpaulo by a BSD-licensed &man.patch.1; program.</para> 494286441Srpaulo 495286441Srpaulo <para revision="241511">GNU sort has been removed from the base system, and replaced 496286441Srpaulo by a BSD-licensed &man.sort.1; program.</para> 497286441Srpaulo 498286441Srpaulo <para revision="235723">Berkely yacc (byacc) has been imported 499286441Srpaulo from <link xlink:href="http://invisible-island.net/byacc/">invisible island</link>. 500286441Srpaulo This brings bison compatibilities to &man.yacc.1; while preserving full 501286441Srpaulo backwards compatibility with previous version of &man.yacc.1;.</para> 502286441Srpaulo 503286441Srpaulo <para revision="250881">&man.lex.1; has been replaced by flex 2.5.37</para> 504286441Srpaulo 505286441Srpaulo <para revision="250699">&man.make.1; has been replaced with the 506286441Srpaulo "Portable" BSD make tool (bmake) from NetBSD.</para> 507286441Srpaulo 508286441Srpaulo <para role="merged">The &man.adduser.8; utility now supports 509286441Srpaulo a <option>-M</option> option to set the mode of a new user's 510286441Srpaulo home directory.</para> 511286441Srpaulo 512286441Srpaulo <para>BSD-licensed versions of &man.ar.1; and &man.ranlib.1;, 513286441Srpaulo based on <filename>libarchive</filename>, have replaced the GNU 514286441Srpaulo Binutils versions of these utilities.</para> 515286441Srpaulo 516286441Srpaulo <para>BSD-licensed versions of &man.bc.1; and &man.dc.1; have 517286441Srpaulo replaced their GNU counterparts.</para> 518286441Srpaulo 519286441Srpaulo <para role="merged">&man.chflags.1; now supports a <option>-v</option> flag for 520286441Srpaulo verbose output and a <option>-f</option> flag to ignore errors 521286441Srpaulo with the same semantics as (for example) 522286441Srpaulo &man.chmod.1;.</para> 523286441Srpaulo 524286441Srpaulo <para>For compatibility with other implementations, &man.cp.1; now 525286441Srpaulo supports a <option>-a</option> flag, which is equivalent to 526286441Srpaulo specifying the <option>-RrP</option> flags.</para> 527286441Srpaulo 528286441Srpaulo <para>BSD-licensed version of &man.cpio.1; based on 529286441Srpaulo <filename>libarchive</filename>, has replaced the GNU cpio. 530286441Srpaulo Note that the GNU cpio is still installed as 531286441Srpaulo <filename>gcpio</filename>.</para> 532286441Srpaulo 533286441Srpaulo <para>The &man.env.1; program now supports <option>-u 534286441Srpaulo <replaceable>name</replaceable></option> 535286441Srpaulo which will completely unset the given variable 536286441Srpaulo <replaceable>name</replaceable> by removing it from the environment, 537286441Srpaulo instead of just setting it to a null value.</para> 538286441Srpaulo 539286441Srpaulo <para>The &man.fdopendir.3; library function has been added.</para> 540286441Srpaulo 541286441Srpaulo <para role="merged">The &man.fetch.3; library now support HTTP 1.1 542286441Srpaulo If-Modified-Since behavior. The &man.fetch.1; program now 543286441Srpaulo supports <option>-i <replaceable>filename</replaceable></option> 544286441Srpaulo which will only download the specified HTTP URL if the content 545286441Srpaulo is newer than <replaceable>filename</replaceable>.</para> 546286441Srpaulo 547286441Srpaulo <para>&man.find.1; has been enhanced by the addition of a number 548286441Srpaulo of primaries that were present in GNU find but not &os; 549286441Srpaulo &man.find.1;.</para> 550286441Srpaulo 551286441Srpaulo <para>&man.kgdb.1; now supports a new <command>add-kld</command> 552286441Srpaulo command to make it easier to debug crash dumps with kernel 553286441Srpaulo modules.</para> 554286441Srpaulo 555286441Srpaulo <para>The &man.ls.1; program now supports a <option>-D</option> 556286441Srpaulo option to specify a date format string to be used with the long 557286441Srpaulo format (<option>-l</option>) output.</para> 558286441Srpaulo 559286441Srpaulo <para>&man.nc.1; now supports a <option>-O</option> switch to 560286441Srpaulo disable the use of TCP options.</para> 561286441Srpaulo 562286441Srpaulo <para>&man.nc.1;'s <option>-o</option> switch has been deprecated. 563286441Srpaulo It will be removed in a future release.</para> 564286441Srpaulo 565286441Srpaulo <para>The &man.ping6.8; utility now returns <literal>2</literal> 566286441Srpaulo when the packet transmission was successful but no responses 567286441Srpaulo were received (this is the same behavior as &man.ping.8;). 568286441Srpaulo It returned a non-zero value before this change.</para> 569286441Srpaulo 570286441Srpaulo <para>The &man.procstat.1; utility has been added to display 571286441Srpaulo detailed information about processes.</para> 572286441Srpaulo 573286441Srpaulo <para role="merged">The &man.realpath.1; utility now supports 574286441Srpaulo a <option>-q</option> flag to suppress warnings; it now also 575286441Srpaulo accepts multiple paths on its command line.</para> 576286441Srpaulo 577286441Srpaulo <para>&man.sh.1; has many bug fixes, some new features, and will now 578286441Srpaulo refuse to parse some invalid scripts. Additionally, it now 579286441Srpaulo has filename completion and defaults to the "emacs" editing 580286441Srpaulo mode.</para> 581286441Srpaulo 582286441Srpaulo <para>The &man.split.1; utility now supports a <option>-n</option> 583286441Srpaulo flag to split a file into a certain number of chunks.</para> 584286441Srpaulo 585286441Srpaulo <para>The &man.tar.1; utility now supports a <option>-Z</option> 586286441Srpaulo flag to enable &man.compress.1;-style 587286441Srpaulo compression/decompression.</para> 588286441Srpaulo 589286441Srpaulo <para>The &man.tar.1; utility now supports a 590286441Srpaulo <option>--numeric-owner</option> flag to ignore user/group names 591286441Srpaulo on create and extract.</para> 592286441Srpaulo 593286441Srpaulo <para>The &man.tar.1; utility now supports an 594286441Srpaulo <option>-S</option> flag to sparsify files on extraction.</para> 595286441Srpaulo 596286441Srpaulo <para>The &man.tar.1; utility now supports a <option>-s</option> 597286441Srpaulo flag to substitute filenames based on the specified regular 598286441Srpaulo expression.</para> 599286441Srpaulo 600286441Srpaulo <para>The &man.tcgetsid.3; library function has been added to 601286441Srpaulo return the process group ID for the session leader for the 602286441Srpaulo controlling terminal. It is defined in IEEE Std 1003.1-2001 603286441Srpaulo (POSIX).</para> 604286441Srpaulo 605286441Srpaulo <para>&man.top.1; now supports a <option>-P</option> flag to 606286441Srpaulo provide per-CPU usage statistics.</para> 607286441Srpaulo 608286441Srpaulo <para>&man.zdump.8; is now working properly on 64 bit architectures. 609286441Srpaulo </para> 610286441Srpaulo 611286441Srpaulo <para>&man.traceroute.8; now has the ability to print the AS 612286441Srpaulo number for each hop with the new <option>-a</option> switch; a 613286441Srpaulo new <option>-A</option> option allows selecting a particular 614286441Srpaulo WHOIS server.</para> 615286441Srpaulo 616286441Srpaulo <para>&man.traceroute6.8; now supports a <option>-U</option> flag 617286441Srpaulo to send probe packets with no upper-layer protocol, rather than 618286441Srpaulo the usual UDP probe packets.</para> 619286441Srpaulo 620286441Srpaulo <sect3 xml:id="rc-scripts"> 621286441Srpaulo <title><filename>/etc/rc.d</filename> Scripts</title> 622286441Srpaulo 623286441Srpaulo <para/> 624286441Srpaulo 625286441Srpaulo </sect3> 626286441Srpaulo </sect2> 627286441Srpaulo 628286441Srpaulo <sect2 xml:id="contrib"> 629286441Srpaulo <title>Contributed Software</title> 630286441Srpaulo 631286441Srpaulo <para revision="251300">&man.jemalloc.3; has been updated to 3.4.0. 632286441Srpaulo See <link xlink:href="http://www.facebook.com/jemalloc/">this link</link>. 633286441Srpaulo for more details.</para> 634286441Srpaulo 635286441Srpaulo <para role="merged"><application>AMD</application> has been updated from 6.0.10 636286441Srpaulo to 6.1.5.</para> 637286441Srpaulo 638286441Srpaulo <para role="merged"><application>awk</application> has been updated from 1 May 639286441Srpaulo 2007 release to the 23 October 2007 release.</para> 640286441Srpaulo 641286441Srpaulo <para role="merged"><application>bzip2</application> has been updated from 1.0.4 642286441Srpaulo to 1.0.5.</para> 643286441Srpaulo 644286441Srpaulo <para revision="251794"><application>CVS</application> has been removed from the 645286441Srpaulo base system, but is still available from ports</para> 646286441Srpaulo 647286441Srpaulo <para revision="251886">Subversion has been imported into the base system and 648286441Srpaulo is installed as <application>svnlite</application>. <application>svnlite</application> 649286441Srpaulo should only be used for checking out &os; source and committing, and does not 650286441Srpaulo replace the full Subversion port.</para> 651286441Srpaulo 652286441Srpaulo <para revision="234449"><application>file</application> has been updated to 5.11.</para> 653286441Srpaulo 654286441Srpaulo <para revision="252726"><application>hostapd</application> has been 655286441Srpaulo updated from 0.5.8 to 0.5.10.</para> 656286441Srpaulo 657286441Srpaulo <para><application>IPFilter</application> has been updated to 5.1.2.</para> 658286441Srpaulo 659286441Srpaulo <para revision="250592"><application>less</application> has been updated to 660286441Srpaulo v458.</para> 661286441Srpaulo 662286441Srpaulo <para><application>ncurses</application> has been updated from 663286441Srpaulo to 5.7-20081102.</para> 664286441Srpaulo 665286441Srpaulo <para role="merged"><application>OpenSSH</application> has been updated 666286441Srpaulo to 6.4.</para> 667286441Srpaulo 668286441Srpaulo <para revision="236109"><application>OpenPAM</application> has been updated to 669286441Srpaulo the Micrampelis release.</para> 670286441Srpaulo 671286441Srpaulo <para role="merged"><application>sendmail</application> has been updated from 672286441Srpaulo 8.14.1 to 8.14.7.</para> 673286441Srpaulo 674286441Srpaulo <para role="merged">The timezone database has been updated from 675286441Srpaulo the <application>tzdata2008h</application> release to 676286441Srpaulo the <application>tzdata2009m</application> release.</para> 677286441Srpaulo 678286441Srpaulo <para>The stdtime part of libc, &man.zdump.8; and &man.zic.8; 679286441Srpaulo have been updated from the <application>tzcode2004a</application> 680286441Srpaulo release to the <application>tzcode2009h</application> release. 681286441Srpaulo If you have upgraded from source or via the &man.freebsd-update.8;, 682286441Srpaulo then please run &man.tzsetup.8; to install a new /etc/localtime. 683286441Srpaulo </para> 684293177Savos 685286441Srpaulo <para revision="252726"><application>WPA Supplicant</application> has been 686286441Srpaulo updated to 2.0.</para> 687286441Srpaulo 688286441Srpaulo <para role="merged"><application>xz</application> has been updated 689286441Srpaulo from snapshot as of 12 April 2010 to 5.0.0.</para> 690286441Srpaulo 691286441Srpaulo <para revision="258231" role="merged">&man.nvi.1; has been updated to 2.1.2.</para> 692286441Srpaulo 693286441Srpaulo <para revision="254225">&man.nvi.1; supports wide character locales.</para> 694286441Srpaulo 695286441Srpaulo </sect2> 696286441Srpaulo 697286441Srpaulo <sect2 xml:id="ports"> 698286441Srpaulo <title>Ports/Packages Collection Infrastructure</title> 699286441Srpaulo 700286441Srpaulo <para revision="257444">The pkg_add, pkg_create, pkg_delete, pkg_info, 701286441Srpaulo pkg_updating, and pkg_version utilities have been removed. 702286441Srpaulo &man.pkg.7; must now be used to install binary packages. &man.pkg.7; 703286441Srpaulo is the next generation &os; package manager, also referred to as "pkgng".</para> 704286441Srpaulo 705286441Srpaulo </sect2> 706286441Srpaulo 707286441Srpaulo <sect2 xml:id="releng"> 708286441Srpaulo <title>Release Engineering and Integration</title> 709286441Srpaulo 710286441Srpaulo <para role="merged">The supported version of 711286441Srpaulo the <application>GNOME</application> desktop environment 712286441Srpaulo (<package>x11/gnome2</package>) has been 713286441Srpaulo updated from 2.20.1 to 2.22.</para> 714286441Srpaulo 715286441Srpaulo </sect2> 716286441Srpaulo 717289679Skevlo <sect2 xml:id="doc"> 718286441Srpaulo <title>Documentation</title> 719286441Srpaulo 720286441Srpaulo <para/> 721286441Srpaulo 722286441Srpaulo </sect2> 723286441Srpaulo</sect1> 724286441Srpaulo 725286441Srpaulo<sect1 xml:id="upgrade"> 726286441Srpaulo <title>Upgrading from previous releases of &os;</title> 727286441Srpaulo 728286441Srpaulo <para arch="amd64,i386">Beginning with &os; 6.2-RELEASE, 729286441Srpaulo binary upgrades between RELEASE versions (and snapshots of the 730286441Srpaulo various security branches) are supported using the 731286441Srpaulo &man.freebsd-update.8; utility. The binary upgrade procedure will 732286441Srpaulo update unmodified userland utilities, as well as unmodified GENERIC or 733286441Srpaulo SMP kernels distributed as a part of an official &os; release. 734286441Srpaulo The &man.freebsd-update.8; utility requires that the host being 735286441Srpaulo upgraded have Internet connectivity.</para> 736286441Srpaulo 737286441Srpaulo <para>Source-based upgrades (those based on recompiling the &os; 738286441Srpaulo base system from source code) from previous versions are 739286441Srpaulo supported, according to the instructions in 740286441Srpaulo <filename>/usr/src/UPDATING</filename>.</para> 741286441Srpaulo 742286441Srpaulo <important> 743286441Srpaulo <para>Upgrading &os; should, of course, only be attempted after 744286441Srpaulo backing up <emphasis>all</emphasis> data and configuration 745286441Srpaulo files.</para> 746286441Srpaulo </important> 747286441Srpaulo</sect1> 748286441Srpaulo</article> 749286441Srpaulo