article.xml revision 151311
1<articleinfo> 2 <title>&os;/&arch; &release.current; Release Notes</title> 3 4 <corpauthor>The &os; Project</corpauthor> 5 6 <pubdate>$FreeBSD: head/release/doc/en_US.ISO8859-1/relnotes/article.sgml 151311 2005-10-14 09:57:08Z yar $</pubdate> 7 8 <copyright> 9 <year>2000</year> 10 <year>2001</year> 11 <year>2002</year> 12 <year>2003</year> 13 <year>2004</year> 14 <year>2005</year> 15 <holder role="mailto:doc@FreeBSD.org">The &os; Documentation Project</holder> 16 </copyright> 17 18 <legalnotice id="trademarks" role="trademarks"> 19 &tm-attrib.freebsd; 20 &tm-attrib.ibm; 21 &tm-attrib.ieee; 22 &tm-attrib.intel; 23 &tm-attrib.sparc; 24 &tm-attrib.general; 25 </legalnotice> 26 27 <abstract> 28 <para>The release notes for &os; &release.current; contain a summary 29 of the changes made to the &os; base system on the 30 &release.branch; development line. 31 This document lists applicable security advisories that were issued since 32 the last release, as well as significant changes to the &os; 33 kernel and userland. 34 Some brief remarks on upgrading are also presented.</para> 35 </abstract> 36</articleinfo> 37 38<sect1 id="intro"> 39 <title>Introduction</title> 40 41 <para>This document contains the release notes for &os; 42 &release.current; on the &arch.print; hardware platform. It 43 describes recently added, changed, or deleted features of &os;. 44 It also provides some notes on upgrading 45 from previous versions of &os;.</para> 46 47<![ %release.type.current [ 48 49 <para>The &release.type; distribution to which these release notes 50 apply represents the latest point along the &release.branch; development 51 branch since &release.branch; was created. Information regarding pre-built, binary 52 &release.type; distributions along this branch 53 can be found at <ulink url="&release.url;"></ulink>.</para> 54 55]]> 56 57<![ %release.type.snapshot [ 58 59 <para>The &release.type; distribution to which these release notes 60 apply represents a point along the &release.branch; development 61 branch between &release.prev; and the future &release.next;. 62 Information regarding 63 pre-built, binary &release.type; distributions along this branch 64 can be found at <ulink url="&release.url;"></ulink>.</para> 65 66]]> 67 68<![ %release.type.release [ 69 70 <para>This distribution of &os; &release.current; is a 71 &release.type; distribution. It can be found at <ulink 72 url="&release.url;"></ulink> or any of its mirrors. More 73 information on obtaining this (or other) &release.type; 74 distributions of &os; can be found in the <ulink 75 url="&url.books.handbook;/mirrors.html"><quote>Obtaining 76 &os;</quote> appendix</ulink> to the <ulink 77 url="&url.books.handbook;/">&os; 78 Handbook</ulink>.</para> 79 80]]> 81 82 <para>All users are encouraged to consult the release errata before 83 installing &os;. The errata document is updated with 84 <quote>late-breaking</quote> information discovered late in the 85 release cycle or after the release. Typically, it contains 86 information on known bugs, security advisories, and corrections to 87 documentation. An up-to-date copy of the errata for &os; 88 &release.current; can be found on the &os; Web site.</para> 89 90</sect1> 91 92<sect1 id="new"> 93 <title>What's New</title> 94 95 <para>This section describes 96 the most user-visible new or changed features in &os; 97 since &release.prev;. 98 In general, changes described here are unique to the &release.branch; 99 branch unless specifically marked as &merged; features. 100 </para> 101 102 <para>Typical release note items 103 document recent security advisories issued after 104 &release.prev.historic;, 105 new drivers or hardware support, new commands or options, 106 major bug fixes, or contributed software upgrades. They may also 107 list changes to major ports/packages or release engineering 108 practices. Clearly the release notes cannot list every single 109 change made to &os; between releases; this document focuses 110 primarily on security advisories, user-visible changes, and major 111 architectural improvements.</para> 112 113 <sect2 id="security"> 114 <title>Security Advisories</title> 115 116 <para></para> 117 </sect2> 118 119 <sect2 id="kernel"> 120 <title>Kernel Changes</title> 121 122 <para>A new sysctl variable <varname>kern.malloc_stats</varname> 123 has been added. This allows to export kernel malloc 124 statistics via a binary structure stream.</para> 125 126 <para>A new sysctl variable <varname>vm.zone_stats</varname> 127 has been added. This allows to export &man.uma.9; allocator 128 statistics via a binary structure stream.</para> 129 130 <sect3 id="boot"> 131 <title>Boot Loader Changes</title> 132 133 <para>A new option <option>-S</option>, 134 which allows setting the <filename>boot2</filename> 135 serial console speed in the <filename>/boot.config</filename> 136 file or on the <prompt>boot:</prompt> prompt line, 137 has been added.</para> 138 139 <para arch="i386,amd64">A new loader tunable 140 <varname>comconsole_speed</varname> to change 141 the serial console speed has been added. 142 If the previous stage boot loader requested a serial console 143 then the default speed is determined from the current serial port 144 speed, and otherwise it is set to 9600 or the value of 145 the kernel option <literal>BOOT_COMCONSOLE_SPEED</literal> 146 at compile time.</para> 147 148 <!-- Above this line, order boot loader changes by keyword--> 149 150 </sect3> 151 152 <sect3 id="proc"> 153 <title>Hardware Support</title> 154 155 <para>The &man.acpi.thermal.4; driver now supports 156 passive cooling.</para> 157 158 <para>Support for the PadLock Security Co-processor in VIA C3 159 processors has been added to the &man.crypto.9; subsystem. 160 &merged;</para> 161 162 <para>A bug which prevents the &man.ichsmb.4; kernel module 163 from unloading has been fixed.</para> 164 165 <para arch="ia64">The loader tunable <varname>debug.mpsafevfs</varname> 166 is set to <literal>1</literal> by default.</para> 167 168 <para arch="amd64">The smbios(4) driver support for amd64 has been 169 added.</para> 170 171 <para arch="i386">A new loader tunable 172 <varname>hw.apic.enable_extint</varname> has been added. 173 This tunable can be used not to mask the ExtINT pin on the first 174 I/O APIC. At least one chipset for Intel Pentium III seems 175 to need this even though all of the pins in the 8259A's are masked. 176 The default is still to mask the ExtINT pin.</para> 177 178 <sect4 id="mm"> 179 <title>Multimedia Support</title> 180 181 <para>The &man.sound.4; driver now supports 182 wider range sampling rate, multiple precisions choice, 183 and 24/32 bit PCM format conversion.</para> 184 185 <para>The &man.snd.als4000.4; driver is now MPSAFE.</para> 186 187 <para>The &man.snd.cmi.4; driver is now MPSAFE.</para> 188 189 <para>The &man.snd.via8233.4; driver is now MPSAFE.</para> 190 191 <para arch="amd64">The &man.snd.via8233.4; driver is now supported 192 on &os;/amd64.</para> 193 194 <para>The &man.snd.via82c686.4; driver is now MPSAFE.</para> 195 </sect4> 196 197 <sect4 id="net-if"> 198 <title>Network Interface Support</title> 199 200 <para>The &man.dc.4; driver is now MPSAFE. &merged;</para> 201 202 <para>The &man.de.4; driver has been converted to the &man.bus.dma.9; 203 API and is now MPSAFE.</para> 204 205 <para>The &man.ed.4; driver is now MPSAFE.</para> 206 207 <para>The &man.el.4; driver has been removed.</para> 208 209 <para>The &man.my.4; driver is now MPSAFE. &merged;</para> 210 211 <para>The &man.pcn.4; driver is now MPSAFE. &merged;</para> 212 213 <para>The &man.sf.4; driver is now MPSAFE. &merged;</para> 214 215 <para>The &man.ste.4; driver is now MPSAFE.</para> 216 </sect4> 217 </sect3> 218 219 <sect3 id="net-proto"> 220 <title>Network Protocols</title> 221 222 <para>The &man.gre.4; driver, which is for GRE encapsulation 223 found in RFC 1701 and RFC 1702 now supports IPv6 over GRE.</para> 224 225 <para>The path MTU discovery for multicast packets in the &os; 226 &man.ip6.4; stack has been disabled by default because 227 notifying path MTU by a lot of routers in multicast 228 can be a kind of distributed Denial-of-Service attack to a router. 229 This feature can be enabled by using a new sysctl variable 230 <varname>net.inet6.ip6.mcast_pmtu</varname>.</para> 231 232 <para>The &man.ipfw.4;, IP packet filter now supports IPv6. 233 The &man.ip6fw.8; is deprecated and will be removed 234 in the future releases.</para> 235 236 <para>The &man.natm.4;, Native Mode ATM protocol layer is now MPSAFE.</para> 237 238 <para>A new sysctl variable <varname>net.inet.icmp.reply_from_interface</varname> 239 has been added. This allows the &man.icmp.4; 240 reply to non-local packets generated with 241 the IP address the packet came through in. 242 This is useful for routers to show in &man.traceroute.8; 243 the actual path a packet has taken instead of 244 the possibly different return path.</para> 245 246 <para>A new sysctl variable <varname>net.inet.icmp.quotelen</varname> 247 has been added. This allows to change length of 248 the quotation of the original packet in an ICMP reply. 249 The minimum of 8 bytes is internally enforced. 250 The maximum quotation is the remaining space in the 251 reply mbuf. This option is added in response to the 252 issues raised in I-D 253 <filename>draft-gont-icmp-payload-00.txt</filename>.</para> 254 255 <para>The &man.icmp.4; now always quotes the entire TCP header 256 when responding and allocate an mbuf cluster if needed. 257 This change fixes the TCP issues raised in I-D 258 <filename>draft-gont-icmp-payload-00.txt</filename>.</para> 259 260 <para>A new socket option <literal>IP_MINTTL</literal> has been added. 261 This may be used to set the minimum acceptable 262 TTL a packet must have when received on a socket. 263 All packets with a lower TTL are silently dropped, 264 and this works on already connected/connecting and 265 listening sockets for RAW, UDP, and TCP. This option 266 is only really useful when set to 255 preventing packets 267 from outside the directly connected networks reaching 268 local listeners on sockets. Also, this option allows 269 userland implementation of <quote>The Generalized TTL 270 Security Mechanism (GTSM)</quote> found in RFC 3682.</para> 271 272 <para>The stealth forwarding now supports IPv6 as well as IPv4. 273 This behavior can be controlled by using a new sysctl variable 274 <varname>net.inet6.ip6.stealth</varname>.</para> 275 </sect3> 276 277 <sect3 id="disks"> 278 <title>Disks and Storage</title> 279 280 <para>The &man.ata.4; driver now supports a workaround 281 for some controllers whose DMA does not work properly 282 in 48bit mode. For the suspicious controllers 283 the PIO mode will be used for access to over 137GB areas.</para> 284 285 <para>A new GEOM class <literal>GEOM_ZERO</literal> has been added. 286 It creates very huge provider (41PB) <filename>/dev/gzero</filename> 287 and mainly for performance testing. 288 On <literal>BIO_READ</literal> request it zero-fills 289 <varname>bio_data</varname> and on <literal>BIO_WRITE</literal> 290 it does nothing.</para> 291 292 <para>The <literal>GEOM_LABEL</literal> class now supports 293 Ext2FS and ReiserFS.</para> 294 295 <para>The &man.mpt.4; driver has been updated to support 296 various new features such as RAID volume and RAID member 297 state/settings reporting, periodic volume re-synchronization 298 status reporting, and sysctl variables for volume 299 re-synchronization rate, volume member write cache status, 300 and volume transaction queue depth.</para> 301 302 <para>A new GEOM-based disk encryption facility, GEOM_ELI, has been 303 added. It uses the &man.crypto.9; framework for hardware acceleration 304 and supports different cryptographic algorithms. See &man.geli.8; for 305 more information. &merged;</para> 306 307 <para>The &man.umass.4; driver now supports 308 <literal>PLAY_MSF</literal>, 309 <literal>PLAY_TRACK</literal>, 310 <literal>PLAY_TRACK_REL</literal>, 311 <literal>PAUSE</literal>, 312 <literal>PLAY_12</literal> commands so that 313 the &man.cdcontrol.1; utility can handle USB CD drive.</para> 314 </sect3> 315 316 <sect3 id="fs"> 317 <title>File Systems</title> 318 319 <para>A part of the FreeBSD NFS subsystem (the interface with 320 the protocol stack and callouts) is now MPSAFE.</para> 321 </sect3> 322 323 <sect3> 324 <title>Contributed Software</title> 325 326 <para></para> 327 </sect3> 328 </sect2> 329 330 <sect2 id="userland"> 331 <title>Userland Changes</title> 332 333 <para>Padding of <varname>ai_addrlen</varname> 334 in <varname>struct addrinfo</varname> has been removed, 335 which was originally for the ABI compatibility. 336 For example, this change break the ABI compatibility of 337 &man.getaddrinfo.3; function on 64-bit architecture including 338 &os;/alpha, &os;/amd64, &os;/ia64, and &os;/sparc64.</para> 339 340 <para>The &man.bsdiff.1; and &man.bspatch.1; utilities 341 have been added. These are tools for constructing and 342 applying binary patches.</para> 343 344 <para>The &man.cmp.1; utility now supports an <option>-h</option> 345 flag to compare the symbolic link itself rather than the 346 file that the link points to.</para> 347 348 <para>The &man.ifconfig.8; utility now supports 349 a <option>-k</option> flag to allow printing 350 potentially sensitive keying material to standard output. 351 This sensitive information will not be printed by default.</para> 352 353 <para>The &man.ifconfig.8; utility now supports a <option>-tunnel</option> 354 parameter, which is just an alias for <option>deletetunnel</option>, 355 yet is more convenient and easier to type.</para> 356 357 <para>The <option>-vlandev</option> parameter to &man.ifconfig.8; 358 no longer requires a network interface as its argument. The 359 argument still is supported for backward compatibility, but now 360 it is deprecated and its use is discouraged.</para> 361 362 <para>The &man.libmemstat.3; library has been added. 363 This is for use by debugging and monitoring applications 364 in tracking kernel memory statistics. It provides an 365 abstracted interface to &man.uma.9; and &man.malloc.9; 366 statistics, wrapped around the binary stream sysctl variables 367 for the allocators. &merged;</para> 368 369 <para>A new function &man.memmem.3; has been implemented in 370 <filename>libc</filename>. This is the binary equivalent to 371 &man.strstr.3; and found in <filename>glibc</filename>.</para> 372 373 <para>The &man.moused.8; now supports an <option>-H</option> flag 374 to enable horizontal virtual scrolling similar to a 375 <option>-V</option> flag for vertical virtual scrolling.</para> 376 377 <para>The &man.netstat.1; utility now supports an 378 <option>-h</option> flag for interface stats mode, 379 which prints all interface statistics in human readable form.</para> 380 381 <para>A new functions, &man.pidfile.3;, which allow reliable 382 pidfiles handling have been implemented in 383 <filename>libutil</filename>.</para> 384 385 <para>The &man.ping.8; utility now supports <quote>a sweeping 386 ping</quote> in which &man.icmp.4; payload of 387 packets being sent is increased with given step. 388 This is useful for testing problematic channels, MTU issues 389 or traffic policing functions in networks.</para> 390 391 <para>The &man.pkill.1; utility now supports a 392 <option>-F</option> option which allows to 393 restrict matches to a process whose PID is stored in the 394 pidfile file. When another new option <option>-L</option> 395 is also specified, the pidfile file must be locked with the 396 &man.flock.2; syscall or created with &man.pidfile.3;.</para> 397 398 <para>The &man.powerd.8; program now supports a 399 <option>-P</option> option which allows to specify pidfile.</para> 400 401 <para>The shared library version number of all libraries have 402 been updated due to some possible ABI changes. The libraries 403 include: snmp_*, libdialog, libg2c, libobjc, 404 libreadline, libregex, libstdc++, libkrb5, libalias, libarchive, 405 libbegemot, libbluetooth, libbsnmp, libbz2, libc_r, libcrypt, 406 libdevstat, libedit, libexpat, libfetch, libftpio, libgpib, 407 libipsec, libkiconv, libmagic, libmp, libncp, libncurses, 408 libnetgraph, libngatm, libopie, libpam, libpthread, libradius, 409 libsdp, libsmb, libtacplus, libthr, libthread_db, libugidfw, 410 libusbhid, libutil, libvgl, libwrap, libypclnt, libm, libcrypto, 411 libssh, and libssl.</para> 412 413 <para>The <function>wcsdup()</function> function has been 414 implemented. This function is popular in Microsoft and GNU 415 systems.</para> 416 417 <sect3 id="rc-scripts"> 418 <title><filename>/etc/rc.d</filename> Scripts</title> 419 420 <para>The <filename>gbde_swap</filename> script has 421 been removed in favor a new <filename>encswap</filename> 422 script which also supports &man.geli.8; for swap 423 encryption.</para> 424 425 <para>The <filename>geli</filename> and <filename>geli2</filename> 426 scripts has been added for &man.geli.8; device 427 configuration on boot.</para> 428 429 <para>The <varname>removable_interfaces</varname> variable 430 has been removed.</para> 431 432 <para>A new variable <varname>ifconfig_<replaceable>ifn</replaceable></varname> 433 has been added. This allows 434 <filename>/etc/rc.d/netif</filename> 435 to be used to start and stop an interface 436 on a purely manual basis.</para> 437 </sect3> 438 </sect2> 439 440 <sect2 id="contrib"> 441 <title>Contributed Software</title> 442 443 <para><application>libpcap</application> has been updated 444 to v0.9.1 (release).</para> 445 446 <para><application>sendmail</application> has been updated from 447 version 8.13.3 to version 8.13.4.</para> 448 449 <para><application>tcpdump</application> has been updated 450 to v3.9.1 (release).</para> 451 </sect2> 452 453 <sect2 id="ports"> 454 <title>Ports/Packages Collection Infrastructure</title> 455 456 <para>The &man.pkg.version.1; now supports an <option>-o</option> 457 flag to show the origin recorded on package generation 458 instead of the package name, and an <option>-O</option> flag 459 to list packages whose registered origin is origin only.</para> 460 461 <para>The &man.portsnap.8; utility (<filename>sysutils/portsnap</filename>) 462 has been added into the &os; base system. This is a secure, 463 easy to use, fast, lightweight, and generally good way for 464 users to keep their ports trees up to date.</para> 465 </sect2> 466 467 <sect2 id="releng"> 468 <title>Release Engineering and Integration</title> 469 470 <para>The default partition sizing algorithm of the 471 &man.sysinstall.8; utility has been changed.</para> 472 473 <itemizedlist> 474 <listitem> 475 <para>On systems where the disk capacity is larger than (3 * RAMsize + 10GB), 476 the default sizes will now be as follows:</para> 477 478 <informaltable frame="none" pgwide="0"> 479 <tgroup cols="2"> 480 <colspec colwidth="1*"> 481 <colspec colwidth="2*"> 482 <thead> 483 <row> 484 <entry>Partition</entry> 485 <entry>Size</entry> 486 </row> 487 </thead> 488 489 <tbody> 490 <row><entry>swap</entry><entry>RAMsize * 2</entry></row> 491 <row><entry><filename>/</filename></entry><entry>512 MB</entry></row> 492 <row><entry><filename>/tmp</filename></entry><entry>512 MB</entry></row> 493 <row><entry><filename>/var</filename></entry><entry>1024 MB + RAMsize</entry></row> 494 <row><entry><filename>/usr</filename></entry><entry>the rest (8GB or more)</entry></row> 495 </tbody> 496 </tgroup> 497 </informaltable> 498 </listitem> 499 500 <listitem> 501 <para>On systems where the disk capacity is larger than 502 (RAMsize / 8 + 2 GB), the default sizes will be 503 in the following ranges, with space allocated 504 proportionally:</para> 505 506 <informaltable frame="none" pgwide="0"> 507 <tgroup cols="2"> 508 <colspec colwidth="1*"> 509 <colspec colwidth="2*"> 510 <thead> 511 <row> 512 <entry>Partition</entry> 513 <entry>Size</entry> 514 </row> 515 </thead> 516 517 <tbody> 518 <row><entry>swap</entry><entry>from RAMsize / 8 to RAMsize * 2</entry></row> 519 <row><entry><filename>/</filename></entry><entry>from 256MB to 512MB</entry></row> 520 <row><entry><filename>/tmp</filename></entry><entry>from 128MB to 512MB</entry></row> 521 <row><entry><filename>/var</filename></entry><entry>from 128MB to 1024MB</entry></row> 522 <row><entry><filename>/usr</filename></entry><entry>from 1536MB to 8192MB</entry></row> 523 </tbody> 524 </tgroup> 525 </informaltable> 526 </listitem> 527 528 <listitem> 529 <para>On systems with even less disk space, the existing behavior is not 530 changed.</para> 531 </listitem> 532 </itemizedlist> 533 </sect2> 534 535 <sect2 id="doc"> 536 <title>Documentation</title> 537 538 <para>Documentation of existing functionality has been improved by 539 the addition of the following manual pages: 540 &man.acpi.sony.4;, &man.snd.mss.4;, &man.snd.t4dwave.4;.</para> 541 </sect2> 542</sect1> 543 544<sect1 id="upgrade"> 545 <title>Upgrading from previous releases of &os;</title> 546 547 <para></para> 548 549 <important> 550 <para>Upgrading &os; should, of course, only be attempted after 551 backing up <emphasis>all</emphasis> data and configuration 552 files.</para> 553 </important> 554</sect1> 555