1 Updating Information for FreeBSD current users
3 This file is maintained and copyrighted by M. Warner Losh
4 <imp@village.org>. Please send new entries directly to him. See end
5 of file for further details. For commonly done items, please see the
6 COMMON ITEMS: section later in the file.
9 sos added VCD/SVCD support to ata driver and that needs the
10 kernel and burncd to be in sync.
13 The procfs pseudo-filesystem has now been converted to use the
14 pseudofs framework. If you have 'options PROCFS' in your
15 kernel config, you'll need to add 'options PSEUDOFS' if it's
18 This change temporarily breaks truss(1); use ktrace(1) instead
19 until the issue has been resolved.
22 A security hole in OpenSSH involving `UseLogin yes' has been
26 You need to remove /usr/obj/.../usr.bin/tip before rebuilding
30 Most of the awk issues have been resolved. Some rough
31 edges may be left, but for the most part things should be
32 back to "normal." For CURRENT's usual definition of "normal."
35 Awk has been upgraded to the one true awk from bell labs. Expect
36 choppy waves in the upgrade process.
39 The asr driver problem has been resolved.
42 Due to changes in other parts of the system, the asr driver
43 now causes the system to panic on boot. Do not use it pending
44 correction. Comment it out of any kernel config file that you
45 try to use from this date forward.
48 When crossbuilding, use TARGET=xxx where you used to use
49 MACHINE=xxx. You don't need to set TARGET_ARCH and TARGET,
50 unless you are changing both of them. To cross build pc98 on
51 an alpha, for example, you need to set TARGET=pc98 and
55 The kernel interface that burncd depends on has changed.
56 You must recompile both the kernel and userland applications
60 When crossbuilding, please set TARGET_ARCH rather than
61 MACHINE_ARCH to indicate the target. In the future, one will
62 set TARGET_MACHINE where you set MACHINE now. At the moment,
63 setting MACHINE alone for same MACHINE_ARCH machines works
64 (eg, you can build pc98 on a i386 machine and vice versa).
67 Some weird problems result from using ACPI on some machines.
68 To disable ACPI you can add
69 hint.acpi.0.disable="1"
70 to /boot/loader.conf (or by putting set X=Y at the boot
73 Alternatively, you can remove it from /boot/kernel/acpi.ko
74 or use the MODULES_OVERRIDE function in your kernel config
75 file and not list acpi in that list.
78 The buildworld has been fixed. You may need to install
79 the 4.x compatibility libraries for some old binaries
81 cd src/lib/compat/compat4x.i386
85 There's a bug in the world build process. The cross-tools
86 are build with the NEW headers, but the OLD libc.a. This
87 leads to all kinds of problems with the new libc. A temporary
89 CFLAGS="-O -pipe -D_OLD_STDIO"
90 before building world when upgrading from 4.x to current. This
91 can be removed afterwards.
93 A proper fix to the buildworld target is needed.
96 Peter has committed his new kthread nfs client/server code.
97 NFS may be unstable after this date.
100 KSE has hit the tree. Lots of things are now different in
101 the kernel. While a few problems were introduced in the
102 initial commit, most of the major ones have been found and
106 In OLDCARD, CardBus bridges appear to be stable. The work
107 arounds described in the 20010604 entry are now no longer
108 necessary and will be ignored. Most insert/remove problems
109 have been rectified around this date.
112 named now runs as user bind and group bind rather than as
113 root. If named_enable is set to YES in /etc/rc.conf, ensure
114 that user bind is available in /etc/passwd (using vipw(8))
115 and that group bind is available in /etc/group. Also make
116 sure that user or group bind has read (and not write)
117 permission for your name server configuration and that it
118 has read and write permission for your slave zone files and
121 If you wish to continue to run named as root (a less secure
122 alternative), add a line to /etc/rc.conf saying
127 The PAM libraries have had an API upgrade that is beyond
128 the ability of the shared library major number to handle.
129 It is manifested by PAM-using ports dumping core. The
130 solution is to rebuild those ports.
133 The kernel compile module has moved from src/sys/compile/FOO
134 to src/sys/${MACHINE}/compile/FOO.
137 The pccard modem issue from 20010613 has been corrected.
138 OLDCARD support is still a little weak in -current. slot 1 is
139 known not to work on some TI based cardbus bridges. Some
140 cardbus bridges do not properly detect insert/removal events.
141 IRQ configuration needs more safety belts.
144 Softupdates problems have been corrected.
147 Peter ripped out the linkerset support. You must, as always,
148 rerun config after you cvsup if you are using the traditional
149 kernel building methods.
152 pccard modems may not work with current after 20010604 date. Some
153 do, others result in panics. *MAKE*SURE* that you update your
154 config and /etc/rc.conf ala the 20010604 entry, or you will have
155 problems (this issue will be fixed, it just hasn't been yet).
158 SOFTUPDATES seem to be broken since the middle of May or so. Do not
159 use them in current. You can disable softupdates on all mounted
160 partitions, or remove SOFTUPDATES the kernel config file.
163 After Peter's commits to the hints code, people have been noticing
164 that certain devices are attached (or try to) twice. This is due
165 to having both static hints as well as a /boot/device.hints. To
166 work around this issue, please use only one or the other mechanism
167 until this bug is fixed.
169 Please note that a feature of config is that if you have config
170 file FOO and FOO.hints, it automatically adds FOO.hints to the
171 hints.c file, wheather you want it to or not.
174 Locale names have changed to match other systems better.
177 pccard support for pci cards has been committed. You must change
178 your /etc/pccard.conf irq lines. It must match the irq used by
179 pcic device. Interrupt storms may result if you fail to do this.
180 Interrupt storms look a lot like a hang.
182 You must also install a new pccardd, otherwise you will get an
183 interrupt storm at card reset time (just after it tells you what
186 pccardd_flags="-I" is necessary for the time being. It tells pccardd
187 not to ask the kernel if the interrupt is really free or not before
188 using it. You can either change the /etc/pccard.conf irq lines to
189 match pcic, or add "-i X" to the pccardd_flags.
192 INSTALL=install -C is being deprecated. If you want to do this,
193 use COPY=-C instead. The former method will be supported for only
194 a limited time. If you see
196 install: warning: the -d and -C options may not be specified together
198 in your makeworld, then you need to migrate towards using
202 It appears that vm is now stable enough to use again. However,
203 there may be other problems, so caution is still urged. alpha
204 definitely is in bad shape.
207 Minor repo damange has happened. This may cause problems
208 with cvsup of ports. If you get errors, please see
209 http://www.FreeBSD.org/cgi/query-pr.cgi?pr=27495
210 at the bottom for details on a workaround. The error message
212 Updater failed: Cannot delete "/usr/ports/www/jakarta-tomcat/files": Directory not empty
215 Vm and/or swapping are busted on -current. Please be patient.
218 pccard has had much reorganizational work done to it over
219 the past few days. Everything should still work, but if
220 not, please contact imp@freebsd.org.
223 ata ioctl changed. Make sure to recompile both kernel and
224 userland at the same time.
227 New ncurses imported.
230 DEVFS is now opt out, not opt in. Barring major problems, this
231 will be the only way to go starting July 1.
234 Perl breakage in 20010501 was corrected at 14:18:33 PDT.
237 Building perl was broken at 02:25:25 PDT.
240 The bug in 20010429 was corrected at 07:35:37 PDT. It is safe to
241 go back in the water.
244 A bad bug was committed at 04:48:42 PDT. Don't use kernels after
245 this date, but before the correction date.
248 old fsck and new kernel interactions appear to have been fixed.
251 fsck and the kernel were changed to handle some optimizations
252 to directory layout. This breaks backward compatibility.
253 Update only if you understand that you must not use the old
254 fsck with the new kernel ever.
257 fsck has changed the meaning of the pass column in /etc/fstab.
258 Please see the cvs commit to fsck.8 or the fsck.8 man page for
259 details. It is unclear if changes to /etc/fstab are necessary.
262 portmap had changed name to rpcbind for maximum POLA in your
263 current world. /etc/hosts.{allow,deny} needs changes. nfs and
264 other rpc based programs that rely on portmapper will not work
265 without updates to /etc/hosts.{allow,deny} and /etc/netconfig.
268 ata subsystem changes. ATA_ENABLE_ATAPI_DMA, ATA_ENABLE_WC
269 and ATA_ENABEL_TAGS are no longer kernel options. They have
270 been replaced by tunables. See ata.4 for details.
273 The fxp driver was converted to use miibus. If you compile
274 fxp into your kernel statically, you will need to add miibus.
277 The wi device now defaults to BSS (infrastructure) mode
281 /dev/urandom should be a symbolic link to /dev/random now.
282 Users of current not using DEVFS need to run MAKEDEV std.
283 ssh might not work if you don't.
286 The ed driver has been updated. It now allows mii attachments,
287 which means that you must include the miibus in your kernel if
288 you use the ed driver.
291 The problems with libc have been corrected. It is now mostly
292 safe to go back into the water.
295 The size of FILE was changed. This breaks upgrading. If
296 you must upgrade, be prepared for pain. It also breaks almost
297 all binaries that you've compiled on -current. You are warned
298 that before upgrading would be a good time to do a level 0
299 dump of your system. No, really, I mean it this time.
301 To get to the new system, you'll need to use the following
302 workaround. Hopefully this can be sorted out so that we
303 don't have to move this to the updating section.
305 To get around the installworld problem, do:
306 # cd /usr/src/usr.bin/sed
310 If that doesn't work, then try:
311 # make -k installworld
315 DEVFS is now the default. If you use vinum, make sure that you
316 do not include devfs in your kernel as problems result.
319 FFS_ROOT and CD9660_ROOT have been removed or deprecated.
320 Remove them from your config.
323 ****************************** WARNING ******************************
324 buildkernel has been changed slightly
325 ****************************** WARNING ******************************
326 KERNCONF replaces the variable KERNEL for buildkernel. You
327 should update your scripts and make.conf accordingly.
330 config has changed to allow DEV_FOO as a replacement for NFOO.
331 This requires a new config to build correctly.
334 The kerrnel option I386_CPU is now mutually exclusive with the
335 other cpu types. If you have an i386 system, be sure that it
336 only had this line. Remove it for all other configurations.
339 Changes to the kernel require it and burncd be in sync.
342 Everyone who has hw.sndunit set to something in
343 /etc/sysctl.conf, it is now hw.snd.unit.
346 ex and vi were broken by some changes to sys/queue.h. If you
347 have a bad vi, you will see make buildworld fail with a core
348 dump while building termcap. You can work around this problem
349 by adding -k to your make buildworld. This will cause the
350 build to complete and install a new vi. Once that's done, you
351 can rebuild again without the -k to pick up anything that
352 might have been ignored by the -k option.
354 Others have suggested that you can just rebuild libc if your
355 vi/ex is dynamically linked, but I've not received any reports
359 There have been some changes to libcrypt in -current. The
360 libscrypt/libdescrypt symlink sillyness is gone and the installed
361 libcrypt is fully functional. Be aware of this.
364 Linksys Fast Ethernet PCCARD cards supported by the ed driver
365 now require the addition of flag 0x80000 to their config line
366 in pccard.conf(5). This flag is not optional. These Linksys
367 cards will not be recognized without it.
370 Important new FreeBSD-version stuff: PAM support has been worked
371 in, partially from the "Unix" OpenSSH version. This requires
372 adding the following in pam.conf:
374 sshd auth sufficient pam_skey.so
375 sshd auth required pam_unix.so try_first_pass
376 sshd session required pam_permit.so
382 The random device needs more entropy, so you need to make sure
383 that you've run mergemaster to get a /etc/rc which will seed
384 /dev/random. If you don't and the system hangs after ldconfig,
385 then banging on the keyboard randomly until it unhangs is one
389 ****************************** WARNING ******************************
390 Sendmail has been updated.
391 ****************************** WARNING ******************************
392 o mail.local(8) is no longer installed as a set-user-id binary.
393 o sendmail(8) is now built with STARTTLS support unless NO_OPENSSL
395 o The default /etc/mail/sendmail.cf disables the SMTP EXPN and VRFY
397 o Now using sendmail's version of vacation(1).
398 o The sendmail cf building tools (contrib/sendmail/cf) are installed
399 in /usr/share/sendmail/cf.
400 o sendmail.cw changed to local-host-names
402 More details can be found at
403 http://people.freebsd.org/~imp/UPDATING/sendmail-20001010
406 The ports tree's new layout is in place. Be sure to update
407 your entire ports tree, or you will have problems.
410 The perl build procedure no longer installs miniperl, nor uses
411 the installed miniperl. It is recommended that you delete
415 This weekend the ports tree will be updated to a new layout.
416 It will be in an inconsistent state until noted in the UPDATING
417 file, or with asami-san's message to the relevant mailing
418 lists. With this new layout, you'll need to update the whole
419 tree for anything to work.
422 There was a change in the passwd format. Need more information.
425 /boot/kernel/kernel.ko -> /boot/kernel/kernel change has taken
426 place. Please update boot loader (not the boot blocks) at the
427 same time as your kernel.
430 The new pmtimer device is necessary for laptops. Failure to
431 include the device will cause suspended laptops losing time
432 when they resume. Include
434 in your config file and
435 hint.pmtimer.0.at="isa"
436 to your /boot/device.hints file.
439 The random device has been turned into a (pseudo-)device,
440 rather than an option. The supplied kernel config files have
441 been updated. You will need to do something similar in your
442 own kernel config file.
447 If you prefer to load the loadable module, you need to do
451 The random device module has been renamed from randomdev.ko to
452 random.ko. You will need to edit your /boot/loader.conf to
453 reflect this if you load this module at boot time.
454 The line should read:
458 The SMPNG commit has happened. It should work, but if it
459 doesn't, fallback to the PRE_SMPNG CVS tag. There are likely
460 to be a variety of minor issues. Please see 20000905 to make
461 sure you don't have model loading problems which might at
462 first blush appear related to SMP.
465 nsswitch has been imported from NetBSD. Among other things,
466 this means that /etc/host.conf is no longer used. See
467 nsswitch.conf(5) instead. Note that at boot time rc.network
468 will attempt to produce a new nsswitch.conf file for you if you
469 don't have one, and you have host.conf.
472 The ucred structure changed size. This breaks the interface
473 that mountd uses. Trying to use an older mountd with a newer
474 kernel guarantees a panic. This means that you need to use
475 kernels newer than today only with matching mountd, but you
476 needed to do that anyway with the boot loader changes.
479 The boot loader has been updated. The new default kernel is
480 now /boot/kernel/kernel.ko. The new default module location
483 You *MUST* upgrade your boot loader and kernel at the same time.
484 The easiest way to do this is to do the buildworld/buildkernel/
485 installkernel/installworld dance.
487 Furthermore, you are urged to delete your old /modules directory
488 before booting the new kernel, since kldload will find stale
489 modules in that directory instead of finding them in the correct
490 path, /boot/kernel. The most common complaint that this cures
491 is that the linux module crashes your machine after the update.
493 if [ ! -d /boot/kernel.old ]; then
494 mv /modules.old /boot/kernel.old
495 chflags noschg /kernel.old
496 mv /kernel.old /boot/kernel.old/kernel.ko
497 chflags schg /boot/kernel.old/kernel.ko
501 A new issue with the sendmail upgrade has come to light.
502 /etc/aliases has moved to /etc/mail/aliases. Mergemaster will
503 incorrectly install the default aliases in /etc/mail rather than
504 move the old one from /etc. So you'll need to manually move the
505 file, create a symbolic link, remove the old /etc/aliases.db and
506 run newaliases. For safety sake, you should stop sendmail
507 while doing this and run the upgrade when locally sourced email
508 is not likely to be generated.
511 /boot/device.hints is now required for installkernel to
512 succeed. You should copy GENERIC.hints for your architecture
513 into /boot/device.hints. If and only if you compile hints
514 into your kernel, then this file may be empty. Please note,
515 if you have an empty or missing /boot/device.hints file and
516 you neglected to compile hints into your kernel, no boot
517 messages will appear after the boot loader tries to start the
521 If you do NOT have ``options RANDOMDEV'' in your kernel and
522 you DO want the random device then add randomdev_load="YES" to
526 suidperl is now always built and installed on the system, but
527 with permissions of 511. If you have applications that use
528 this program, you are now required to add ENABLE_SUIDPERL=true
529 to /etc/make.conf. If you forget to do this,
530 chmod 4511 /usr/bin/suidperl
531 will fix this until the next build.
534 sendmail has been updated from 8.9.3 to 8.11.0. Some of the more
535 visible changes that may immediately affect your configuration
537 - New default file locations from src/contrib/sendmail/cf/README
538 - newaliases limited to root and trusted users
539 - MSA port (587) turned on by default
540 - New queue file naming system so can't go from 8.11 -> 8.9
541 - FEATURE(`rbl') renamed to FEATURE(`dnsbl')
542 - FEATURE(`nullclient') is more full featured
543 - FEATURE(`nouucp') requires an argument: `reject' or `nospecial'
544 - mail.local FreeBSD-only -b option changed to -B
545 - See src/contrib/sendmail/RELEASE_NOTES for more info
548 suidperl (aka sperl) is no longer build by default. You must
549 specifically define BUILD_SUIDPERL to "true" for it to be build.
550 Furthermore, we recommend that you remove /usr/bin/sperl* and
551 /usr/bin/suidperl files from your system unless you have a
555 Networking defaults have been tightened. Anybody upgrading
556 /etc/defaults/rc.conf needs to add the following lines to
557 /etc/rc.conf if they want to have the same setup
558 afterwards (unless the variables already are set, of course):
559 # Enable network daemons for user convenience.
562 sendmail_enable="YES"
565 If you have null_load="YES" in your /boot/loader.conf, you
566 will need to change that to nullfs_load="YES".
569 The "installkernel" target has changed slightly. Now even if
570 you override KERNEL e.g. 'make installkernel KERNEL=MYKERNEL'
571 it will install the MYKERNEL file (built with the buildkernel
572 target) as /kernel rather than /MYKERNEL. Those who have
573 updated their /boot/loader.conf files to point to /MYKERNEL
574 should remove that entry or perform manual rename of /kernel
578 If you use CVSUP or CTM to get CVS trees, AND you used to get
579 the old crypto files from internat.freebsd.org AND you check
580 out files from the CVS tree with the cvs command, please read
581 http://people.freebsd.org/~imp/internat.txt
582 for details on potential problems that you might have and how
585 If you are merely a mirror, or don't answer yes to each of the
586 clauses above, you needn't worry.
589 /etc/security has been updated to print the inode number of
590 setuid programs that have changed. You will see a large spike
591 in the number of changed programs the first time when you run
592 mergemaster to get a new /etc/security.
595 /dev/random now has good entropy collection (from the keyboard
596 and sysmouse drivers). Please ensure that either `options
597 RANDOMDEV' is present in your kernel config file or that
598 `randomdev_load="YES"' is in your /boot/loader.conf. If you do
599 not have the /dev/random driver, OpenSSL (and consequently
600 lots of crypto tools (like SSH)) will fail with strange
601 errors. (see below, 20000624).
603 FreeBSD-current is safe again to run Crypto.
606 phk made the malloc default options AJ. This may slow things
607 down and uncover other latent bugs in the code. If you need to
608 run at full speed, you can disable this by doing the following:
609 ln -s aj /etc/malloc.conf
612 libftpio's version was accidentally bumped a few days ago. This
613 has been corrected. You may need to remove /usr/lib/libftpio.so.6
614 before doing your next buildworld/installworld pair. It certainly
615 won't hurt to remove it before the update procedure. It will
616 break fetch until a new one is built, but ftp can be used in the
620 The crypto packages have changed for the cvsup. This has been done
621 in a backward compatible way, but the old packages will go away at
622 some point in the future. Look at /usr/share/examples/cvsup for
626 With the new sys/modules/sound/drivers/*, you will need to
627 set SYSDIR until you do an installworld after July 7th.
630 rc.shutdown and rc will now call the rc.d scripts with start
631 or stop. This may cause some harmless warnings from older
632 rc.d scripts that haven't been updated.
635 The libfetch based version of fetch has gone into the tree.
636 Minor problems may result on some of the less popular sites,
637 which should be reported to des@freebsd.org.
640 From approximately this date forward, one must have the crypto
641 system installed in order to build the system and kernel.
642 While not technically strictly true, one should treat it as
643 required and grab the crypto bits. If you are grabbing CVS
644 trees, src-all and cvs-crypto should be treated as if they
645 were required. You should check with the latest collections
646 to make sure that these haven't changed.
649 Mark Murray just committed the first parts of a cleanup of
650 /dev/zero, et al. This is also cleaning up /dev/random.
651 The entropy is disconnected, so DO NOT USE VERSIONS OF FREEBSD
652 -CURRENT FROM THIS POINT FORWARD for cryptographic services
653 until Mark can merge in the fixes to this work in progress.
654 openssh and openssl should not be used to generate keys from this
655 date to the completion of the work.
657 If you must operate at this reduced level of security, add '
658 options RANDOMDEV' to your kernel or modload the randomdev
659 module. You may also need to copy a new MAKEDEV to /dev and
660 recreate the random and urandom devices.
663 The license on the softupdates is now a standard 2 clause
664 BSD license. You may need to remove your symbolic links
665 that used to be required when updating.
668 Scott Flatman <sf@aracnet.com> sent in a decent write-up on
669 the config file update procedure.
670 http://people.freebsd.org/~imp/config-upd.html
671 NOTE: LINT is gone. It has been replaced with NOTES. NOTES
672 isn't buildable. However, you can generate a LINT file.
675 Binutils 2.10 have hit the tree, or will shortly. As soon
676 as they do, the problem noted in 20000522 will be resolved and
677 that workaround will no longer be required.
680 phk removed the compatibility creation of wd devices in the
681 ad driver. If you haven't done so already, you must update
682 your fstab, etc to use the ad devices instead of the wd
685 In addition, you'll need to update your boot blocks to a
686 more modern version, if you haven't already done so. Modern
687 here means 4.0 release or newer (although older releases
691 Peter took an axe to config(8). Be sure that you read his mail
692 on the topic before even thinking about updating. You will
693 need to create a /boot/device.hints or add a hints directive
694 to your config file to compile them in statically. The format
695 of the config file has changed as well. Please see GENERIC or
696 NEWCARD for examples of the new format.
699 A new set of binutils went into the tree today. Anybody
700 building a kernel after this point is advised that they need
701 to rebuild their binutils (or better yet do a
702 buildworld/installworld) before building a new kernel.
704 Due to bugs in binutils, using malloc options (eg /etc/malloc.conf
705 or MALLOC_OPTIONS env var) J will cause ld to dump core. It
706 is recommended that you don't set this option until the problem
710 The ethernet drivers were all updated to clean up the BPF handling.
713 The problems with boot blocks on the alphas have been corrected.
714 This will require some care in updating alphas. A new libstand
715 is requires for the boot blocks to build properly.
718 Recompile all kld modules. Proper version dependency info
722 Modules have been disconnected from the buildworld tree and
723 connected to the kernel building instead.
726 You may need to build gperf
727 cd /usr/src/gnu/usr.bin/gperf && make depend all install
728 when upgrading from 4.0 -> current. The build system now uses
729 an option only in -current.
732 The method that we brand ELF binaries has changed to be more
733 acceptable to the binutils maintainers. You will need to
734 rebrand your ELF binaries that aren't native. One problem
735 binary is the Linux ldconfig. After your make world, but
736 before you reboot, you'll need to issue:
737 brandelf -t Linux /compat/linux/sbin/ldconfig
738 if you have Linux compatibility enabled on your machine.
741 If you have really bad/marginal IDE drives, you may find they
742 don't work well. Use pio mode instead. The easiest way to
743 cope if you have a problem combination is to add:
744 /sbin/sysctl -w hw.atamodes=pio,pio,pio,pio
745 to the start of /etc/rc.conf.
748 The ISA and PCI compatibility shims have been connected to the
749 options COMPAT_OLDISA and COMPAT_OLDPCI. If you are using old
750 style PCI or ISA drivers (i.e. tx, voxware, etc.) you must
751 include the appropriate option in your kernel config. Drivers
752 using the shims should be updated or they won't ship with
753 5.0-RELEASE, targeted for 2001.
756 We've entered the traditional post release dumping party.
757 Large kernel changes are being committed and are in the
758 works. It is important to keep the systems' klds and kernel
759 in sync as kernel interfaces and structures are changing.
760 Before reporting kernel panics, make sure that all modules
761 that you are loading are up to date.
764 If you are upgrading from an older version of FreeBSD, you
765 need to update your boot blocks as well. 'disklabel -B ad0'
766 will do the trick. This isn't critical until you remove your
767 wd device entries in /dev, at which point your system will not
771 4.0 RELEASE shipped. Please see the 4.0 UPDATING file for how
772 to upgrade to 4.0 from 3.x.
778 Avoid using make -j when upgrading. From time to time in the
779 past there have been problems using -j with buildworld and/or
780 installworld. This is especially true when upgrading between
781 "distant" versions (eg one that cross a major release boundary
782 or several minor releases, or when several months have passed
783 on the -current branch).
787 If you are updating from a prior version of FreeBSD (even one just
788 a few days old), you should follow this procedure. With a
789 /usr/obj tree with a fresh buildworld,
790 make buildkernel KERNCONF=YOUR_KERNEL_HERE
791 make installkernel KERNCONF=YOUR_KERNEL_HERE
793 To just build a kernel when you know that it won't mess you up
794 --------------------------------------------------------------
795 cd src/sys/{i386,alpha}/conf
796 config KERNEL_NAME_HERE [1]
797 cd ../../compile/KERNEL_NAME_HERE
802 [1] If in doubt, -r might help here.
804 If this fails, go to the "To build a kernel" section.
806 To rebuild everything and install it on the current system.
807 -----------------------------------------------------------
809 Build a new kernel, see above.
811 To upgrade from 4.x-stable to current
812 -------------------------------------
814 make buildkernel KERNCONF=YOUR_KERNEL_HERE
815 cp src/sys/${MACHINE_ARCH}/conf/GENERIC.hints /boot/device.hints [2]
816 make installkernel KERNCONF=YOUR_KERNEL_HERE
817 reboot in single user [3]
823 Make sure that you've read the UPDATING file to understand the
824 tweaks to various things you need. At this point in the life
825 cycle of current, things change often and you are on your own
826 to cope. The defaults can also change, so please read ALL of
827 the UPDATING entries.
829 Also, if you are tracking -current, you must be subscribed to
830 freebsd-current@freebsd.org. Make sure that before you update
831 your sources that you have read and understood all the recent
832 messages there. If in doubt, please track -stable which has
835 [1] If you have third party modules, such as vmware, you
836 should disable them at this point so they don't crash your
839 [2] If you have legacy ISA devices, you may need to create
840 your own device.hints to reflect your unique hardware
843 [3] From the bootblocks, boot -s, and then do
848 adjkerntz -i # if COMS is wall time
850 [4] Note: This step is non-optional. Failure to do this step
851 can result in a significant reduction in the functionality of the
852 system. Attempting to do it by hand is not recommended and those
853 that pursue this avenue should read this file carefully, as well
854 as the archives of freebsd-current and freebsd-hackers mailing lists
855 for potential gotchas.
859 This file contains a list, in reverse chronological order, of major
860 breakages in tracking -current. Not all things will be listed here,
861 and it only starts on March 15, 2000. Updating files can found in
862 previous releases if your system is older than this.
864 Please filter your entries through Warner Losh (imp@village.org) so
865 that the style, formatting, etc of this file can be maintained.
867 Copyright information:
869 Copyright 1998, 2001 M. Warner Losh. All Rights Reserved.
871 Redistribution, publication, translation and use, with or without
872 modification, in full or in part, in any form or format of this
873 document are permitted.
875 THIS DOCUMENT IS PROVIDED BY WARNER LOSH ``AS IS'' AND ANY EXPRESS OR
876 IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
877 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
878 DISCLAIMED. IN NO EVENT SHALL WARNER LOSH BE LIABLE FOR ANY DIRECT,
879 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
880 (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
881 SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
882 HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
883 STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
884 IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
885 POSSIBILITY OF SUCH DAMAGE.
887 If you find this document useful, and you want to, you may buy the
890 Contact Warner Losh if you have any questions about your use of