]> CyberLeo.Net >> Repos - FreeBSD/releng/7.2.git/blob - release/doc/en_US.ISO8859-1/relnotes/article.sgml
Fix a typo.
[FreeBSD/releng/7.2.git] / release / doc / en_US.ISO8859-1 / relnotes / article.sgml
1 <!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook V4.1-Based Extension//EN" [
2 <!ENTITY % articles.ent PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Articles Entity Set//EN">
3 %articles.ent;
4
5 <!ENTITY % release PUBLIC "-//FreeBSD//ENTITIES Release Specification//EN">
6 %release;
7 ]>
8
9 <article>
10   <articleinfo>
11     <title>&os; &release.current; Release Notes</title>
12
13     <corpauthor>The &os; Project</corpauthor>
14
15     <pubdate>$FreeBSD$</pubdate>
16
17     <copyright>
18       <year>2000</year>
19       <year>2001</year>
20       <year>2002</year>
21       <year>2003</year>
22       <year>2004</year>
23       <year>2005</year>
24       <year>2006</year>
25       <year>2007</year>
26       <year>2008</year>
27       <year>2009</year>
28       <holder role="mailto:doc@FreeBSD.org">The &os; Documentation Project</holder>
29     </copyright>
30
31     <legalnotice id="trademarks" role="trademarks">
32       &tm-attrib.freebsd;
33       &tm-attrib.ibm;
34       &tm-attrib.ieee;
35       &tm-attrib.intel;
36       &tm-attrib.microsoft;
37       &tm-attrib.sparc;
38       &tm-attrib.general;
39     </legalnotice>
40
41     <abstract>
42       <para>The release notes for &os; &release.current; contain a summary
43         of the changes made to the &os; base system on the
44         &release.branch; development line.
45         This document lists applicable security advisories that were issued since
46         the last release, as well as significant changes to the &os;
47         kernel and userland.
48         Some brief remarks on upgrading are also presented.</para>
49     </abstract>
50   </articleinfo>
51
52   <sect1 id="intro">
53     <title>Introduction</title>
54
55     <para>This document contains the release notes for &os;
56       &release.current;.  It
57       describes recently added, changed, or deleted features of &os;.
58       It also provides some notes on upgrading
59       from previous versions of &os;.</para>
60
61 <![ %release.type.current [
62
63     <para>The &release.type; distribution to which these release notes
64       apply represents the latest point along the &release.branch; development
65       branch since &release.branch; was created.  Information regarding pre-built, binary
66       &release.type; distributions along this branch
67       can be found at <ulink url="&release.url;"></ulink>.</para>
68
69 ]]>
70
71 <![ %release.type.snapshot [
72
73     <para>The &release.type; distribution to which these release notes
74       apply represents a point along the &release.branch; development
75       branch between &release.prev; and the future &release.next;.
76       Information regarding
77       pre-built, binary &release.type; distributions along this branch
78       can be found at <ulink url="&release.url;"></ulink>.</para>
79
80 ]]>
81
82 <![ %release.type.release [
83
84     <para>This distribution of &os; &release.current; is a
85       &release.type; distribution.  It can be found at <ulink
86       url="&release.url;"></ulink> or any of its mirrors.  More
87       information on obtaining this (or other) &release.type;
88       distributions of &os; can be found in the <ulink
89       url="&url.books.handbook;/mirrors.html"><quote>Obtaining
90       &os;</quote> appendix</ulink> to the <ulink
91       url="&url.books.handbook;/">&os; Handbook</ulink>.</para>
92
93 ]]>
94
95     <para>All users are encouraged to consult the release errata before
96       installing &os;.  The errata document is updated with
97       <quote>late-breaking</quote> information discovered late in the
98       release cycle or after the release.  Typically, it contains
99       information on known bugs, security advisories, and corrections to
100       documentation.  An up-to-date copy of the errata for &os;
101       &release.current; can be found on the &os; Web site.</para>
102   </sect1>
103
104   <sect1 id="new">
105     <title>What's New</title>
106
107     <para>This section describes the most user-visible new or changed
108       features in &os; since &release.prev;.</para>
109
110     <para>Typical release note items document recent security
111       advisories issued after &release.prev;, new drivers or hardware
112       support, new commands or options, major bug fixes, or
113       contributed software upgrades.  They may also list changes to
114       major ports/packages or release engineering practices.  Clearly
115       the release notes cannot list every single change made to &os;
116       between releases; this document focuses primarily on security
117       advisories, user-visible changes, and major architectural
118       improvements.</para>
119
120     <sect2 id="security">
121       <title>Security Advisories</title>
122
123       <para>Problems described in the following security advisories have
124         been fixed.  For more information, consult the individual
125         advisories available from
126         <ulink url="http://security.FreeBSD.org/"></ulink>.</para>
127
128       <informaltable frame="none" pgwide="0">
129         <tgroup cols="3">
130           <colspec colwidth="1*">
131           <colspec colwidth="1*">
132           <colspec colwidth="3*">
133             <thead>
134               <row>
135                 <entry>Advisory</entry>
136                 <entry>Date</entry>
137                 <entry>Topic</entry>
138               </row>
139             </thead>
140
141             <tbody>
142               <row>
143                 <entry><ulink url="http://security.freebsd.org/advisories/FreeBSD-SA-09:01.lukemftpd.asc"
144                               >SA-09:01.lukemftpd</ulink></entry>
145                 <entry>07&nbsp;January&nbsp;2009</entry>
146                 <entry><para>Cross-site request forgery in
147                   &man.lukemftpd.8;</para></entry>
148               </row>
149
150               <row>
151                 <entry><ulink url="http://security.freebsd.org/advisories/FreeBSD-SA-09:02.openssl.asc"
152                               >SA-09:02.openssl</ulink></entry>
153                 <entry>07&nbsp;January&nbsp;2009</entry>
154                 <entry><para>OpenSSL incorrectly checks for malformed
155                   signatures</para></entry>
156               </row>
157
158               <row>
159                 <entry><ulink url="http://security.freebsd.org/advisories/FreeBSD-SA-09:03.ntpd.asc"
160                               >SA-09:03.ntpd</ulink></entry>
161                 <entry>13&nbsp;January&nbsp;2009</entry>
162                 <entry><para>ntpd cryptographic signature
163                   bypass</para></entry>
164               </row>
165
166               <row>
167                 <entry><ulink url="http://security.freebsd.org/advisories/FreeBSD-SA-09:04.bind.asc"
168                               >SA-09:04.bind</ulink></entry>
169                 <entry>13&nbsp;January&nbsp;2009</entry>
170                 <entry><para>BIND DNSSEC incorrect checks for
171                   malformed signatures</para></entry>
172               </row>
173
174               <row>
175                 <entry><ulink url="http://security.freebsd.org/advisories/FreeBSD-SA-09:05.telnetd.asc"
176                               >SA-09:05.telnetd</ulink></entry>
177                 <entry>16&nbsp;February&nbsp;2009</entry>
178                 <entry><para>telnetd code execution
179                   vulnerability</para></entry>
180               </row>
181
182               <row>
183                 <entry><ulink url="http://security.freebsd.org/advisories/FreeBSD-SA-09:06.ktimer.asc"
184                               >SA-09:06.ktimer</ulink></entry>
185                 <entry>23&nbsp;March&nbsp;2009</entry>
186                 <entry><para>Local privilege escalation</para></entry>
187               </row>
188
189               <row>
190                 <entry><ulink url="http://security.freebsd.org/advisories/FreeBSD-SA-09:07.libc.asc"
191                               >SA-09:07.libc</ulink></entry>
192                 <entry>04&nbsp;April&nbsp;2009</entry>
193                 <entry><para>Information leak in &man.db.3;</para></entry>
194               </row>
195
196               <row>
197                 <entry><ulink url="http://security.freebsd.org/advisories/FreeBSD-SA-09:08.openssl.asc"
198                               >SA-09:08.openssl</ulink></entry>
199                 <entry>22&nbsp;April&nbsp;2009</entry>
200                 <entry><para>Remotely exploitable crash in
201                   OpenSSL</para></entry>
202               </row>
203             </tbody>
204         </tgroup>
205       </informaltable>
206     </sect2>
207
208     <sect2 id="kernel">
209       <title>Kernel Changes</title>
210
211       <para>The &man.ddb.8; kernel debugger now supports a
212         <command>show mount</command> subcommand.</para>
213
214       <para>The &os; DTrace subsystem now supports a probe for
215         process execution.</para>
216
217       <para arch="amd64">The &os; kernel virtual address space has
218         been increased to 6GB and the ceiling on the kmem map size
219         to 3.6GB.  Note that the ceiling as a fraction of the kernel
220         map size rather than an absolute quantity.</para>
221
222       <para>The &man.jail.8; subsystem has been updated.  Changes include:</para>
223
224       <itemizedlist>
225         <listitem>
226           <para>Multiple addresses of both IPv4 and IPv6 per jail has
227             been supported.  It is even possible to have jails without
228             an IP address at all, which basically gives one a chrooted
229             environment with restricted process view and no
230             networking.</para>
231         </listitem>
232
233         <listitem>
234           <para>SCTP (&man.sctp.4;) with IPv6 in jails has been supported.</para>
235         </listitem>
236
237         <listitem>
238           <para>Specific CPU binding by using &man.cpuset.1; has been
239             supported.  Note that the current implementation allows
240             the superuser inside of the jail to change the CPU
241             bindings specified.  This behavior will be fixed in the
242             next release.</para>
243         </listitem>
244
245         <listitem>
246           <para>A &man.jail.8; can start with a specific route
247             FIB now.</para>
248         </listitem>
249
250         <listitem>
251           <para>A <literal>show jails</literal> subcommand in
252             &man.ddb.8; has been added.</para>
253         </listitem>
254
255         <listitem>
256           <para>Compatibility support which permits 32-bit jail
257             binaries to be used on 64-bit systems to manage jails has
258             been added.</para>
259         </listitem>
260
261         <listitem>
262           <para>Note that both version numbers of
263             <literal>jail</literal> and <literal>prison</literal> in
264             the &man.jail.8; have been updated for the new
265             features.</para>
266         </listitem>
267       </itemizedlist>
268
269       <para>The &man.kld.4; now supports installing 32-bit system
270         call to the &os; system call translation layer from kernel
271         modules.</para>
272
273       <para>The &man.ktr.4; now supports a new KTR tracepoint in the
274         <literal>KTR_CALLOUT</literal> class to note when a callout
275         routine finishes executing.</para>
276
277       <para>Types of variables used to track amount of allocated
278         System V shared memory have been changed from
279         <literal>int</literal> to <literal>size_t</literal>.  This
280         makes it possible to use more than 2 GB shared memory segments
281         on 64-bit architectures.  Please note the new BUGS section in
282         &man.shmctl.2; and <filename>/usr/src/UPDATING</filename> for
283         limitations of this temporal solution.</para>
284
285       <para>The &os; 32-bit system call translation layer now
286         supports installing 32-bit system calls for
287         <literal>VFS_AIO</literal>.</para>
288
289       <para arch="amd64,i386">The &os; virtual memory subsystem now
290         supports Superpages.  The Superpages is a feature that enables
291         each entry in the TLB (translation lookaside buffer) to map a
292         large physical memory region into a virtual address space in
293         modern CPUs.  This provides possible memory savings for
294         applications that share large amounts of memory between the
295         address spaces and performance improvements due to fewer TLB
296         misses.</para>
297
298       <sect3 id="boot">
299         <title>Boot Loader Changes</title>
300
301         <para>The &man.boot.8; now supports 4-byte volume ID that
302           certain versions of &windows; put into the MBR and invoking
303           PXE by pressing F6 key on some supported BIOSes.</para>
304
305         <para>The &man.loader.8; is now able to obtain DHCP options
306           from network boot via &man.kenv.2; variables.</para>
307
308         <para>A bug in the &man.loader.8; has been fixed.  Now the
309           following line works as expected:</para>
310
311         <programlisting>loader_conf_files="<replaceable>foo</replaceable> <replaceable>bar</replaceable> ${<replaceable>variable</replaceable>}"</programlisting>
312       </sect3>
313
314       <sect3 id="proc">
315         <title>Hardware Support</title>
316
317         <para arch="sparc64">The &os; now supports Ultra SPARC III
318           (Cheetah) family.</para>
319
320         <para>The &man.acpi.4; subsystem now supports a &man.sysctl.8;
321           variable <varname>debug.batt.batt_sleep_ms</varname>.  On
322           some laptops with smart batteries, enabling battery
323           monitoring software causes keystrokes from &man.atkbd.4; to
324           be lost.  This sysctl variable adds a delay in millisecond
325           to the status checking code as a workaround.</para>
326
327         <para>The &man.acpi.asus.4; driver now supports Asus A8Sr
328           notebooks.</para>
329
330         <para arch="powerpc">Support for the AltiVec, a floating point
331           and integer SIMD instruction set has been added.</para>
332
333         <para>The &man.cpuctl.4; driver, which provides a special
334           device <filename>/dev/cpuctl</filename> as an interface to
335           the system CPU has been added.  The functionality includes
336           to retrieve CPUID information, read/write machine specific
337           registers (MSR), and perform CPU firmware updates.</para>
338
339         <para>The &man.cpufreq.4; driver now supports an
340           <varname>hw.est.msr_info</varname> loader tunable.  When
341           this is set to <literal>1</literal>, it attempts to build a
342           simple list containing just the high and low frequencies if
343           it cannot obtain a frequency list from either ACPI or the
344           static tables.  This is disabled by default.</para>
345
346         <para arch="amd64,i386">CPU frequency change notifiers are now
347           disabled when the TSC is P-state invariant.  Also, a new
348           loader tunable
349           <varname>kern.timecounter.invariant_tsc</varname> has been
350           added to force this behavior by setting it to
351           non-zero.</para>
352
353         <para>The &man.atkbd.4; now disables the interrupt handler
354           which is called from the keyboard callback function when
355           polled mode is enabled.  This fixes duplicated/missing
356           characters problem at mountroot on multi CPU systems while
357           &man.kbdmux.4; is enabled.</para>
358
359         <para>In the &man.pci.4; subsystem INTx is now disabled when
360           MSI/MSIX is enabled.  This change fixes interrupt storm
361           related issues.</para>
362
363         <para arch="sparc64">The schizo(4) driver for Schizo
364           Fireplane/Safari to PCI 2.1 and Tomatillo JBus to PCI 2.2
365           bridges has been added.</para>
366
367         <para>The &man.sched.ule.4; scheduler now supports a loader
368           tunable <varname>machdep.hyperthreading_enabled</varname> as
369           the &man.sched.4bsd.4; does.  Note that it cannot be
370           modified at run-time.</para>
371
372         <para>A &man.sysctl.3; leaf node has a flag to tag itself as
373           MPSAFE now.</para>
374
375         <sect4 id="mm">
376           <title>Multimedia Support</title>
377
378           <para>The &man.agp.4; now supports Intel G4X series graphics
379             chipsets.</para>
380
381           <para>The DRM, a kernel module named Direct Rendering
382             Manager that gives direct hardware access to DRI clients,
383             has been updated.  Support for AMD/ATI r500, r600, r700,
384             and IGP based chips, XGI V3XE/V5/V8, and Intel i915
385             chipsets has been improved.</para>
386
387           <para>A new loader tunable <varname>hw.drm.msi</varname>
388             which controls if DRM uses MSI or not.  This is set to
389             <literal>1</literal> (enabled) by default.</para>
390
391           <para>The snd_au88x0(4) driver for Aureal Vortex
392             1/2/Advantage PCI has been removed because this was
393             broken for a long time.</para>
394
395           <para>The &man.snd.hda.4; driver has been updated.  Changes
396             include: multiple codec per HDA bus, multiple functional
397             groups per codec, multiple audio devices per functional
398             group, digital (SPDIF/HDMI) audio input/output,
399             suspend/resume, and part of multichannel audio.</para>
400
401           <para>Note that due to added HDMI audio and logical audio
402             devices support, updated driver often provides several PCM
403             devices.  In some cases it can make system default audio
404             device no longer corresponding to the users's habitual
405             audio connectors.  In such cases the default device can be
406             specified in audio application setup or defined globally
407             via <varname>hw.snd.default_unit sysctl</varname>
408             as described in the &man.sound.4; manual page.</para>
409         </sect4>
410
411         <sect4 id="net-if">
412           <title>Network Interface Support</title>
413
414           <para>The &man.ae.4; driver now supports WoL
415             (Wake on LAN).</para>
416
417           <para arch="amd64,i386">The &man.ale.4; driver is now
418             included in the <filename>GENERIC</filename>
419             kernel.</para>
420
421           <para>The &man.ath.hal.4;, Atheros Hardware Access Layer,
422             has been updated to the open source version.</para>
423
424           <para>The &man.axe.4; driver has been improved in
425             performance by eliminating extra context switches and now
426             supports Apple USB Ethernet adapter.</para>
427
428           <para>The &man.bce.4; driver's firmware has been updated to
429             the latest version (4.6.X).</para>
430
431           <para>The ciphy(4) driver now supports Vitesse VSC8211
432             PHY.</para>
433
434           <para>The &man.cxgb.4; driver has been updated to the
435             firmware revision 4.7 and now supports hardware MAC
436             statistics.</para>
437
438           <para>The &man.fxp.4; driver has been improved.  Changes include:</para>
439
440           <itemizedlist>
441             <listitem>
442               <para>The checksum offload feature can be controlled by
443                 &man.ifconfig.8; now.</para>
444             </listitem>
445
446             <listitem>
447               <para>Rx checksum offload support for 82559 or later
448                 controllers has been added.</para>
449             </listitem>
450
451             <listitem>
452               <para>TSO (TCP Segmentation Offload) support for 82550
453                 and 82551 controllers has been added.</para>
454             </listitem>
455
456             <listitem>
457               <para>WoL (Wake on LAN) support for 82550, 82551, 82558,
458                 and 82559-based controllers has been added.  Note that
459                 ICH based controllers are treated as 82559, and 82557,
460                 earlier revision of 82558, and 82559ER have no WoL
461                 capability.</para>
462             </listitem>
463
464             <listitem>
465               <para>VLAN hardware tag insertion/stripping support and
466                 Tx/Rx checksum offload for VLAN frames support have
467                 been added.  Note that the VLAN hardware assistance is
468                 available only on 82550 or 82551-based
469                 controllers.</para>
470             </listitem>
471           </itemizedlist>
472
473           <para>A bug in &man.igb.4; driver which prevents a loader
474             tunable <varname>hw.igb.ave_latency</varname> from working
475             has been fixed.</para>
476
477           <para>The &man.ixgbe.4; driver has been updated to
478             version 1.7.4.</para>
479
480           <para>The &man.jme.4; driver now supports newer JMicron
481             JMC250/JMC260 revisions.</para>
482
483           <para>The &man.msk.4; driver has been improved.  An issue
484             which makes it hang up in a certain condition has been
485             fixed.  A hardware MAC statistics support has been added
486             and users can get the information via sysctl variables
487             named
488             <varname>dev.msk.<replaceable>N</replaceable>.stats</varname>.</para>
489
490           <para>The &man.mxge.4; driver now supports some newer
491             revisions and 10GBASE-LRM and 10GBASE-Twinax media
492             types.</para>
493
494           <para>The &man.nfe.4; driver now supports hardware MAC
495             statistics.</para>
496
497           <para>The &man.re.4; driver has been improved.  It now
498             detects the link status.  A new loader tunable
499             <varname>hw.re.prefer_iomap</varname> to disable memory
500             register mapping.  This tunable is <literal>0</literal>
501             for all controllers except RTL8169SC family.</para>
502
503           <para>The &man.rl.4; driver has been improved.  It now
504             detects the link status and a bug which prevents it from
505             working on systems with more than 4GB memory has been
506             fixed.</para>
507
508           <para>A bug in &man.sis.4; on VLAN tagged frame handling has
509             been fixed.</para>
510
511           <para>The &man.txp.4; driver now works on all supported
512             architecture.  Also, &man.altq.4; support, WoL support,
513             checksum offload when VLAN enabled, better link state
514             change handling, a new sysctl variable
515             <varname>dev.txp.<replaceable>N</replaceable>.stats</varname>
516             for MAC statistics have been added.  A new sysctl
517             variable
518             <varname>dev.txp.<replaceable>N</replaceable>.process_limit</varname>
519             to control how many received frames should be served in Rx
520             handler (set to 64 by default and valid ranges are 16 to
521             128 in unit of frames) has been added.  The firmware has
522             been updated to the latest version.</para>
523         </sect4>
524       </sect3>
525
526       <sect3 id="net-proto">
527         <title>Network Protocols</title>
528
529         <para>IPv4 source address selection for unbound sockets has
530           been implemented as follows:</para>
531
532         <orderedlist>
533           <listitem>
534             <para>If we found a route, use the address corresponding
535               to the outgoing interface.</para>
536           </listitem>
537
538           <listitem>
539             <para>Otherwise we assume the foreign address is reachable
540               on a directly connected network and try to find a
541               corresponding interface to take the source address
542               from.</para>
543           </listitem>
544
545           <listitem>
546             <para>As a last resort use the default jail address.</para>
547           </listitem>
548         </orderedlist>
549
550         <para>This also changes the semantics of selecting the IP for
551           processes within a &man.jail.8; as it now uses the same
552           logic as outside the &man.jail.8;.</para>
553
554         <para>The TCP MD5 Signature Option (RFC 2385) for IPv6 has
555           been implemented in the same way it has been implemented for
556           IPv4.</para>
557
558         <para>The &man.ng.netflow.4; Netgraph node now supports
559           ability to generate egress netflow instead or in addition to
560           ingress.  An <literal>NGM_NETFLOW_SETCONFIG</literal> control
561           message has been added to control the new functionality.</para>
562
563         <para>The &man.tap.4;, Ethernet tunnel software network
564           interface now supports <literal>TAPGIFNAME</literal>
565           character device ioctl.  This is a convenient shortcut to
566           obtain network interface name using file descriptor for
567           character device.</para>
568
569         <para>The &man.tap.4; now supports
570           <literal>SIOCSIFMTU</literal> ioctl to set a higher MTU than
571           1500 (ETHERMTU).  This allows &man.tap.4; device to be added
572           to a bridge, which requires all interface members to have
573           the same MTU, with an interface configured for jumbo
574           frames.</para>
575
576         <para>The domains list for handling the list of supported
577           domains in the &man.unix.4; (UNIX domain protocol family)
578           subsystem is now MPSAFE.</para>
579       </sect3>
580
581       <sect3 id="disks">
582         <title>Disks and Storage</title>
583
584         <para>The &man.ata.4; driver now supports Marvell PATA M88SX6121.</para>
585
586         <para>The &man.ata.4; driver now recognizes nForce MCP67 and
587           MCP73 SATA controllers as AHCI.</para>
588
589         <para>The &man.ataraid.4; driver now has an initial support
590           for DDF metadata found on Adaptec HostRAID controllers.
591           Note that spares and rebuilds are not supported yet.</para>
592
593         <para>The &man.cam.4; SCSI subsystem now supports a sysctl
594           variable <varname>kern.cam.cd.retry_count</varname>.  This
595           controls the number of retries for the CD media.  When
596           trying to read scratched or damaged CDs and DVDs, the
597           default mechanism is sub-optimal, and programs like
598           <application>ddrescue</application> do much better if you
599           turn off the retries entirely since their algorithms do it
600           by themselves.  This value is set to <literal>4</literal>
601           (for a total 5 attempts) by default.  Setting to 0 turns off
602           all retry attempts.</para>
603
604         <para>A bug in the &man.ciss.4; driver which caused low
605           <quote>max device openings</quote> count that has led
606           to poor performance has been fixed.</para>
607
608         <para>The &man.glabel.8; GEOM class now supports a new
609           UFS-based label called <literal>ufsid</literal> that can be
610           used to reference UFS-carrying devices by the unique file
611           system ID.  This file system ID is automatically generated
612           and detected when &man.glabel.8; GEOM class is enabled.  An
613           example of this new label is:
614           <filename>/dev/ufsid/48e69c8b5c8e1b43</filename>.  The
615           benefit of using GEOM labels in general is to avoid problems
616           of device renaming when shifting drives or
617           controllers.</para>
618
619         <para>The &man.gjournal.8; GEOM class now supports the root
620           file system.  Previously, an unclean shutdown would make it
621           impossible to mount root file system at boot.</para>
622
623         <para>The &man.gpart.8; utility has been updated.  The APM
624           scheme now supports Tivo Series 1 partitions (read only), a
625           new EBR scheme to support Extended Boot Records has been
626           added, the BSD scheme now support bootcode, and bugs in PC98
627           and VTOC8 scheme have been fixed.</para>
628
629         <para>An issue in the &man.gvinum.8; with access permissions
630           to underlying disks used by a gvinum plex has been fixed.
631           If the plex is a raid5 plex and is being written to, parity data might
632           have to be read from the underlying disks, requiring them to be opened for
633           reading as well as writing.</para>
634
635         <para>The &man.hptmv.4; driver has been updated to version
636           1.16 from the vendor.</para>
637
638         <para>The &man.mmc.4; and &man.mmcsd.4; driver now support MMC
639           and SDHC cards, high speed timing, wide bus, and multiblock
640           transfers.</para>
641
642         <para arch="sparc64">The &man.mpt.4; driver is now in the
643           <filename>GENERIC</filename> kernel.</para>
644
645         <para>The &man.sdhci.4; driver has been added.  This supports
646           PCI devices with class 8 and subclass 5 according to SD Host
647           Controller Specification.</para>
648
649         <para>The &man.sdhci.4; driver now supports kernel dumping and
650           a sysctl variable <varname>hw.sdhci.debug</varname> for debug
651           level.</para>
652
653         <para>The &man.twa.4; driver now supports 64-bit DMA.</para>
654
655         <para>The &man.mmc.4; &man.mmcsd.4;, and &man.sdhci.4; driver
656           are now included as a kernel module.</para>
657       </sect3>
658
659       <sect3 id="fs">
660         <title>File Systems</title>
661
662         <para>The semantics of &man.acl.3; extended access control
663           list has been changed as follows:</para>
664
665         <itemizedlist>
666           <listitem>
667             <para>The inode modification time (mtime) is not updated
668               when extended attribute are added, modified, or removed.</para>
669           </listitem>
670
671           <listitem>
672             <para>The inode access time (atime) is not updated
673               when extended attribute are queried.</para>
674           </listitem>
675         </itemizedlist>
676
677         <para>The &os; NFS file system now supports a sysctl variable
678           <varname>vfs.nfs.prime_access_cache</varname> to determine
679           whether or not <function>nfs_getattr()</function> will use
680           an ACCESS RPC to prime the access cache instead of a simple
681           GETATTR RPC.  This is because on many NFS servers an ACCESS
682           RPC is much more expensive to service than a GETATTR RPC for
683           files in an NFSv3 mount.  The sysctl variable is enabled by
684           default to maintain the previous behavior.</para>
685
686         <para>The &os; UDF file system now supports a fifo.</para>
687
688         <para>The shared vnode locking for pathname lookups in
689           &man.VFS.9; subsystem has been improved.  This is disabled
690           by default.  Setting a sysctl variable
691           <varname>vfs.lookup_shared</varname> to <literal>1</literal>
692           enables it for better performance.  Note that the
693           <literal>LOOKUP_SHARED</literal> kernel option equivalent to
694           the sysctl variable has been removed.</para>
695       </sect3>
696     </sect2>
697
698     <sect2 id="userland">
699       <title>Userland Changes</title>
700
701       <para>A bug in the &man.atacontrol.8; utility which prevents it
702         from working when <filename>/usr</filename> is not mounted or
703         invoked from <filename>/rescue</filename>, has been
704         fixed.</para>
705
706       <para>The &man.btpand.8; daemon from NetBSD has been added.
707         This daemon provides support for Bluetooth Network Access
708         Point (NAP), Group Ad-hoc Network (GN) and Personal Area
709         Network User (PANU) profiles.</para>
710
711       <para>The &man.ncal.1; utility now supports multibyte
712         characters.</para>
713
714       <para>The &man.config.8; utility now supports
715         multiple <varname>makeoption</varname> lines.</para>
716
717       <para>The &man.csup.1; utility now supports CVSMode to fetch a
718         complete CVS repository.  Note that the rsync transfer mode is
719         currently disabled.</para>
720
721       <para>The &man.dirname.1; utility now accepts multiple arguments
722         in the same way that &man.basename.1; does.</para>
723
724       <para>The &man.du.1; utility now supports an <option>-l</option>
725         flag.  When specified, the &man.du.1; counts a file with
726         multiple hard links as multiple different files.</para>
727
728       <para>The &man.du.1; utility now supports an <option>-A</option> flag
729         to display the apparent size instead of the disk usage.  This can be
730         helpful when operating on compressed volumes or sparse files.</para>
731
732       <para>The &man.du.1; utility now supports a <option>-B
733         <replaceable>blocksize</replaceable></option> option to
734         calculate block counts in blocksize byte blocks.  This is
735         different from the <option>-k</option> or <option>-m</option>
736         options or setting <varname>BLOCKSIZE</varname> and gives an
737         estimate of how much space the examined file hierarchy would
738         require on a file system with the given
739         <replaceable>blocksize</replaceable>.  Unless in
740         <option>-A</option> mode, <replaceable>blocksize</replaceable>
741         is rounded up to the next multiple of 512.</para>
742
743       <para>The &man.dumpfs.8; utility now supports an
744         <option>-f</option> flag, which causes it to list all free
745         fragments in the file system by fragment (block) number.  This
746         new mode does the necessary arithmetic to generate absolute
747         fragment numbers rather than the cg-relative numbers printed
748         in the default mode.</para>
749
750       <para>If <option>-f</option> is passed once, contiguous fragment
751         ranges are collapsed into an X-Y format as free block lists
752         are currently printed in regular dumpfs output.  If specified
753         twice, all block numbers are printed individually, allowing
754         both compact and more script-friendly representation.</para>
755
756       <para>The &man.fetch.1; utility now supports an
757         <option>-i</option> flag which supports If-Modified-Since HTTP
758         1.1 request.  If specified it will cause the file to be
759         downloaded only if it is more recent than the mtime of the
760         file.  Also, <application>libfetch</application> now accepts
761         the mtime in the url structure and a flag to indicate when
762         this behavior is desired.</para>
763
764       <para>The &man.fsck.8; utility now supports a
765         <option>-C</option> flag for <literal>check clean</literal>
766         mode.  This checks if the file system was dismounted cleanly
767         first and then skip file system checks if true.  Otherwise it
768         does full checks.</para>
769
770       <para>The &man.fsck.8; utility now supports a
771         <option>-D</option> flag for damaged recovery mode, which will
772         enable certain aggressive operations that can make
773         &man.fsck.8; to survive with file systems that has very
774         serious data damage.  This is an useful last resort when on
775         disk data damage is very serious and causes &man.fsck.8; to
776         crash otherwise.</para>
777
778       <para>The &man.getaddrinfo.3; function now supports SCTP.</para>
779
780       <para>A bug in the &man.ipfw.8; utility which displays extra
781         messages for a NAT rule even when a <option>-q</option> flag
782         is specified.</para>
783
784       <para>The &man.ln.1; utility now supports a <option>-w</option>
785         flag to check if the source file actually exists.  When the
786         flag is specified and the file does not exist, the &man.ln.1;
787         will put a warning message.</para>
788
789       <para>The &man.make.1; utility now supports a
790         <option>-p</option> flag to print the input graph only, not
791         executing any commands.  The output is the same as <option>-d
792         g1</option>.  When combined with <option>-f
793         /dev/null</option>, only the built-in rules of make are
794         displayed.</para>
795
796       <para>The &man.make.1; utility now supports a
797         <option>-Q</option> flag to cause file banners not to be
798         generated in addition to the same effect of a
799         <option>-q</option> flag when a <option>-j</option> option is
800         specified.</para>
801
802       <para>The &man.make.1; utility now supports
803         <varname>.MAKE.JOB.PREFIX</varname> variable.  If
804         <option>-j</option> and <option>-v</option> are specified, it
805         outputs for each target is prefixed with a token <literal>---
806           <replaceable>target</replaceable> ---</literal> the first part
807         of which can be controlled via the variable.</para>
808
809       <para>The &man.make.1; utility now supports
810         <varname>.MAKE.PID</varname> and <varname>.MAKE.PPID</varname>
811         variable.  These are set to process ID of the &man.make.1;
812         process and one of its parent process respectively.</para>
813
814       <para>The &man.makefs.8; utility to create a file system image
815         from a directory tree has been added.</para>
816
817       <para>The &man.mergemaster.8; utility now supports an
818         <option>-F</option> option to automatically install files that
819         differ only in version control ID strings.</para>
820
821       <para>The &man.mount.8; utility now supports an <option>-o
822         mountprog=<replaceable>/somewhere/mount_xxx</replaceable></option>
823         option to force it to use the specified program to mount the
824         file system instead of calling &man.nmount.2; directly.  This
825         is useful when you want to use third party programs such as
826         FUSE, for example.</para>
827
828       <para>The &man.netstat.1; utility now reports &man.unix.4;
829         sockets listen queue statistics when an <option>-L</option>
830         flag is specified.</para>
831
832       <para>A bug in the &man.netstat.1; utility has been fixed.  It
833         crashed with the following options in the previous
834         versions:</para>
835
836       <screen>&prompt.user; netstat -m -N foo</screen>
837
838       <para>A bug in the &man.netstat.1; utility has been fixed.  The
839         <option>-ss</option> now works in the icmp6 section as
840         expected.</para>
841
842       <para>The &man.pciconf.8; utility now supports a
843         <option>-b</option> flag, which lists any base address
844         registers (BAR) that are assigned resources for each
845         device.</para>
846
847       <para>The &man.powerd.8; program has been improved.  Changes
848         include reasonable CPU load estimation on SMP systems and a
849         new mode named as <literal>hiadaptive</literal> for AC-powered
850         systems which rises frequency twice faster, drops it 4 times
851         slower, prefers twice lower CPU load and has additional delay
852         before leaving the highest frequency after the period of
853         maximum load.</para>
854
855       <para>The &man.stat.1; utility now displays an octal
856         representation of suid, sgid and sticky bits when an
857         <option>-x</option> flag is specified.</para>
858
859       <para>The &man.strndup.3; function has been added.</para>
860
861       <para>The &man.wc.1; utility now supports an <option>-L</option>
862         flag to output the number of characters in the longest input
863         line.</para>
864
865       <para>A bug in the &man.rpc.yppasswdd.8; program which leaves a
866         zombie process when a password or default shell is changed has
867         been fixed.</para>
868
869 <!--
870       <sect3 id="rc-scripts">
871         <title><filename>/etc/rc.d</filename> Scripts</title>
872
873         <para></para>
874       </sect3>
875 -->
876     </sect2>
877
878     <sect2 id="contrib">
879       <title>Contributed Software</title>
880
881       <para><application>ISC BIND</application> has been updated to
882         version 9.4.3-P2.</para>
883
884       <para>The timezone database has been updated from
885         the <application>tzdata2008h</application> release to
886         the <application>tzdata2009f</application> release.</para>
887     </sect2>
888
889     <sect2 id="ports">
890       <title>Ports/Packages Collection Infrastructure</title>
891
892       <para>A bug in the &man.pkg.create.1; which prevents the
893         <option>-n</option> flag from working has been fixed.</para>
894     </sect2>
895
896     <sect2 id="releng">
897       <title>Release Engineering and Integration</title>
898
899       <para>The supported version of
900         the <application>GNOME</application> desktop environment
901         (<filename role="package">x11/gnome2</filename>) has been
902         updated from 2.22 to 2.26.</para>
903
904       <para>The supported version of
905         the <application>KDE</application> desktop environment has
906         been updated from 3.5.10 (<filename
907         role="package">x11/kde3</filename>) to 4.2.2 (<filename
908         role="package">x11/kde4</filename>).</para>
909     </sect2>
910
911 <!--
912     <sect2 id="doc">
913       <title>Documentation</title>
914
915       <para></para>
916     </sect2>
917 -->
918   </sect1>
919
920   <sect1 id="upgrade">
921     <title>Upgrading from previous releases of &os;</title>
922
923     <para arch="amd64,i386">Beginning with &os; 6.2-RELEASE, binary
924       upgrades between RELEASE versions (and snapshots of the various
925       security branches) are supported using the
926       &man.freebsd-update.8; utility.  The binary upgrade procedure
927       will update unmodified userland utilities, as well as unmodified
928       GENERIC or SMP kernels distributed as a part of an official &os;
929       release.  The &man.freebsd-update.8; utility requires that the
930       host being upgraded have Internet connectivity.</para>
931
932     <para>An older form of binary upgrade is supported through the
933       <command>Upgrade</command> option from the main
934       &man.sysinstall.8; menu on CDROM distribution media.  This type
935       of binary upgrade may be useful on non-&arch.i386;,
936       non-&arch.amd64; machines or on systems with no Internet
937       connectivity.</para>
938
939     <para>Source-based upgrades (those based on recompiling the &os;
940       base system from source code) from previous versions are
941       supported, according to the instructions in
942       <filename>/usr/src/UPDATING</filename>.</para>
943
944     <important>
945       <para>Upgrading &os; should, of course, only be attempted after
946         backing up <emphasis>all</emphasis> data and configuration
947         files.</para>
948     </important>
949   </sect1>
950 </article>