1 <?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
2 <!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN" [
3 <!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//EN">
6 <!ENTITY % release PUBLIC "-//FreeBSD//ENTITIES Release Specification//EN">
12 <title>&os; &release.current; Release Notes</title>
14 <corpauthor>The &os; Project</corpauthor>
16 <pubdate>$FreeBSD$</pubdate>
20 <holder role="mailto:doc@FreeBSD.org">The &os; Documentation Project</holder>
23 <legalnotice id="trademarks" role="trademarks">
33 <para>The release notes for &os; &release.current; contain a summary
34 of the changes made to the &os; base system on the
35 &release.branch; development line.
36 This document lists applicable security advisories that were issued since
37 the last release, as well as significant changes to the &os;
39 Some brief remarks on upgrading are also presented.</para>
44 <title>Introduction</title>
46 <para>This document contains the release notes for &os;
48 describes recently added, changed, or deleted features of &os;.
49 It also provides some notes on upgrading
50 from previous versions of &os;.</para>
52 <![ %release.type.current [
54 <para>The &release.type; distribution to which these release notes
55 apply represents the latest point along the &release.branch; development
56 branch since &release.branch; was created. Information regarding pre-built, binary
57 &release.type; distributions along this branch
58 can be found at <ulink url="&release.url;"></ulink>.</para>
62 <![ %release.type.snapshot [
64 <para>The &release.type; distribution to which these release notes
65 apply represents a point along the &release.branch; development
66 branch between &release.prev; and the future &release.next;.
68 pre-built, binary &release.type; distributions along this branch
69 can be found at <ulink url="&release.url;"></ulink>.</para>
73 <![ %release.type.release [
75 <para>This distribution of &os; &release.current; is a
76 &release.type; distribution. It can be found at <ulink
77 url="&release.url;"></ulink> or any of its mirrors. More
78 information on obtaining this (or other) &release.type;
79 distributions of &os; can be found in the <ulink
80 url="&url.books.handbook;/mirrors.html"><quote>Obtaining
81 &os;</quote> appendix</ulink> to the <ulink
82 url="&url.books.handbook;/">&os;
83 Handbook</ulink>.</para>
87 <para>All users are encouraged to consult the release errata before
88 installing &os;. The errata document is updated with
89 <quote>late-breaking</quote> information discovered late in the
90 release cycle or after the release. Typically, it contains
91 information on known bugs, security advisories, and corrections to
92 documentation. An up-to-date copy of the errata for &os;
93 &release.current; can be found on the &os; Web site.</para>
98 <title>What's New</title>
100 <para>This section describes the most user-visible new or changed
101 features in &os; since &release.prev;.</para>
103 <para>Typical release note items document recent security
104 advisories issued after &release.prev;, new drivers or hardware
105 support, new commands or options, major bug fixes, or
106 contributed software upgrades. They may also list changes to
107 major ports/packages or release engineering practices. Clearly
108 the release notes cannot list every single change made to &os;
109 between releases; this document focuses primarily on security
110 advisories, user-visible changes, and major architectural
113 <sect2 id="security">
114 <title>Security Advisories</title>
116 <para>Problems described in the following security advisories have
117 been fixed. For more information, consult the individual
118 advisories available from
119 <ulink url="http://security.FreeBSD.org/"></ulink>.</para>
121 <informaltable frame="none" pgwide="1">
123 <colspec colwidth="1*"/>
124 <colspec colwidth="1*"/>
125 <colspec colwidth="3*"/>
128 <entry>Advisory</entry>
136 <entry><ulink url="http://security.freebsd.org/advisories/FreeBSD-SA-10:08.bzip2.asc"
137 >SA-10:08.bzip2</ulink></entry>
138 <entry>20 September 2010</entry>
139 <entry><para>Integer overflow in bzip2 decompression</para></entry>
141 <!-- XXX: not for 8.2
143 <entry><ulink url="http://security.freebsd.org/advisories/FreeBSD-SA-10:09.pseudofs.asc"
144 >SA-10:09.pseudofs</ulink></entry>
145 <entry>10 October 2010</entry>
146 <entry><para>Spurious mutex unlock</para></entry>
150 <entry><ulink url="http://security.freebsd.org/advisories/FreeBSD-SA-10:10.openssl.asc"
151 >SA-10:10.openssl</ulink></entry>
152 <entry>29 November 2010</entry>
153 <entry><para>OpenSSL multiple vulnerabilities</para></entry>
161 <title>Kernel Changes</title>
163 <para arch="ia64" revision="209326">The maximum number of pages
164 used for DMA bounce buffer pool has been increased from 256 to
167 <para arch="powerpc" revision="209765">The default value of
168 <varname>kern.hz</varname> has been increased from 100 to
171 <para arch="powerpc" revision="209767">The SMP kernel now works on
172 MPC7400-based Apple desktop machines such as
175 <para arch="powerpc" revision="211593">&os;/powerpc now supports
176 DMA bounce buffer which is required on systems with larger RAM
179 <para arch="mips" revision="215938">&os;/mips support has been
180 improved. It now supports SMP on a SWARM with a dual-core
181 Sibyte processor.</para>
183 <para arch="mips">&os;/mips now supports Netlogic Microsystems'
184 XLR and XLS multi-core processor families.</para>
186 <para arch="sparc64" revision="215598">&os;/sparc64 now supports
187 reservation-based physical memory allocation which provides
188 better performance.</para>
190 <para arch="amd64" revision="214620">&os;/amd64 now always sets
191 the KVA space as equal to or larger than physical memory size.
192 The default size was calculated based on one-third of the
193 physical memory size by a code derived from one for i386. It
194 has been changed because constraints for memory space are not
195 severe on amd64 and this change would help to prevent a
196 <quote>kmem_map too small</quote> panic which often occurs
197 when using ZFS.</para>
199 <para arch="amd64,i386" revision="214621">CPU topology detection
200 for Intel CPUs has been improved.</para>
202 <para arch="amd64,i386" revision="215513">ACPI suspend/resume
203 functionality support has been improved.</para>
205 <para arch="amd64,i386" revision="215513">&os; kernel now
206 supports <function>kern_fpu_enter()</function> and
207 <function>kern_fpu_leave()</function> KPIs which allow the
208 kernel subsystems to use XMM register files used in Intel SSE
209 (Streaming SIMD Extensions).</para>
211 <para arch="amd64,i386,ia64" revision="215006">The &man.acpi.4;
212 driver now uses ACPI Reset Register capability by default only
213 when a flag in the FADT which indicates it is available. This
214 behavior was controlled by a &man.sysctl.8; variable
215 <varname>hw.acpi.handle_reboot</varname> and the default value
216 was always set to <literal>0</literal>.</para>
218 <para arch="amd64,i386,ia64" revision="215521">The &man.acpi.4;
219 driver now supports new loader tunables
220 <varname>hw.acpi.install_interface</varname> and
221 <varname>hw.acpi.remove_interface</varname>. For more
222 details, see &man.acpi.4; manual page.</para>
224 <para revision="209788">The &man.alq.9; support has been
225 improved. The <function>alq_writen()</function> and
226 <function>alq_getn()</function> KPIs have been extended to
227 support variable length messages, which is enabled at ALQ
228 creation time depending on the arguments passed to
229 <function>alq_open()</function>. Also, the
230 <literal>ALQ_NOACTIVATE</literal> and
231 <literal>ALQ_ORDERED</literal> flags have been added to allow
232 ALQ consumers to have more control over I/O scheduling and
233 resource acquisition respectively. These extensions are fully
234 backward compatible.</para>
236 <para revision="209783">The &man.alq.9; support is now provided
237 as a kernel module <filename>alq.ko</filename>.</para>
239 <para revision="209692">The &man.ddb.8; kernel debugger now
240 supports an optional delay in <command>reset</command> and
241 <command>reboot</command> commands. This allows an
242 administrator to break the system into debugger and trigger
243 automatic textdump when an unattended panic occurs.</para>
245 <para revision="212230">The &man.ddb.8; kernel debugger now
246 supports a <command>show cdev</command> command. This
247 displays the list of all created cdev's, consisting of devfs
248 node name and struct cdev address.</para>
250 <para revision="214326">The &os; <filename>GENERIC</filename>
251 kernel is now compiled with <option>KDB</option> and
252 <option>KDB_TRACE</option> options. From 8.2-RELEASE the
253 kernel supports displaying a stack trace on panic by using
254 &man.stack.9; facility with no debugger backend like
255 &man.ddb.8;. Note that this does not change the default
256 behaviors of the <filename>GENERIC</filename> kernel on
259 <para revision="213554,213556,213560">The following
260 &man.sysctl.8; variables are also now loader tunables:
261 <varname>vm.kmem_size</varname>,
262 <varname>vm.kmem_size_max</varname>, and
263 <varname>vm.kmem_size_min</varname>,
264 <varname>debug.kdb.stop_cpus</varname>,
265 <varname>debug.trace_on_panic</varname>, and
266 <varname>kern.sync_on_panic</varname>. Also, new
267 &man.sysctl.8; variables <varname>vm.kmem_map_size</varname>
268 for the current kmem map size and
269 <varname>vm.kmem_map_free</varname> for largest contiguous
270 free range in kmem map, <varname>vfs.ncsizefactor</varname>
271 for size factor for namecache, and
272 <varname>vfs.ncnegfactor</varname> for ratio of negative
273 namecache entries have been added.</para>
275 <para revision="212427">The &os; &man.memguard.9; framework has
276 been improved to make it able to detect use-after-free of
277 allocated memories over a longer time. For more details, see
278 &man.memguard.9; manual page.</para>
280 <para revision="214756"><literal>PT_LWPINFO</literal> request to
281 obtain information about the kernel thread that caused the
282 traced process to stop in the &man.ptrace.2; process tracing
283 and debugging facility has been improved. It now reports
284 system call entry and leave events, as well as availability of
285 <varname>siginfo_t</varname> accompanying the reported
288 <para revision="214254">The &os; &man.crypto.4; framework
289 (opencrypto) now supports XTS-AES (XEX-TCB-CTS, or XEX-based
290 Tweaked Code Book mode with CipherText Stealing), which is
291 defined in IEEE Std. 1619-2007.</para>
293 <para arch="amd64" revision="215788">Xen HVM support in
294 &os;/amd64 kernel has been improved. For more details, see
295 &man.xen.4; manual page.</para>
297 <para arch="amd64,i386" revision="214784">The qpi(4) pseudo bus
298 driver has been added. This supports extra PCI buses on Intel
299 QPI chipsets where various hardware such as memory controllers
300 for each socket is connected.</para>
303 <title>Boot Loader Changes</title>
305 <para revision="213994">&os; now fully supports GPT (GUID
306 Partition Table). Checksums of primary header and primary
307 partition table are verified properly now.</para>
309 <para arch="powerpc" revision="215919,215920">Memory
310 management issues that prevented &os; OpenFirmware loader
311 and netbooting from working have been fixed.</para>
313 <para revision="212717">The &man.pxeboot.8; now uses NFS
314 version 3 instead of version 2 by default.</para>
318 <title>Hardware Support</title>
320 <para arch="amd64,i386" revision="215633">The &man.aesni.4;
321 driver has been added. This supports AES accelerator on
322 Intel CPUs and accelerates AES operations for
323 &man.crypto.4;.</para>
325 <para arch="amd64,i386" revision="210476">The &man.aibs.4;
326 driver has been added. This supports the hardware sensors
327 in ASUS motherboards and replaces the &man.acpi.aiboost.4;
330 <para arch="amd64,i386" revision="211914">The &man.coretemp.4;
331 driver now supports Xeon 5500/5600 series.</para>
333 <para arch="powerpc" revision="215694">&os;/powerpc now
334 supports the I2C bus in Apple System Management Unit.</para>
336 <para arch="powerpc" revision="215695">A device driver that
337 supports CPU temperature sensors on PowerMac 11,2 has been
340 <para revision="215482">The &man.ehci.4;, &man.ohci.4;, and
341 &man.uhci.4; driver now support LOW speed BULK transfer
344 <para arch="amd64,i386" revision="209952">The &man.ichwd.4;
345 driver now supports Intel NM10 Express chipset watchdog
348 <para revision="215036">The &man.tpm.4; driver, which supports
349 Trusted Platform Module has been added.</para>
351 <para revision="215944">The xhci(4) driver, which supports
352 Extensible Host Controller Interface (xHCI) and USB 3.0, has
356 <title>Multimedia Support</title>
358 <para>The &os; Linux emulation subsystem now supports the
359 <application>video4linux</application> API. This requires
360 native <application>video4linux</application> hardware
361 drivers such as the ones provided by <filename
362 role="ports">multimedia/pwcbsd</filename> and <filename
363 role="ports">multimedia/webcamd</filename>.</para>
365 <para revision="215483">MIDI input buffer size in the
366 &man.uaudio.4; driver has been changed. This fixes a
367 problem where the input appears several seconds
370 <para revision="215484">An issue in the &man.uaudio.4;
371 driver that prevented some USB audio devices from working
372 has been fixed.</para>
376 <title>Network Interface Support</title>
378 <para revision="212021">The &man.alc.4; driver now supports
379 Atheros AR8151/AR8152 PCIe Gigabit/Fast Ethernet
382 <para revision="215003">A bug in the &man.alc.4; driver was
383 fixed that could lead to a system freeze when the system
384 was booted without a cable plugged in. This symptom was
385 found in AR8132 on EEE PC.</para>
387 <para revision="212011">The TX interrupt moderation timer in
388 the &man.alc.4; driver has been reduced from 50ms to 1ms.
389 The 50ms timer resulted in a poor UDP performance.</para>
391 <para revision="214297,214298,214301">The &man.axe.4; driver
392 has been improved for stability and better performance on
393 the TX packet rate.</para>
395 <para revision="214997">The &man.bge.4; driver now supports
396 BCM5718 x2 PCI Express dual-port gigabit Ethernet
397 controller family. This family is the successor to the
398 BCM5714/BCM5715 family and supports IPv4/IPv6 checksum
399 offloading, TSO, VLAN hardware tagging, jumbo frames,
400 MSI/MSIX, IOV, RSS and TSS. The current version of the
401 driver supports all hardware features except IOV and
404 <para revision="211367">A bug in the &man.bge.4; driver which
405 prevented TSO from working in BCM57780 has been
408 <para revision="214700">A bug in the &man.bge.4; driver that
409 could wrongly disable the TX checksum offloading feature
410 as well when one tries to disable only the RX checksum
411 offloading has been fixed.</para>
413 <para revision="214714">Some improvements for reliability of
414 the &man.bge.4; driver with BCM5906 controller has been
417 <para revision="214698">The &man.bge.4; driver now supports
418 hardware MAC statistics in controller's internal memory
419 for BCM5705 or newer Broadcom controllers. These counters
420 can be accessed via &man.sysctl.8; variable
421 <varname>dev.bge.<replaceable>N</replaceable>.stats.*</varname>
422 and provide useful information to diagnose driver
425 <para revision="213109">UDP checksum offloading in the
426 &man.bge.4; driver has been disabled by default. This is
427 because Broadcom controllers have a bug which can generate
428 UDP datagrams with checksum value <literal>0</literal>
429 when TX UDP checksum offloading is enabled. The checksum
430 offloading can be enabled by using the following loader
433 <programlisting>dev.bge.<replaceable>N</replaceable>.forced_udpcsum</programlisting>
435 <para revision="213593">A bug in the &man.bge.4; driver that
436 could lead to poor performance on a system with more than
437 4 GB RAM has been fixed. The cause was that all of
438 Broadcom controllers except the BCM5755 and later have a
439 bug in 4 GB-boundary DMA processing and used the bounce
440 buffer in an inefficient way.</para>
442 <para revision="212275">The &man.bwi.4; driver, which supports
443 Broadcom BCM430* and BCM431* family Wireless Ethernet
444 controllers, has been added. This is not compiled into
445 the <filename>GENERIC</filename> kernel because there are
446 some problems. The kernel module
447 <filename>if_bwi.ko</filename> is available and can be
448 loaded without recompiling the kernel to enable this
451 <para revision="212274">A bug in the &man.bwn.4; driver that
452 prevented WPA authentication from working has been
455 <para revision="215499">A bug in the &man.cdce.4; driver has
458 <para revision="211848">The &man.cxgb.4; driver now supports
459 the following new &man.sysctl.8; variables:
460 <varname>hw.cxgb.nfilters</varname> sets the maximum
461 number of entries in the hardware filter table,
462 <varname>dev.cxgbc.<replaceable>N</replaceable>.pkt_timestamp</varname>
463 provides packet timestamp instead of connection hash, and
464 <varname>dev.cxgbc.<replaceable>N</replaceable>.core_clock</varname>
465 provides the core clock frequency in kHz.</para>
467 <para>The &man.em.4; driver has been updated to version
470 <para>The &man.igb.4; driver has been updated to version
473 <para revision="209309">The &man.em.4; and &man.igb.4; drivers
474 now provide statistics counters as &man.sysctl.8; MIB
477 <para revision="211241">The &man.em.4; and &man.igb.4; drivers
478 now support the &man.led.4; interface via
479 <filename>/dev/led/em<replaceable>N</replaceable></filename>
481 <filename>/dev/led/igb<replaceable>N</replaceable></filename>
482 for identification LED control. The following command
483 line makes the LED blink on <literal>em0</literal>:</para>
485 <screen>&prompt.root; echo f2 > /dev/led/em0</screen>
487 <para revision="212150">The &man.epair.4; virtual Ethernet
488 interface driver now supports explicit UP/DOWN linkstate.
489 This fixes an issue when it is used with the &man.carp.4;
492 <para revision="214717">The &man.fxp.4; driver now supports
493 TSO over VLAN on i82550 and i82551 controllers.</para>
495 <para revision="210673">The &man.iwn.4; driver now supports
496 Intel Wireless WiFi Link 6000 series. The firmware has
497 been updated to version 9.221.4.1.</para>
499 <para revision="212386">The &man.ixgbe.4;
500 driver is now also provided as a kernel module.</para>
502 <para revision="209308,215970,217593">The &man.ixgbe.4;
503 driver has been updated to version 2.3.8. It now supports
504 82599, better interrupt handling, hardware assist to LRO,
505 VM SRIOV interface, and so on.</para>
508 revision="211379,215881,215890,2105894,216002,216023,216029,216031,216033">The
509 &man.miibus.4; has been rewritten for the generic IEEE
510 802.3 annex 31B full duplex flow control support. The
511 &man.alc.4;, &man.bge.4;, &man.bce.4;, &man.cas.4;,
512 &man.fxp.4;, &man.gem.4;, &man.jme.4;, &man.msk.4;,
513 &man.nfe.4;, &man.re.4;, &man.stge.4;, and &man.xl.4;
514 drivers along with atphy(4), bmtphy(4), brgphy(4),
515 e1000phy(4), gentbi(4), inphy(4), ip1000phy(4), jmphy(4),
516 nsgphy(4), nsphyter(4), and &man.rgephy.4; have been
517 updated to support flow control via this facility.</para>
519 <para revision="212386">The &man.mwlfw.4;
520 driver is now also provided as a kernel module.</para>
522 <para revision="216054">A bug in the &man.mxge.4; driver
523 that prevented TSO from working has been fixed.</para>
525 <para revision="215456">The &man.nfe.4; driver now supports
526 WoL (Wake on LAN).</para>
528 <para revision="215218">The &man.re.4; driver now supports
529 64-bit DMA addressing for RTL810xE/RTL8168/RTL8111 PCIe
532 <para revision="215405">The &man.re.4; driver now supports
533 hardware interrupt moderation of TX completion interrupts
534 on RTL8169/RTL8168 controllers.</para>
536 <para revision="211377">The &man.rl.4; driver now supports WoL
537 (Wake on LAN) on RTL8139B or newer controllers.</para>
539 <para revision="215222">The &man.rl.4; driver now supports
540 reading hardware statistics counters by setting a
541 &man.sysctl.8; variable
542 <varname>dev.rl.<replaceable>N</replaceable>.stats</varname>
543 to <literal>1</literal>.</para>
545 <para revision="212039">The &man.rl.4; driver now supports a
546 device hint to change a way of register access. Although
547 some newer RTL8139 controllers support memory-mapped
548 register access, it is difficult to detect the support
549 automatically. For this reason the driver uses I/O
550 mapping by default and provides the following device hint.
551 If it is set to <literal>0</literal>, the driver uses
552 memory mapping for register access.</para>
554 <programlisting>hint.rl.<replaceable>N</replaceable>.prefer_iomap="0"</programlisting>
556 <para>Note that the default value is <literal>1</literal>.</para>
558 <para revision="214407">The &man.rl.4; driver has improved
559 interrupt handling. It now has better TX performance
560 under high RX load.</para>
562 <para revision="215216">A bug in the &man.sk.4; driver has
563 been fixed. It did not program the station address for
564 Yukon controllers and overriding the station address with
565 &man.ifconfig.8; was not possible.</para>
567 <para revision="211359">The &man.sk.4; driver now disables TX
568 checksum offloading by default. This is because some
569 revisions of the Yukon controller generate corrupted frames.
570 The checksum offloading can be enabled manually by using
571 <option>txcsum</option> option in the &man.ifconfig.8;
574 <para revision="212468,213612,213628">The &man.sis.4; driver
575 now works on all supported platforms. Some stability and
576 performance issues have also been fixed.</para>
578 <para revision="213637">The &man.sis.4; driver now supports
579 WoL (Wake on LAN) on NS DP8315 controller.</para>
581 <para revision="213626">A tunable
582 <varname>dev.sis.<replaceable>N</replaceable>.manual_pad</varname>
583 for the &man.sis.4; driver has been added. This controls
584 whether padding with 0x00 for short frames is done by CPU,
585 rather than the controller. The reason why this tunable
586 has been added is that NS DP83815/DP83816 pads them with
587 0xff though RFC 1042 specifies it should be 0x00. The
588 tunable is disabled by default, which means padding with
589 0xff is used because padding with 0x00 by software needs
590 extra CPU cycles. Enabling <varname>manual_pad</varname>,
591 by setting this &man.sysctl.8; variable to a non-zero
592 value, forces the use of software padding.</para>
594 <para revision="211357">The &man.ste.4; driver now supports
595 a device hint to change the device register access mode.
596 The driver uses memory-mapped register access by default,
597 but this caused stability problems with some old IC Plus
598 Corp (formerly Sundace) controllers. The following device
599 hint makes the driver use I/O mapping for register
602 <programlisting>hint.ste.<replaceable>N</replaceable>.prefer_iomap="1"</programlisting>
604 <para revision="213120">The &man.xl.4; driver now supports
605 WoL (Wake on LAN). Note that not all controllers support
606 this functionality and some need an additional remote
611 <sect3 id="net-proto">
612 <title>Network Protocols</title>
614 <para revision="213505">An issue in the &man.carp.4; pseudo
615 interface and linkstate changes of the underlying interfaces
616 has been fixed. This happened when a &man.carp.4; interface
617 was created before the underlying interface and its
618 linkstate became <literal>UP</literal>.</para>
620 <para revision="212738,216348">A bug in the &man.ipfw.4;
621 packet filter subsystem has been fixed. The &man.sysctl.8;
622 variable <varname>net.inet.ip.fw.one_pass</varname> did not
623 work for <literal>netgraph</literal> action and in-kernel
626 <para revision="215342">A new loader tunable
627 <varname>net.link.ifqmaxlen</varname> has been added. It
628 specifies the default value of send interface queue length.
629 The default value for this parameter is
630 <varname>50</varname>.</para>
632 <para revision="212742">The <literal>ngtee</literal> action in
633 the &man.ipfw.4; packet filter subsystem has been changed.
634 It no longer accepts a packet.</para>
636 <para revision="214108">A possible panic in the &man.ipfw.4;
637 pseudo interface for logging has been fixed.</para>
639 <para revision="209691">IPsec flow distribution has been
640 improved for more parallel processing.</para>
642 <para revision="209277">A bug in the &os; IPv4 stack that
643 prevented adding a proxy ARP entry over &man.netgraph.4;
644 interfaces has been fixed.</para>
646 <para revision="211435">A bug in the &os; IPv6 stack that
647 prevented an <option>-I</option> in the &man.ping6.8;
648 utility from working with
649 <varname>net.inet6.ip6.use_defaultzone=1</varname> has been
652 <para revision="214111">The &man.lagg.4; interface now
653 supports a &man.sysctl.8; variable
654 <varname>net.link.lagg.failover_rx_all</varname>. This
655 controls whether to accept input packets on any link in a
656 failover lagg.</para>
658 <para revision="215869">The &man.ng.eiface.4; &man.netgraph.4;
659 node now supports VLAN-compatible MTU and an MTU size which
660 is larger than 1500.</para>
662 <para revision="212320">The &man.ng.ether.4; &man.netgraph.4;
663 node now supports interface transfer between multiple virtual
664 network stacks by &man.ifconfig.8; <command>vnet</command>
665 command. A &man.ng.ether.4; node associated with a network
666 interface is now destroyed and recreated when the network
667 interface is moved to another vnet.</para>
669 <para revision="209843">A new &man.netgraph.4; node
670 &man.ng.patch.4; has been added. This performs data
671 modification of packets passing through. Modifications are
672 restricted to a subset of C language operations on unsigned
673 integers of 8, 16, 32 or 64-bit size.</para>
675 <para revision="212905">An ICMP unreachable problem in the
676 &man.pf.4; packet filter subsystem when TSO support is
677 enabled has been fixed.</para>
679 <para revision="211538">The TCP bandwidth delay product window
680 limiting algorithm controlled by the &man.sysctl.8; variable
681 <varname>net.inet.tcp.inflight.enable</varname> is now
682 disabled by default. It has been found that this algorithm
683 is inefficient on a fast network with smaller RTT than 10ms.
684 It had been enabled by default since 5.2-RELEASE, and then
685 had been disabled only if the RTT was lesser than 10ms since
686 7.0-RELEASE. Pluggable TCP congestion control algorithm
687 modules are planned to be added for the future
690 <para revision="211602">A bug in &os; TCP Path MTU discovery
691 which could lead to a wrong calculation for an MTU smaller
692 than 256 octets has been fixed. Note that this bug did not
693 affect MTUs equal to or larger than 256 octets.</para>
695 <para revision="214865,214866">The &os; TCP reassembly
696 implementation has been improved. A long-standing
697 accounting bug affecting SMP systems has been fixed and the
698 <varname>net.inet.tcp.reass.maxqlen</varname> &man.sysctl.8;
699 variable has been retired in favor of a per-connection
700 dynamic limit based on the receive socket buffer size. &os;
701 receivers now handle packet loss (particularly losses caused
702 by queue overflows) significantly better than before which
703 improves connection throughput.</para>
705 <para revision="211870">The TCP initial window increase in RFC
706 3390 which can be controlled by a &man.sysctl.8; variable
707 <varname>net.inet.tcp.rfc3390</varname> now reduces the
708 congestion window to the restart window if a TCP connection
709 has been idle for one retransmit timeout or more. For more
710 details, see RFC 5681 Section 4.1.</para>
712 <para revision="214859">The &man.siftr.4;, Statistical
713 Information For TCP Research (SIFTR) kernel module has been
714 added. This is a facility that logs a range of statistics
715 on active TCP connections to a log file. It provides the
716 ability to make highly granular measurements of TCP
717 connection state, aimed at system administrators, developers
718 and researchers.</para>
720 <para revision="212319">&os; virtual network stack (vnet) now
721 supports IPv4 multicast routing.</para>
723 <para revision="239616">The IEEE 802.11s element identifiers have
724 been updated to reflect the final version of the amendment. This
725 update breaks compatibility with older mesh setups but is necessary
726 as the previous IDs are used by another amendment leading to
727 unexpected results when trying to associate with an accesspoint
728 using the affected IDs.</para>
732 <title>Disks and Storage</title>
734 <para revision="211458">The &man.ahci.4; driver now disables NCQ
735 and PMP support on VIA VT8251 because they are unreliable
738 <para revision="211718">The &man.ahci.4; driver now uses 15
739 seconds for device reset timeout instead of 10 seconds
740 because some devices need 10 - 12 seconds to spin up.</para>
742 <para revision="215825">The &man.arcmsr.4; driver
743 has been updated to version 1.20.00.19.</para>
745 <para revision="215173">The &man.ada.4; driver now supports a
746 new &man.sysctl.8; variable
747 <varname>kern.cam.ada.spindown_shutdown</varname> which
748 controls whether or not to spin-down disks when shutting
749 down if the device supports the functionality. The default
750 value is <literal>1</literal>.</para>
752 <para revision="210164">The &man.ata.4; driver
753 now supports limiting initial ATA mode for devices via
755 <varname>hint.<replaceable>devname</replaceable>.<replaceable>unit</replaceable>.dev<replaceable>N</replaceable
757 <varname>hint.<replaceable>devname</replaceable>.<replaceable>unit</replaceable>.mode</varname>.
758 The valid values are the same as ones supported in the
759 &man.atacontrol.8; and &man.camcontrol.8; utilities.</para>
761 <para revision="210204">The &man.ata.4; driver now disables
762 cable status check on both controller and device side
763 when the loader tunable
764 <varname>hw.ata.ata_dma_check_80pin</varname> is
765 <literal>0</literal>. The check on controller side was
766 performed regardless of this loader tunable.</para>
768 <para revision="215777">The &man.ata.4; driver now reports
769 SATA power management capabilities to the &man.CAM.4; layer when
770 <option>ATA_CAM</option> is enabled. This allows a device
771 to initiate transitions if controller configured to accept
773 <varname>hint.ata.<replaceable>N</replaceable>.pm_level=1</varname>
776 <para revision="214671">The &man.ata.4; driver has been
777 improved on hotplugging and connection speed reporting
778 support for some Intel SATA controllers including ICH5 and
779 ICH8+ operating in legacy mode.</para>
781 <para revision="213291">An issue of device detection of
782 Serverworks K2 SATA controllers in the &man.ata.4; has been fixed.</para>
784 <para revision="214667">A bug in the &man.ata.4; driver that
785 prevented some Silicon Image chipsets from working on big
786 endian systems has been fixed.</para>
788 <para revision="214330">The &man.gconcat.8; GEOM class now
789 supports kernel crash dump. The dumping is performed to the
790 component where a dump partition begins.</para>
792 <para revision="214405">A bug in the &man.geli.8; GEOM class
793 on little endian platforms has been fixed. The metadata
794 version for newly created providers has been updated to
795 <literal>4</literal> due to this. Providers with the older
796 versions are fully interoperable with 8.2-RELEASE and later
797 by being treated as ones with the native byte order flag
798 automatically.</para>
800 <para revision="214405">The &man.geli.8; GEOM class now
801 supports a &man.sysctl.8; variable
802 <varname>kern.geom.eli.overwrites</varname>. This specifies
803 the number of times on-disk keys should be overwritten when
804 destroying them. The default value is
805 <literal>5</literal>.</para>
807 <para revision="214405">The &man.geli.8; GEOM class has been
808 improved for preventing the same encryption key from being
809 used in 2^20 blocks (sectors).</para>
811 <para revision="214405">The &man.geli.8; GEOM class now uses
812 XTS-AES mode by default.</para>
814 <para revision="214405">A &man.sysctl.8; variable
815 <varname>kern.geom.eli.debug</varname> now allows a value
816 <literal>-1</literal>. This means turn off any log messages
817 of the &man.geli.8; GEOM class.</para>
819 <para revision="210376">The &man.mpt.4; driver now supports
820 larger I/O sizes which the device and &man.CAM.4; subsystem
821 can support. This was limited to 64KB, and the number of
822 scatter/gather segments was limited to 33 on platforms with
825 <para revision="209404">The &man.twa.4;
826 driver has been updated. The version number is
831 <title>File Systems</title>
833 <para revision="214050">The &man.linprocfs.5; Linux process
834 file system now supports
835 <filename>proc/$$/environment</filename>.</para>
837 <para revision="212716">The &os; NFS client now supports a
838 kernel environment variable
839 <varname>boot.nfsroot.nfshandlelen</varname>. This lets the
840 diskless root file system on boot to use NFS version 3 and
841 the specified file handle length. If this variable is not
842 set, NFS version 2 is used.</para>
844 <para revision="212668">The ZFS on-disk format has been updated
845 to version 15.</para>
847 <para revision="212671">The ZFS metaslab code has been updated.
848 This provides a noticeable improvement on write speed,
849 especially on pools with less than 30% of free space. The
850 related OpenSolaris Bug IDs are 6826241, 6869229, 6918420,
853 <para revision="214013">The ZFS now supports offlining of log
854 devices. The related OpenSolaris Bug IDs are 6599442,
855 6726045, and 6803605.</para>
857 <para revision="212672">Performance improvements for the ZFS
858 have been imported from OpenSolaris. They include caching of
859 ACL permission checks, faster handling of &man.stat.2;,
860 mitigation of mutex lock contention. The related
861 OpenSolaris Bug IDs are 6802734, 6844861, 6848431, 6775100,
862 6827779, 6857433, 6860318, 6865875, 6867395, 6868276, and
865 <para revision="210541">The default value of
866 <varname>vfs.zfs.vdev.max_pending</varname> has been
867 decreased from 35 to 10 (OpenSolaris Bug ID is 6891731) to
868 improve latency.</para>
870 <para>Various bugs in the ZFS subsystem have been fixed. The
871 related OpenSolaris Bug IDs are: 6328632, 6396518, 6501037,
872 6504953, 6542860, 6551866, 6572357, 6572376, 6582163,
873 6586537, 6595194, 6596237, 6604992, 6621164, 6623978,
874 6633095, 6635482, 6664765, 6674216, 6696242, 6696858,
875 6702206, 6710376, 6713916, 6717022, 6722540, 6722991,
876 6737463, 6739487, 6739553, 6740164, 6745863, 6747596,
877 6747698, 6748436, 6755435, 6757430, 6758107, 6759986,
878 6759999, 6761100, 6761406, 6764124, 6765294, 6767129,
879 6769612, 6770866, 6774713, 6774886, 6775697, 6776104,
880 6776548, 6780491, 6784104, 6784108, 6785914, 6788152,
881 6788830, 6789318, 6790064, 6790345, 6790687, 6791064,
882 6791066, 6791071, 6791101, 6792134, 6792139, 6792884,
883 6793430, 6794136, 6794570, 6794830, 6797109, 6797118,
884 6798384, 6798878, 6799895, 6800184, 6800942, 6801507,
885 6801810, 6803343, 6803822, 6804954, 6807339, 6807765,
886 6809340, 6809683, 6809691, 6810367, 6815592, 6815893,
887 6816124, 6818183, 6821169, 6821170, 6822816, 6824006,
888 6824062, 6824968, 6826466, 6826468, 6826469, 6826470,
889 6826471, 6826472, 6827260, 6830237, 6830541, 6833162,
890 6833711, 6833999, 6834217, 6836714, 6836768, 6838062,
891 6838344, 6841321, 6843014, 6843069, 6843235, 6844069,
892 6844900, 6847229, 6848242, 6856634, 6857012, 6861983,
893 6862984, 6863610, 6870564, 6880764, 6882227, 6892298,
894 6898245, 6906110, 6906946, 6939941, 6950219, 6951024, and
899 <sect2 id="userland">
900 <title>Userland Changes</title>
902 <para revision="209267">The &man.arp.8; utility has been improved.
903 It now runs faster even when a single interface has a number
906 <para revision="214729">A bug in the &man.b64decode.1; utility that
907 prevented an <option>-r</option> option from handling arbitrary
908 breaks in a base64 encoded string has been fixed.</para>
910 <para revision="211723">The &man.calendar.1; utility now supports
911 repeating events which span multiple years, lunar events, and
914 <para revision="210915">The &man.dhclient.8; utility now reports a
915 reason for exiting and the 10-second period in which the
916 &man.dhclient.8; ignores routing messages has been changed to
917 start just after <filename>dhclient-script</filename> starts
918 instead of just after it finished. This change fixes a
919 symptom that &man.dhclient.8; silently exits under a certain
922 <para revision="214983">Userland support for the &man.dtrace.1;
923 subsystem has been added. This allows inspection of userland
924 software itself and its correlation with the kernel, thus
925 allowing a much better picture of what exactly is going on
926 behind the scenes. The &man.dtruss.1; utility has been added
927 and the <filename>libproc</filename> library has been updated
928 to support the facility.</para>
930 <para revision="209362">The &man.du.1; utility now supports a
931 <option>-t <replaceable>threshold</replaceable></option>
932 option to display entries that exceeds the value of
933 <replaceable>threshold</replaceable>. If the value is
934 negative, it displays entries with a value less than the
935 absolute value of <replaceable>threshold</replaceable>.</para>
937 <para revision="215667">The &man.fdisk.8; utility now supports
938 partitions which are provided by &man.gjournal.8; or
939 &man.geli.8; GEOM classes.</para>
941 <para revision="210567">The &man.gcore.1; utility now supports an
942 <option>-f</option> flag which forces a full dump of all the
943 segments except for the malformed ones.</para>
945 <para revision="214405">The &man.geli.8; utility now supports
946 <command>resize</command> subcommand to resize encrypted file
947 systems after growing it.</para>
949 <para revision="214405">The &man.geli.8; utility now supports
950 <command>suspend</command> and <command>resume</command>
951 subcommands. The <command>suspend</command> subcommand makes
952 &man.geli.8; devices wait for all in-flight I/O requests,
953 suspend new I/O requests, remove all &man.geli.8; sensitive
954 data from the kernel memory (like encryption keys) and will
955 wait for either <command>geli resume</command> or
956 <command>geli detach</command> command. For more
957 information, see &man.geli.8; manual page.</para>
959 <para revision="214405">The &man.geli.8; utility now checks the
960 metadata provider size strictly. If the check fails, the
961 provider is not attached. A new option <option>-f</option>
962 can override this behavior.</para>
964 <para revision="214405">The &man.geli.8; utility now supports
965 <option>-J <replaceable>newpassfile</replaceable></option> and
966 <option>-j <replaceable>oldpassfile</replaceable></option>
967 options for loading passphrase from a file.</para>
969 <para revision="211938">The <function>gethost*()</function>,
970 <function>getnet*()</function>, and
971 <function>getproto*()</function> functions now set the errno
972 to <literal>ERANGE</literal> and the NSS backend terminates
973 with <literal>NS_RETURN</literal> when the result buffer size
976 <para revision="209497">The &man.gpart.8; utility now supports a
977 <command>resize</command> command to resize partitions for all
978 schemes but EBR.</para>
980 <para revision="215941">The &man.gpart.8; utility now supports
981 <command>backup</command> and <command>restore</command>
982 subcommands to backup partition tables and restore
985 <para revision="213661">The &man.gpart.8; utility now handles
986 given geom/provider names with and without
987 <filename>/dev/</filename> prefix.</para>
989 <para revision="213684">The &man.gpart.8; utility now supports
990 an <option>-F</option> option for the
991 <command>destroy</command> subcommand. This option forces
992 destroying of the partition table even if it is not
995 <para revision="213684">The &man.gpart.8; utility now supports a
996 <command>recover</command> subcommand for GPT partition
997 tables. A corrupted GPT is now marked when the following
998 three types of corruption:</para>
1002 <para>Primary GPT header or table is corrupted.</para>
1006 <para>Secondary GPT header or table is corrupted.</para>
1010 <para>Secondary GPT header is not located at the last LBA.</para>
1014 <para>Changes to the corrupted GPT table are not allowed except
1015 for <command>destroy</command> and <command>recover</command>
1018 <para revision="213994">The &man.gpart.8; utility now supports
1019 <literal>GPT_ENT_ATTR_BOOTME</literal>,
1020 <literal>GPT_ENT_ATTR_BOOTONCE</literal>, and
1021 <literal>GPT_ENT_ATTR_BOOTFAILED</literal> attributes in GPT.
1022 The attribute keywords in the command line are
1023 <literal>bootme</literal>, <literal>bootonce</literal>, and
1024 <literal>bootfailed</literal> respectively.</para>
1026 <para revision="215728">An issue in the &man.newfs.8; utility
1027 has been fixed. A UFS1 file system created with 64KB
1028 blocksize was incorrectly recognized as one with a broken
1029 superblock. This is because the &os; kernel checks a
1030 partition first for a UFS2 superblock at 64KB offset while it
1031 is possible that a UFS1 file systems with 64KB blocksize has
1032 an alternative superblock at the same location. For example,
1033 a file system created by <command>newfs -U -O 1 -b 65536 -f
1034 8192</command> could lead to this symptom.</para>
1036 <para revision="213049">The &man.hastd.8; utility now supports
1037 <literal>SIGHUP</literal> for reloading the configuration
1038 file. When <literal>SIGTERM</literal> or
1039 <literal>SIGINT</literal> is received, the worker processes
1042 <para revision="212144">The &man.ifconfig.8; utility now check an
1043 invalid CIDR subnet notation more strictly. It wrongly
1044 accepted <literal>10.0.0.1/10.0.0.1</literal> as
1045 <literal>10.0.0.1/10</literal>.</para>
1047 <para revision="215237">An accuracy issue in the &man.jn.3; and
1048 &man.jnf.3; functions in <filename>libm</filename> has been
1051 <para revision="209284">Incorrect behaviors in stuttering
1052 sequences and reverse ranges in the &man.jot.1; utility have
1055 <para revision="213667">The <filename>libarchive</filename>
1056 library and &man.tar.1; utility now support LZMA
1057 (Lempel-Ziv-Markov chain-Algorithm) compression format.</para>
1059 <para revision="215229">The &man.tar.1; utility now supports a
1060 blocksize which is up to <literal>8192</literal> (4MB) in the
1061 <option>-b <replaceable>blocksize</replaceable></option>
1064 <para revision="214442">A bug in the &man.lpr.1; utility that
1065 prevented it from working with some files on a ZFS file system
1066 has been fixed.</para>
1068 <para revision="213978">The <option>-p</option> option in the
1069 &man.mount.8; utility now displays the <literal>rw</literal>
1070 mount option correctly as in the &man.fstab.5; format.</para>
1072 <para revision="213889">The &man.ncal.1; utility has been
1073 updated. The option <option>-b</option> has been replaced
1074 with <option>-C</option> and <option>-B
1075 <replaceable>number</replaceable></option>. Options
1076 <option>-3</option> to show previous, current and next month, and
1077 <option>-A <replaceable>number</replaceable></option> to show
1078 months after current month have been added. The option
1079 <option>-m <replaceable>N</replaceable>
1080 <replaceable>YYYY</replaceable></option> now prints only the
1081 month, not the whole year.</para>
1083 <para revision="211699">The &man.newsyslog.8; utility now supports
1084 an <option>-S <replaceable>pidfile</replaceable></option>
1085 option to override the default &man.syslogd.8; PID
1088 <para revision="215622">The &man.newsyslog.8; utility now
1089 supports a special log file name
1090 <literal><include></literal> for processing file
1091 inclusion. Globbing in the file name and circular dependency
1092 detection are supported. For more details, see
1093 the &man.newsyslog.conf.5; manual page.</para>
1095 <para revision="213980">The &man.ntpd.8; utility is now compiled
1096 with shared memory reference clock driver. For example, GPS
1097 devices can be used as source of precise time via <filename
1098 role="ports">astro/gpsd</filename> in the Ports
1101 <para revision="212848">An off-by-one error in the &man.pax.1;
1102 utility when ustar file name is too long has been
1105 <para revision="209912">The &man.pkill.1; utility now supports
1106 an <option>-l</option> option like the &man.kill.1; utility
1109 <para revision="211098">The &man.pmcstat.8; utility now supports a
1110 file and a network socket as a top source. A new option
1111 <option>-O <replaceable>filename</replaceable></option>
1112 specifies to send log output to
1113 <replaceable>filename</replaceable>, and another new option
1114 <option>-R <replaceable>filename</replaceable></option>
1115 specifies to receive events from
1116 <replaceable>filename</replaceable>. For a socket, the
1117 <replaceable>filename</replaceable> is in a form of
1118 <replaceable>ipaddr:port</replaceable>. This allows top
1119 monitoring over TCP on a system with no local symbols, for
1122 <para revision="210089">The &man.pom.6; utility now
1123 supports a <option>-p</option> flag to print only the
1126 <para revision="212472">The &man.powerd.8; utility now supports
1127 an <option>-m <replaceable>freq</replaceable></option> and
1128 <option>-M <replaceable>freq</replaceable></option> to control
1129 the minimum and maximum frequency, respectively.</para>
1131 <para revision="213825">The &man.ruptime.1; utility now displays
1132 hostnames longer than 12 characters.</para>
1134 <para revision="215066">A behavior of the &man.sh.1; program
1135 when an <option>-u</option> option is specified has been
1136 changed. The special parameters <varname>$@</varname> and
1137 <varname>$*</varname> no longer cause an error when there are
1138 no positional parameters.</para>
1140 <para revision="210616">A bug in the &man.sh.1; program has been
1141 fixed. A <literal>SIGINT</literal> signal is now passed
1142 through from a child process if the shell is interactive and
1143 the job control is enabled. For example, aborting
1144 &man.sleep.1; command by Ctrl-C no longer display
1145 <literal>ok</literal> in the following command line:</para>
1147 <screen>&prompt.user; sleep 5; echo ok</screen>
1149 <para revision="210732">The &man.sh.1; program now supports a
1150 <command>bg</command> command consisting solely of
1151 redirections. For example:</para>
1153 <screen>&prompt.user; < /dev/null &</screen>
1155 <para revision="211536">The &man.sleep.1; utility now supports
1156 the <literal>SIGINFO</literal> signal and reports the specified
1157 sleep time and the remaining time.</para>
1159 <para revision="213036,213038">The &man.tftp.1; and &man.tftpd.8;
1160 utilities have been improved for better interoperability and
1161 they now support RFC 1350, 2347, 2348, 2349, and 3617.</para>
1163 <para revision="213899">A bug in <literal>[=]=]</literal>
1164 equivalent class handling in the &man.tr.1; utility has been
1165 fixed. A closing bracket immediately after
1166 <literal>[=</literal> was incorrectly treated as
1169 <para revision="210566">The &man.uname.1; utility now supports an
1170 <option>-o</option> flag as a synonym for the
1171 <option>-s</option> flag for compatibility with other
1174 <para revision="211060">Bugs in &man.vi.1; utility have been
1175 fixed. They include handling of <literal>^@</literal> and
1176 <literal>^C</literal> in insert mode when reading an ex
1179 <para revision="214345">The &man.watchdogd.8; program now uses
1180 <literal>MADV_PROTECT</literal> memory flag to protect itself
1181 from being terminated by the &os; kernel when available memory
1182 becomes short. This kind of process termination happens in a
1183 swap-intensive workload.</para>
1185 <para revision="209870">The <command>set sharenfs</command>
1186 command in the &man.zfs.8; utility now supports
1187 <option>sec</option> option.</para>
1189 <sect3 id="periodic-scripts">
1190 <title><filename>/etc/periodic</filename> Scripts</title>
1192 <para>A periodic script for <command>zfs scrub</command> has
1193 been added. For more details, see &man.periodic.conf.5;
1196 <para>A periodic script which can be used to find installed
1197 ports' files with mismatched checksum has been added. For more
1198 details, see the &man.periodic.conf.5; manual page.</para>
1202 <sect2 id="contrib">
1203 <title>Contributed Software</title>
1205 <para>The <application>ACPI-CA</application> has been updated to
1208 <para revision="214287">The &man.ee.1; program has been updated
1209 to version 1.5.2.</para>
1211 <para><application>ISC BIND</application> has been updated to
1212 version 9.6-ESV-R3.</para>
1214 <para><application>netcat</application> has been updated to
1217 <para><application>OpenSSL</application> has been updated to
1218 version 0.9.8q.</para>
1220 <para><application>sendmail</application> has been updated to
1221 version 8.14.5.</para>
1223 <para>The <application>timezone</application> database has been
1224 updated to the <application>tzdata2010o</application>
1227 <para>The <application>xz</application> has been updated
1228 from snapshot as of 12 April 2010 to 5.0.0 release</para>
1232 <title>Ports/Packages Collection Infrastructure</title>
1234 <para revision="215738">The &man.pkg.create.1; utility now supports LZMA
1235 (<application>xz</application>) compression. Note that the
1236 default is still <application>bzip2</application>.</para>
1240 <title>Release Engineering and Integration</title>
1242 <para revision="211007">The &man.sysinstall.8; utility now uses
1243 the following numbers for default and minimum partition sizes:
1244 1GB for <filename>/</filename>, 4GB for
1245 <filename>/var</filename>, and 1GB for
1246 <filename>/tmp</filename>.</para>
1248 <para revision="211009">The &man.sysinstall.8; utility now
1249 attempts to enable &man.getty.8; on a serial port when no VGA
1250 card is detected on the system.</para>
1252 <para>The supported version of
1253 the <application>GNOME</application> desktop environment
1254 (<filename role="package">x11/gnome2</filename>) has been
1255 updated to 2.32.1.</para>
1257 <para>The supported version of
1258 the <application>KDE</application> desktop environment
1259 (<filename role="package">x11/kde4</filename>) has been
1260 updated to 4.5.5.</para>
1264 <sect1 id="upgrade">
1265 <title>Upgrading from previous releases of &os;</title>
1267 <para arch="amd64,i386">Upgrades between RELEASE versions (and
1268 snapshots of the various security branches) are supported using
1269 the &man.freebsd-update.8; utility. The binary upgrade
1270 procedure will update unmodified userland utilities, as well as
1271 unmodified GENERIC kernel distributed as a part of an
1272 official &os; release. The &man.freebsd-update.8; utility
1273 requires that the host being upgraded has Internet
1274 connectivity.</para>
1276 <para>An older form of binary upgrade is supported through the
1277 <command>Upgrade</command> option from the main
1278 &man.sysinstall.8; menu on CDROM distribution media. This type
1279 of binary upgrade may be useful on non-&arch.i386;,
1280 non-&arch.amd64; machines or on systems with no Internet
1281 connectivity.</para>
1283 <para>Source-based upgrades (those based on recompiling the &os;
1284 base system from source code) from previous versions are
1285 supported, according to the instructions in
1286 <filename>/usr/src/UPDATING</filename>.</para>
1289 <para>Upgrading &os; should, of course, only be attempted after
1290 backing up <emphasis>all</emphasis> data and configuration