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