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