1Updating Information for FreeBSD current users 2 3This file is maintained by imp@village.org. Please send new entries 4directly to him. See end of file for further details. For commonly 5done items, please see the end of the file. Search for 'COMMON 6ITEMS:' 7 820000205: 9 The xinstall problem has kinda sorta been corrected. The 10 following is known to work by the author of UPDATING. It 11 is what he did to update his laptop. It is likely the same 12 effect as the work around listed in 20000129. 13 make buildworld 14 make installworld This will fail 15 cd usr.bin/xinstall 16 make clean all install NOSHARED=YES 17 cd ../.. 18 make installworld 19 If it doesn't work for you, then I'm sure that there will be 20 another 100 messages in -current. 21 2220000204: 23 libipsec version number changed from 2 to 0. The original 24 commit of Jan 6 incorrectly set this to 2. Remove 25 /usr/lib/libipsec.so.2* before the buildworld and rebuild 26 anything that uses libipsec.so after you install the new 27 version. 28 2920000201: 30 The rcmd related functions have been aligned with other BSD 31 implementations. rlogind and rshd have been changed to use 32 the new API. A make world is recommended to keep them in sync 33 with the libraries they use. 34 35 http://www.FreeBSD.org/cgi/cvsweb.cgi/src/lib/libc/net/rcmd.c 36 has the details. 37 3820000129: 39 {set,get}flags have been added to the tree for rather dubious 40 reasons. 41 42 IF AND ONLY IF installworld fails: 43 make -k -DNOFSCHG installworld 44 make installworld 45 This issue was resolved Feb 5, 2000. 46 4720000125: 48 rcmd_af() is added for multiple address family support. rsh 49 and rlogin have been updated to use this to support INET6. A 50 make world is recommended to keep them in sync with the 51 libraries they use. 52 5320000124: 54 The default way that virtual tables in our default C++ 55 compiler has changed. We used to use THUNKS for virtual 56 inheritance. Unfortunately there are bugs that The GCC 57 developers thought would be fixed in GCC 2.95. However it 58 isn't. 59 60 After this change existing applications written in C++ may 61 give errors like below when you try to run them: 62 63/usr/libexec/ld-elf.so.1: /usr/lib/libstdc++.so.3: Undefined symbol "__vt_7filebuf" 64 65 The only fix is to rebuild the application and any C++ 66 libraries used. 67 6820000124: 69 The management of next_writeable has been move from the 70 kernel to userspace. This means that the burncd command 71 must be in sync with the kernel. So make world is your 72 friend. 73 7420000117: 75 GNU texinfo upgraded to 4.0. It is recommended that you use 76 make buildworld to update. 77 7820000117: 79 CAM_VERSION has been increased. Recompile all programs that 80 depend on it (tosha, camcontrol, etc) when moving to kernels 81 past this date. 82 8320000115: 84 pccard ioctls changed with a commit to have the kernel tell 85 pccardd which device it created, rather than having pccardd 86 dictate it to the kernel. Recompile kernel and 87 pccardd/pccardc together. pccardd/pccardc rely on a kernel 88 Makefile that must be installed prior to building them. Make 89 world will automatically take care of this issue, but you need 90 to know if you are building by hand. 91 9220000109: 93 Your kernel config files need to be changed to s/controller/device/ 94 in them. You will need a new version of config to do this. 95 9620000107: 97 chown & chgrp moved again 98 99 This is a heads up to let you know that you need to 100 rm -f /sbin/chown /bin/chgrp 101 after your next `make world'. Additionally you need to install 102 a new /dev/MAKEDEV (mergemaster(8) will assist you in this). 103 10420000107: 105 SHA-1 password support gone 106 107 As warned yesterday, I've just removed the ability for 108 libcrypt to understand SHA-1 passwords. This was present but 109 undocumented in the tree for the past few months and was 110 removed so it can be reimplemented properly as part of a 111 revamped libcrypt at a later date. Anyone who was actually 112 making use of the feature will have to update their passwords 113 back to MD5 before they reinstall the library. 114 11520000106: 116 ioctl numbers changed for dvdio ioctls. You will need to recompile 117 anything that uses them. wormcontrol has been deprecated in 118 favor of burncd. 119 12019991223: 121 Building linux and svr4 compatibility into the kernel now 122 requires /usr/bin/genassym. Go to /usr/src/usr.bin/genassym, 123 do "make obj ; make clean depend all install" before building 124 your kernel. 125 12619991218: 127 sendmail.cf has moved from /etc/sendmail.cf to 128 /etc/mail/sendmail.cf. You may need to adjust /etc/rc.conf 129 and /etc/rc to cope as well as moving sendmail.cf. 130 13119991216: 132 ntp 4.0.98 has replaced the ancient xntpd. The daemon name 133 changed from xntpd to ntpd, so you may need to update your 134 /etc/rc.conf file. The ntp.conf files are compatible with the 135 old release, unless you are using a local reference clock. 136 Details about ntp4 can be found at http://www.ntp.org/. 137 138 xntpd will be cvs removed from the repo in about a week. 139 14019991213: 141 Soren updated the ata driver. Please update to at least this 142 version before submitting bug reports. 143 14419991210: 145 The ata driver has become the primary ata/ide/atapi driver in 146 the kernel. The wd driver is obsolete. You should upgrade your 147 machine to the new ata driver. You will need to follow the 148 directions for updating the devices in the 19991205 entry. You 149 will need to update all occurances of wd to ad in your config files 150 (/etc/rc.conf, /etc/fstab, etc). A compatibility device exists 151 for wd for the time being, but once you have determined that 152 ata is working for you, transition to the new ad devices. 153 15419991205: 155 Block devices are going away. You will need to update your /dev 156 tree with a fresh copy of MAKEDEV for things to always work in 157 the future. fsck is unable to cope with dirty file systems 158 after this change, so it may work for you or it may not. 159 160 See "To rebuild disk /dev entries" at the end of the file. 161 162 *** All uses of block devices must be converted to char devices. 163 *** Likely the only thing impacted is dumpdev in /etc/rc.conf 164 16519991204: 166 The dc interface has replaced al, ax, dm, pn and mx. The former 167 have been removed. 168 16919991204: 170 Support for the old 'sd' device names has been removed in 171 favor of 'da'. Please update your /etc/fstab, /etc/rc.conf 172 and any other places you might have sd names cached. 173 Generally these changes are as simple as s=/dev/sd=/dev/da=g, 174 but be careful to make sure that things are really that 175 simple. You may also need to create /dev entries for the da 176 devices as well. 177 178 See "To rebuild disk /dev entries" at the end of the file. 179 18019991203: 181 BAD144 support has been removed. Cope or replace the hardware. 182 18319991129: 184 ALPHA users take note. All klds will need to be recompiled for 185 kernels build after this date. It is a good time to update since 186 pal.s will be going away soon. 187 18819991126: 189 MFS_ROOT and MFS_ROOT_SIZE are gone, replaced by MD_ROOT and 190 MD_ROOT_SIZE options in the md driver. md driver now deals with 191 the hacks. You should add md driver to kerneles that have 192 MFS_ROOT, et al. See GENERIC or LINT for details. 193 19419991125: 195 The ep changed a while ago and can no longer be used with hard 196 wired addresses in the config file. 197 19819991122: 199 The bridge drivers for sound cards have been committed. Please 200 see LINT for instructions for your card, if it still works at 201 all. 202 20319991113: 204 Gcc 2.95.2 is now the default compiler. 205 20619991030: 207 /etc/radius.conf file format has changed.The format change is 208 as follows. Each server line in the file should now begin 209 with a new field containing either "auth" for RADIUS 210 authentication, or "acct" for RADIUS accounting. Formerly 211 only authentication was supported. If the first field isn't 212 "auth" or "acct" then the code assumes that "auth" is 213 intended. (That's the compatibility hack.) 214 21519991015: 216 PCCARD has been updated to attach pcic to the isa bus. Therefore 217 you will need to modify kernel config files that have pcic/card 218 in them as follows: 219 controller pcic0 at isa? 220 controller pcic1 at isa? 221 controller card0 222 22319990929: 224 The sigset_t datatype has been changed from an integral type 225 to a compound type and can hold 128 signals. Syscalls directly 226 or indirectly using the new sigset_t have been added as to 227 maintain compatibility with existing binaries. A new kernel must 228 be made and installed and booted with before a make world can 229 be done. 230 231 *************************************************************** 232 RECOMPILE AND REINSTALL KERNEL BEFORE MAKEWORLD 233 *************************************************************** 234 23519990919: 236 New jail syscall format requires recompilation of jail(8) with 237 fresh headers installed (or a make world will do it for you). 238 23919990914: 240 Matt Dillon checked in many vm related things and sent a heads up 241 to -current urging caution and to report vm problems to him. 242 As of the 19th, no killer problems have been reported, but you 243 have been warned. 244 24519990908: 246 The new miibus has been added to the system. If you are using 247 the dm, rl, sf, sis, ste, tl, wb or xl drivers, you need to 248 add "controller miibus0" to your config file. 249 25019990905: 251 /var/cron/log has been moved to /var/log/cron to get all the 252 log files in one place. 253 25419990831: 255 tn3270 has been removed from the base system and added as a port. 256 25719990830: 258 User-visible TCP timers are now expressed in units of 1ms, instead 259 of 500ms, so if you've customized any timer values under 260 ``net.inet.tcp'', multiply them by 500 to preserve TCP's behavior. 261 26219990828: 263 RCS Id tags changed to FreeBSD. This will cause huge cvsup 264 updates. 265 26619990821: 267 On 28-May-1999 libreadline was upgraded from readline-2.2 to 268 readline-4.0. At that time the shared library major version 269 number was bumped from "3" to "4". It has been deemed that 270 the interface change between readline-2.2 and readline-4.0 was 271 not sufficient to warrant the version number bump. 272 273 Thus I have reverted it back to "3". You will need to perform 274 the below immediately before your next ``make world'': 275 cd /usr/lib 276 ls -l libreadline.so.4 277 (if you have /usr/lib/libreadline.so.4) 278 mv libreadline.so.4 libreadline.so.3 279 rm -f libreadline.so 280 ln -s libreadline.so.3 libreadline.so 281 28219990801: 283 Changes to the pccardd kernel interface require that you recompile 284 pccardd for new kernel. 285 28619980725: 287 The ipfw interface to the kernel has changed. You will need to 288 recompile ipfw programs for the new kernel. 289 29019990715: 291 The bpfilter device has been renamed to bpf. You will need to 292 change your config files in order to enable this in newer kernels. 293 29419990704: 295 src/contrib/sys/softupdates is moving to 296 src/sys/contrib/softupdates. Update your symbolic links/etc. 297 29819990702: 299 Major changes have been made to vinum and its interface. See 300 the man page (vinum(8)) for details. Look at the concat, 301 mirror and stripe commands, as well as the SIMPLIFIED 302 CONFIGURATION section. 303 30419990628: 305 Newsyslog.conf has had a minor, but potentially dangerous, 306 change to its username/group syntax. The old syntax was 307 user.group, while the new syntax is user:group. 308 30919990627: 310 Inetd wrapping default has changed. Please see the updated 311 man page for details. 312 31319990623: 314 Compaq Smart Raid driver committed as ida. 315 31619990622: 317 The second phase of syscons cleanup has happened. Some 318 functionality has been made optional. For details, see 319 http://www.freebsd.org/~yokota/sc_update-June.txt 320 Everyone will need to re-config(8) their kernels, but old 321 binaries will work with the new kernel. 322 32319990620: 324 IPFW uid/gid-based filtering support has been committed. This 325 breaks binary compatibility with previous copies of 326 ipfw(8). Any utilities using the ioctl()s of ipfw (especially 327 ipfw(8)) need to be recompiled with the newest headers 328 installed. 329 33019990618: 331 Inetd now wraps all stream-based services, including internals. 332 Syslog "severity" options are honoured. Installed syslog.conf 333 and hosts.allow should be checked. 334 33519990509: 336 Most of the problems with newbus have been corrected, but 337 it is still current and evolving. 338 339 libcam's ABI has changed. You must recompile the world and 340 any ports that use it. 341 34219990427: 343 Massive changes to SMP went into the tree that should speed 344 things up. However, if you experience problems with SMP 345 machines, you can back off to the PRE_SMP_VMSHARE tag in the 346 CVS repository (or run an MP kernel). 347 34819990420: 349 Pccardd and the pccard bus in general seem to be broken or 350 most people. Soren has patches to make it better for some, 351 but not all people. Work is underway to make it better for 352 all people. 353 35419990416: 355 new bus changes integrated into -current. Many problems were 356 initially reported, but most have been fixed. You'll need a 357 new config and to tweak your kernel config file the way that 358 GENERIC was tweaked. Keep a copy of your old kernel when 359 upgrading in case your new kernel doesn't work (and report the 360 breakage to current@freebsd.org). 361 362 As of 19990421 the remaining problems/quirks are 363 364 o sio no longer supports pnp nor pccard. This will be corrected, 365 but the new pccard code needs to be completed. 366 o Some of the sound drivers broke for some people. It seems 367 inconsistant as to who/what/when/where things broke. 368 o Duplicate device entries in your config do not work. Previously 369 they were silently ignored. psm0 seems to be the most common 370 duplicate choice, although some reports have come in from people 371 that wired their scsi disk entries. 372 o You must move the keyboard and mouse attachments from the 373 isa bus to the atkbdc bus. See GENERIC for details. 374 o Machines with multiple host-pci bridges (Intel 450NX) will not 375 probe the second pci bus. 376 o Some probe ordering may have changed, so device naming may change 377 with the new kernel. If you have multiple devices, please double 378 check to make sure they didn't move. This is especially true 379 for cards on different buses. 380 o The bus attachment for vga0 is always isa0 and never pci0 when 381 it is in fact a pci card. It is safe to ignore this. 382 o The format of the boot messages has changed (and is not 383 guaranteed to be constant for a while) so you may see this 384 in some shell scripts that diff dmesg from day to day as well 385 as scripts that parse dmesg output. 386 38719990414: 388 cc -aout sometimes has problems compiling with -g, remove -g 389 from those compilation units affected until this is corrected. 390 391 cc -aout has problems with producing some threaded libraries, 392 so make world -DWANT_AOUT is not functional at this time. 393 394 Since make world for a.out isn't functional, you cannot do 395 make aout-to-elf from a pre-egcs a.out system. To work around 396 this problem, make aout-to-elf using 3.1-stable first (or a 397 pre egcs -current) and then a simple make world will take you 398 the rest of the way with a -current source base. 399 40019990413: 401 Make -j works again for make world. As always, use it with 402 care, and be sure to try a make world w/o -j before reporting 403 problems (that is, know if the problem exists w/o -j before 404 reporting the problem with -j). 405 40619990413: 407 Note cc -aout, which had been broken since the conversion to 408 egcs, now supposedly works. If you have rebuilt things like 409 XFree86 a.out libraries, you should rebuild them again or 410 progams that use them, including netscape, will fail to work. 411 41219990409: 413 NOTE: New c++ compiler cannot be used with c++ binaries from 414 the old compiler and vice versa. 415 41619990408: 417 In recent days egcs has been imported into the tree. A number 418 of problems have been discussed in -current. Here is a highlight 419 of a few of the more common ones. With the exception of make 420 -j n, they have been claimed to have been fixed. 421 422 c++ is broken after make world: This is correct. Because we 423 changed compilers two make worlds are necessary to get C++ 424 working again. The code generated by the old compiler and new 425 compiler are not compatible, so things wind up being 426 undefined. 427 428 cpp is broken in make world: There was a window where cpp 429 would be built incorrectly. The fix for this is 430 cd src/gnu/usr.bin/cc 431 make clean 432 make all 433 make install 434 and this should correct your problems. See the -current 435 archives for a version of this that does moer cleaning. 436 437 Make -j n doesn't work. Work contiunes to make this work, 438 I've seen no reports of success as of April 7th. 439 44019990329: 441 Previously, one would define "NOAOUT" to keep from building 442 the legacy a.out bits. Now one would define "WANT_AOUT" to 443 build them. 444 44519990316: 446 The name of the old wd.c and atapi.c based CDROM driver has 447 been changed back to wcd. So update your config file to use 448 "device wcd" instead of "device acd". 449 45019990314: 451 For those of you using the VN device as a loadable module, 452 please be aware that the new VN device has been committed to 453 -4.x and cannot yet be used as a loadable module. This will 454 be fixed in the future. 455 45619990309: 457 New loader.rc mechanism. Please see src/sys/boot/README for 458 details. 459 46019990225: 461 struct proc size changed. Recompile kernel and the 462 usual suspects. Make world if in doubt. 463 46419990214: 465 The nlpt driver has changed names back to be the lpt driver. 466 See ppbus(4) or http://www.freebsd.org/~nsouch/ppbus.html 467 for proper configuration details. 468 46919990210: 470 The 'lpt' driver is now obsolete. Replace it with the 'nlpt' 471 driver and 'ppbus' controller combination. 472 47319990209: 474 New devstat API requires recompilation of libdevstat, systat, 475 iostat, vmstat and rpc.rstatd. A new kernel is also required. 476 make world + building a kernel should do all of this. Any 477 ports that use devstat need to be recompiled as well. 478 47919990125: 480 Linux threads options has gone away (they are now standard in 481 the FreeBSD kernel). A recompile of all libkvm using programs 482 is in order (or better yet a make world). 483 48419990122: 485 On or about this date there was a small window when the boot 486 blocks had some minor problems which seemed to force one to 487 edit /etc/fstab. This has been corrected, if you are seeing this 488 problem, please rebuild and reinstall your boot blocks. 489 49019990121: 491 Vinum has changed. The "vinum read" command has changed. For 492 updates, please see 493 494http://www.freebsd.org/cgi/getmsg.cgi?fetch=800363+0+current/freebsd-current 495 496 for details. 497 498 Matt Dillon committed a boatload of VM changes, for 499 information please see 500 501http://www.freebsd.org/cgi/getmsg.cgi?fetch=886676+0+current/freebsd-current 502 or 503http://www.freebsd.org/cgi/getmsg.cgi?fetch=827400+0+current/freebsd-current 504 505 for details. These changes will likely not impact anybody, 506 but large chagnes to the VM need at least a heads up. 507 50819990120: 509 Stable branch created. You might want to consider using this 510 branch. It is tagged with RELENG_3. 511 51219990119: 513 More work on the syscons driver has been committed. Since 514 files moved around, you will need to reconfigure your kernel, 515 and make clean; make depend before rebuilding the kernel. No 516 config file changes are needed. 517 51819990111: 519 New keyboard and video card drivers are introduced as the first 520 stage of console driver reorganization. You are required to 521 update the kernel configuration file and rebuild the kernel. 522 kbdcontrol, vidcontrol, and screen savers also need recompilation. 523 The instruction can be found in 524 525 http://www.freebsd.org/~yokota/sc_update.txt 526 527 It has notes on splash screen too. 528 52919990106: 530 Robert Nordier was kind enough to make this page to enable people to 531 install the new bootblocks: 532 533 http://www.freebsd.org/~rnordier/boot.txt 534 535 When updating to ELF, make sure that you have updated your 536 /etc/rc files which have different ldconfig invocations for 537 elf and aout. Otherwise things like X will stop working with 538 messages about being unable to find library files. The 539 mergemaster utility in ports/sysutils/mergemaster helps to 540 keep critical files like this in sync, and its use is 541 recommended. 542 54319990104: 544 Information about ELF day (see 19981230) can be found in 545 546 http://www.freebsd.org/~peter/elfday.html 547 548 about the upcoming change, its motivations and instructions 549 for doing the upgrade. 550 55119981230: 552 You should install new bootblocks now. The ELF kernel will 553 become default soon. In addition, you'll need to upgrade 554 your userland programs to ELF before then as well. Use 555 make aout-to-elf to upgrade your userland programs (old 556 a.out programs in, for example, /usr/local/bin will 557 continue to work, even after the upgrade). See src/Makefile 558 for more details. 559 56019981224: 561 The old wcd driver has been deleted from the kernel. The 562 driver that replaces it is named acd. You'll need to change 563 this in your configuration files. 564 565 Failure to do this will result in "ATAPI CD-ROMs not 566 configured" at boot time. 567 568 The floppy tape driver (ft) has been removed from the kernel, 569 with no replacement driver. 570 57119981202: 572 New groups from 19981201 commented out of mtree, so they 573 aren't strictly needed, but still a good idea to have. 574 57519981201: 576 New user/group added: bind. From src/etc/master.passwd and 577 src/etc/group: 578 % grep <newstuff> /usr/src/etc/group 579 bind:*:53: 580 % grep <newstuff> /usr/src/etc/master.passwd 581 tty:*:4:65533::0:0:Tty Sandbox:/:/sbin/nologin 582 kmem:*:5:65533::0:0:KMem Sandbox:/:/sbin/nologin 583 bind:*:53:53::0:0:Bind Sandbox:/:/sbin/nologin 584 58519981118: 586 PAM integrated into the tree. Requires new /etc/pam.conf file 587 to silence warnings from authentication programs (login, etc). 588 See src/etc/pam.conf for a sample. 589 590COMMON ITEMS: 591 592 To build a kernel 593 ----------------- 594 Update config, genassym and go: 595 cd src/usr.bin/genassym 596 make depend all install clean 597 cd ../../usr.sbin/config 598 make depend all install clean 599 cd ../../sys/i386/conf 600 config YOUR_KERNEL_HERE 601 cd ../../compile/YOUR_KERNEL_HERE 602 make depend && make 603 make install 604 605 To rebuild disk /dev entries 606 ---------------------------- 607 608 MAKEDEV should be copied from src/etc/MAKEDEV to /dev before 609 starting the following: 610 611 For N in the list of disks 612 MAKEDEV N # eg ad0 613 for M in the list of slices 614 MAKEDEV NsMa # eg ad0s1a 615 616 617 To rebuild everything 618 --------------------- 619 make world 620 621 Except when it doesn't work. 622 623 To update from 3.x to 4.0 stable 624 -------------------------------- 625 cd /usr/src 626 make buildworld 627 cd sbin/mknod 628 make install 629 <follow directions to build/install a kernel> 630 <follow rebuild disk /dev entries above> [*] 631 reboot 632 <in single user> 633 cd /usr/src 634 make -DNOINFO installworld 635 make installworld 636 637 [*] You may need to switch from wd to ad ala 19991210 638 639 640FORMAT: 641 642This file contains a list, in reverse chronologocal order, of major 643breakages in tracking -current. Not all things will be listed here, 644and it only starts on November 18, 1998. If you have an earlier 645version of FreeBSD, you are on your own to get to November 18, 1998. 646 647Please filter your entries through Warner Losh (imp@village.org) so 648that the style, formatting, etc of this file can be maintained. 649 650$FreeBSD$ 651