]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - UPDATING
o Remove a somewhat less comprehensible comment about modifying /etc/rc.
[FreeBSD/FreeBSD.git] / UPDATING
1 Updating Information for FreeBSD current users
2
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.
7
8 20020112:
9         The preferred configuration method for PAM is now /etc/pam.d/
10         rather than /etc/pam.conf.  If you have an unmodified
11         pam.conf, just delete it after your next mergemaster run.  If
12         you have local modifications, you can use
13         /usr/src/etc/pam.d/convert.pl to incorporate them into your
14         /etc/pam.d.
15
16         Please see the following url for more details:
17 http://www.freebsd.org/cgi/mid.cgi?db=mid&id=<xzp6667fyoa.fsf@flood.ping.uio.no>
18
19 20011229:
20         If anyone here is already using the new rc.conf(5) variable
21         networkfs_types, please note that it has changed
22 http://www.freebsd.org/cgi/mid.cgi?db=mid&id=<9744.1009655556@axl.seasidesoftware.co.za>
23
24 20011209:
25         The bugs in procfs' debugging support code have been fixed,
26         and truss(1) now works again.
27
28 20011207:
29         Daily security checks have been split out to use the periodic(8)
30         scripts.  Some change in configuration may be necessary.  Please
31         see 
32 http://www.freebsd.org/cgi/mid.cgi?db=mid&id=<20011207155805.R8975@blossom.cjclark.org>
33         for details.
34
35 20011204:
36         sos added VCD/SVCD support to ata driver and that needs the
37         kernel and burncd to be in sync.
38
39 20011203:
40         The procfs pseudo-filesystem has now been converted to use the
41         pseudofs framework.  If you have 'options PROCFS' in your
42         kernel config, you'll need to add 'options PSEUDOFS' if it's
43         not there already.
44
45         This change temporarily breaks truss(1); use ktrace(1) instead
46         until the issue has been resolved.
47
48 20011202:
49         A security hole in OpenSSH involving `UseLogin yes' has been
50         patched.
51
52 20011126:
53         You need to remove /usr/obj/.../usr.bin/tip before rebuilding
54         after this date.
55
56 20011103:
57         Most of the awk issues have been resolved.  Some rough
58         edges may be left, but for the most part things should be
59         back to "normal." For CURRENT's usual definition of "normal."
60
61 20011030:
62         Awk has been upgraded to the one true awk from bell labs.  Expect
63         choppy waves in the upgrade process.
64
65 20011030:
66         The asr driver problem has been resolved.
67
68 20011027:
69         Due to changes in other parts of the system, the asr driver
70         now causes the system to panic on boot.  Do not use it pending
71         correction.  Comment it out of any kernel config file that you
72         try to use from this date forward.
73
74 20011025:
75         When crossbuilding, use TARGET=xxx where you used to use
76         MACHINE=xxx.  You don't need to set TARGET_ARCH and TARGET,
77         unless you are changing both of them.  To cross build pc98 on
78         an alpha, for example, you need to set TARGET=pc98 and
79         TARGET_ARCH=i386.
80
81 20011001:
82         The kernel interface that burncd depends on has changed.
83         You must recompile both the kernel and userland applications
84         at the same time.
85
86 20010929:
87         When crossbuilding, please set TARGET_ARCH rather than
88         MACHINE_ARCH to indicate the target.  In the future, one will
89         set TARGET_MACHINE where you set MACHINE now.  At the moment,
90         setting MACHINE alone for same MACHINE_ARCH machines works
91         (eg, you can build pc98 on a i386 machine and vice versa).
92
93 20010927:
94         Some weird problems result from using ACPI on some machines.
95         To disable ACPI you can add
96                 hint.acpi.0.disable="1"
97         to /boot/loader.conf (or by putting set X=Y at the boot
98         loader "ok" prompt).
99
100         Alternatively, you can remove it from /boot/kernel/acpi.ko
101         or use the MODULES_OVERRIDE function in your kernel config
102         file and not list acpi in that list.
103
104 20010924:
105         The buildworld has been fixed.  You may need to install
106         the 4.x compatibility libraries for some old binaries
107         to work.  Add COMPAT4X=true to your /etc/make.conf to
108         get them installed on every installworld, or execute the
109         following to get them installed only once:
110                 cd src/lib/compat/compat4x.<arch>
111                 make all install
112         You will see ``__stdoutp undefined'' until you do this.
113
114 20010919:
115         There's a bug in the world build process.  The cross-tools
116         are build with the NEW headers, but the OLD libc.a.  This
117         leads to all kinds of problems with the new libc.  A temporary
118         workaround is to add
119                 CFLAGS="-O -pipe -D_OLD_STDIO"
120         before building world when upgrading from 4.x to current.  This
121         can be removed afterwards.
122
123         A proper fix to the buildworld target is needed.
124
125 20010918:
126         Peter has committed his new kthread nfs client/server code.
127         NFS may be unstable after this date.
128
129 20010912:
130         KSE has hit the tree.  Lots of things are now different in
131         the kernel.  While a few problems were introduced in the
132         initial commit, most of the major ones have been found and
133         corrected.
134
135 20010901:
136         In OLDCARD, CardBus bridges appear to be stable.  The work
137         arounds described in the 20010604 entry are now no longer
138         necessary and will be ignored.  Most insert/remove problems
139         have been rectified around this date.
140
141 20010823:
142         named now runs as user bind and group bind rather than as 
143         root.  If named_enable is set to YES in /etc/rc.conf, ensure 
144         that user bind is available in /etc/passwd (using vipw(8)) 
145         and that group bind is available in /etc/group.  Also make 
146         sure that user or group bind has read (and not write) 
147         permission for your name server configuration and that it 
148         has read and write permission for your slave zone files and 
149         directory.
150  
151         If you wish to continue to run named as root (a less secure 
152         alternative), add a line to /etc/rc.conf saying
153  
154                 named_flags=
155
156 20010709:
157         The PAM libraries have had an API upgrade that is beyond
158         the ability of the shared library major number to handle.
159         It is manifested by PAM-using ports dumping core. The
160         solution is to rebuild those ports.
161
162 20010628:
163         The kernel compile module has moved from src/sys/compile/FOO
164         to src/sys/${MACHINE}/compile/FOO.
165
166 20010625:
167         The pccard modem issue from 20010613 has been corrected.
168         OLDCARD support is still a little weak in -current.  slot 1 is
169         known not to work on some TI based cardbus bridges.  Some
170         cardbus bridges do not properly detect insert/removal events.
171         IRQ configuration needs more safety belts.
172
173 20010617:
174         Softupdates problems have been corrected.
175
176 20010614:
177         Peter ripped out the linkerset support.  You must, as always,
178         rerun config after you cvsup if you are using the traditional
179         kernel building methods.
180
181 20010613:
182         pccard modems may not work with current after 20010604 date.  Some
183         do, others result in panics.  *MAKE*SURE* that you update your
184         config and /etc/rc.conf ala the 20010604 entry, or you will have
185         problems (this issue will be fixed, it just hasn't been yet).
186
187 20010613:
188         SOFTUPDATES seem to be broken since the middle of May or so.  Do not
189         use them in current.  You can disable softupdates on all mounted
190         partitions, or remove SOFTUPDATES the kernel config file.
191
192 20010612:
193         After Peter's commits to the hints code, people have been noticing
194         that certain devices are attached (or try to) twice.  This is due
195         to having both static hints as well as a /boot/device.hints.  To
196         work around this issue, please use only one or the other mechanism
197         until this bug is fixed.
198
199         Please note that a feature of config is that if you have config
200         file FOO and FOO.hints, it automatically adds FOO.hints to the
201         hints.c file, wheather you want it to or not.
202
203 20010610:
204         Locale names have changed to match other systems better.
205
206 20010604:
207         pccard support for pci cards has been committed.  You must change
208         your /etc/pccard.conf irq lines.  It must match the irq used by
209         pcic device.  Interrupt storms may result if you fail to do this.
210         Interrupt storms look a lot like a hang.
211
212         You must also install a new pccardd, otherwise you will get an
213         interrupt storm at card reset time (just after it tells you what
214         it is).
215
216         pccardd_flags="-I" is necessary for the time being.  It tells pccardd
217         not to ask the kernel if the interrupt is really free or not before
218         using it.  You can either change the /etc/pccard.conf irq lines to
219         match pcic, or add "-i X" to the pccardd_flags.
220
221 20010530:
222         INSTALL=install -C is being deprecated.  If you want to do this,
223         use COPY=-C instead.  The former method will be supported for only
224         a limited time.  If you see
225
226 install: warning: the -d and -C options may not be specified together
227
228         in your makeworld, then you need to migrate towards using
229         COPY=-C.
230
231 20010525:
232         It appears that vm is now stable enough to use again.  However,
233         there may be other problems, so caution is still urged.  alpha
234         definitely is in bad shape.
235
236 20010521:
237         Minor repo damange has happened.  This may cause problems
238         with cvsup of ports.  If you get errors, please see
239         http://www.FreeBSD.org/cgi/query-pr.cgi?pr=27495
240         at the bottom for details on a workaround.  The error message
241         is
242 Updater failed: Cannot delete "/usr/ports/www/jakarta-tomcat/files": Directory not empty
243
244 20010520:
245         Vm and/or swapping are busted on -current.  Please be patient.
246
247 20010519:
248         pccard has had much reorganizational work done to it over
249         the past few days.  Everything should still work, but if
250         not, please contact imp@freebsd.org.
251
252 20010517:
253         ata ioctl changed.  Make sure to recompile both kernel and
254         userland at the same time.
255
256 20010517:
257         New ncurses imported.
258
259 20010512:
260         DEVFS is now opt out, not opt in.  Barring major problems, this
261         will be the only way to go starting July 1.
262
263 20010502:
264         Perl breakage in 20010501 was corrected at 14:18:33 PDT.
265
266 20010501:
267         Building perl was broken at 02:25:25 PDT.
268
269 20010430:
270         The bug in 20010429 was corrected at 07:35:37 PDT.  It is safe to
271         go back in the water.
272
273 20010429:
274         A bad bug was committed at 04:48:42 PDT.  Don't use kernels after
275         this date, but before the correction date.
276
277 20010423:
278         old fsck and new kernel interactions appear to have been fixed.
279
280 20010411:
281         fsck and the kernel were changed to handle some optimizations
282         to directory layout.  This breaks backward compatibility.
283         Update only if you understand that you must not use the old
284         fsck with the new kernel ever.
285
286 20010330:
287         fsck has changed the meaning of the pass column in /etc/fstab.
288         Please see the cvs commit to fsck.8 or the fsck.8 man page for
289         details.  It is unclear if changes to /etc/fstab are necessary.
290
291 20010319:
292         portmap had changed name to rpcbind for maximum POLA in your
293         current world.  /etc/hosts.{allow,deny} needs changes.  nfs and
294         other rpc based programs that rely on portmapper will not work
295         without updates to /etc/hosts.{allow,deny} and /etc/netconfig.
296
297 20010315:
298         ata subsystem changes.  ATA_ENABLE_ATAPI_DMA, ATA_ENABLE_WC
299         and ATA_ENABEL_TAGS are no longer kernel options.  They have
300         been replaced by tunables.  See ata.4 for details.
301
302 20010312:
303         The fxp driver was converted to use miibus.  If you compile
304         fxp into your kernel statically, you will need to add miibus.
305
306 20010312:
307         The wi device now defaults to BSS (infrastructure) mode
308         instead of ad-hoc.
309
310 20010310:
311         /dev/urandom should be a symbolic link to /dev/random now.
312         Users of current not using DEVFS need to run MAKEDEV std.
313         ssh might not work if you don't.
314
315 20010303:
316         The ed driver has been updated.  It now allows mii attachments,
317         which means that you must include the miibus in your kernel if
318         you use the ed driver.
319
320 20010220:
321         The problems with libc have been corrected.  It is now mostly
322         safe to go back into the water.
323
324 20010211:
325         The size of FILE was changed.  This breaks upgrading.  If
326         you must upgrade, be prepared for pain.  It also breaks almost
327         all binaries that you've compiled on -current.  You are warned
328         that before upgrading would be a good time to do a level 0
329         dump of your system.  No, really, I mean it this time.
330
331         To get to the new system, you'll need to use the following
332         workaround.  Hopefully this can be sorted out so that we
333         don't have to move this to the updating section.
334
335         To get around the installworld problem, do:
336                 # cd /usr/src/usr.bin/sed
337                 # make install
338                 # cd /usr/src
339                 # make installworld
340         If that doesn't work, then try:
341                 # make -k installworld
342                 # make installworld
343
344 20010207:
345         DEVFS is now the default.  If you use vinum, make sure that you
346         do not include devfs in your kernel as problems result.
347
348 20010205:
349         FFS_ROOT and CD9660_ROOT have been removed or deprecated.
350         Remove them from your config.
351
352 20010122:
353         ****************************** WARNING ******************************
354                         buildkernel has been changed slightly
355         ****************************** WARNING ******************************
356         KERNCONF replaces the variable KERNEL for buildkernel.  You
357         should update your scripts and make.conf accordingly.
358
359 20010119:
360         config has changed to allow DEV_FOO as a replacement for NFOO.
361         This requires a new config to build correctly.
362
363 20010116:
364         The kerrnel option I386_CPU is now mutually exclusive with the
365         other cpu types. If you have an i386 system, be sure that it
366         only had this line.  Remove it for all other configurations.
367
368 20010110:
369         Changes to the kernel require it and burncd be in sync.
370
371 20010102:
372         Everyone who has hw.sndunit set to something in
373         /etc/sysctl.conf, it is now hw.snd.unit.
374
375 20010101:
376         ex and vi were broken by some changes to sys/queue.h.  If you
377         have a bad vi, you will see make buildworld fail with a core
378         dump while building termcap.  You can work around this problem
379         by adding -k to your make buildworld.  This will cause the
380         build to complete and install a new vi.  Once that's done, you
381         can rebuild again without the -k to pick up anything that
382         might have been ignored by the -k option.
383
384         Others have suggested that you can just rebuild libc if your
385         vi/ex is dynamically linked, but I've not received any reports
386         of this working.
387
388 20001228:
389         There have been some changes to libcrypt in -current.  The
390         libscrypt/libdescrypt symlink sillyness is gone and the installed
391         libcrypt is fully functional.  Be aware of this.
392
393 20001218:
394         Linksys Fast Ethernet PCCARD cards supported by the ed driver
395         now require the addition of flag 0x80000 to their config line
396         in pccard.conf(5).  This flag is not optional.  These Linksys
397         cards will not be recognized without it.
398
399 20001205:
400         Important new FreeBSD-version stuff: PAM support has been worked
401         in, partially from the "Unix" OpenSSH version.  This requires
402         adding the following in pam.conf:
403   
404         sshd    auth    sufficient      pam_skey.so
405         sshd    auth    required        pam_unix.so         try_first_pass
406         sshd    session required        pam_permit.so
407
408 20001031:
409         cvs updated to 1.11.
410
411 20001020:
412         The random device needs more entropy, so you need to make sure
413         that you've run mergemaster to get a /etc/rc which will seed
414         /dev/random.  If you don't and the system hangs after ldconfig,
415         then banging on the keyboard randomly until it unhangs is one
416         workaround.
417
418 20001010:
419         ****************************** WARNING ******************************
420                                 Sendmail has been updated.
421         ****************************** WARNING ******************************
422         o mail.local(8) is no longer installed as a set-user-id binary.
423         o sendmail(8) is now built with STARTTLS support unless NO_OPENSSL
424           is set.
425         o The default /etc/mail/sendmail.cf disables the SMTP EXPN and VRFY
426           commands.
427         o Now using sendmail's version of vacation(1).
428         o The sendmail cf building tools (contrib/sendmail/cf) are installed
429           in /usr/share/sendmail/cf.
430         o sendmail.cw changed to local-host-names
431
432         More details can be found at
433                 http://people.freebsd.org/~imp/UPDATING/sendmail-20001010
434
435 20001009:
436         The ports tree's new layout is in place.  Be sure to update
437         your entire ports tree, or you will have problems.
438
439 20001006:
440         The perl build procedure no longer installs miniperl, nor uses
441         the installed miniperl.  It is recommended that you delete
442         /usr/bin/miniperl.
443
444 20001005:
445         This weekend the ports tree will be updated to a new layout.
446         It will be in an inconsistent state until noted in the UPDATING
447         file, or with asami-san's message to the relevant mailing
448         lists.  With this new layout, you'll need to update the whole
449         tree for anything to work.
450
451 20000928:
452         There was a change in the passwd format.  Need more information.
453
454 20000916:
455         /boot/kernel/kernel.ko -> /boot/kernel/kernel change has taken
456         place.  Please update boot loader (not the boot blocks) at the
457         same time as your kernel.
458
459 20000914:
460         The new pmtimer device is necessary for laptops.  Failure to
461         include the device will cause suspended laptops losing time
462         when they resume.  Include
463                 device          pmtimer
464         in your config file and
465                 hint.pmtimer.0.at="isa"
466         to your /boot/device.hints file.
467
468 20000911:
469         The random device has been turned into a (pseudo-)device,
470         rather than an option. The supplied kernel config files have
471         been updated. You will need to do something similar in your
472         own kernel config file.
473         Remove:
474                 options         RANDOMDEV
475         Add:
476                 device          random
477         If you prefer to load the loadable module, you need to do
478         nothing.
479
480 20000909:
481         The random device module has been renamed from randomdev.ko to
482         random.ko. You will need to edit your /boot/loader.conf to
483         reflect this if you load this module at boot time.
484         The line should read:
485                 random_load="YES"
486
487 20000907:
488         The SMPNG commit has happened.  It should work, but if it
489         doesn't, fallback to the PRE_SMPNG CVS tag.  There are likely
490         to be a variety of minor issues.  Please see 20000905 to make
491         sure you don't have model loading problems which might at
492         first blush appear related to SMP.
493
494 20000906:
495         nsswitch has been imported from NetBSD.  Among other things,
496         this means that /etc/host.conf is no longer used.  See
497         nsswitch.conf(5) instead.  Note that at boot time rc.network
498         will attempt to produce a new nsswitch.conf file for you if you
499         don't have one, and you have host.conf.
500
501 20000905:
502         The ucred structure changed size.  This breaks the interface
503         that mountd uses.  Trying to use an older mountd with a newer
504         kernel guarantees a panic.  This means that you need to use
505         kernels newer than today only with matching mountd, but you
506         needed to do that anyway with the boot loader changes.
507
508 20000905:
509         The boot loader has been updated.  The new default kernel is
510         now /boot/kernel/kernel.ko.  The new default module location
511         is /boot/kernel.
512
513         You *MUST* upgrade your boot loader and kernel at the same time.
514         The easiest way to do this is to do the buildworld/buildkernel/
515         installkernel/installworld dance.
516
517         Furthermore, you are urged to delete your old /modules directory
518         before booting the new kernel, since kldload will find stale
519         modules in that directory instead of finding them in the correct
520         path, /boot/kernel.  The most common complaint that this cures
521         is that the linux module crashes your machine after the update.
522
523         if [ ! -d /boot/kernel.old ]; then
524                 mv /modules.old /boot/kernel.old
525                 chflags noschg /kernel.old
526                 mv /kernel.old /boot/kernel.old/kernel.ko
527                 chflags schg /boot/kernel.old/kernel.ko
528         fi
529
530 20000904:
531         A new issue with the sendmail upgrade has come to light.
532         /etc/aliases has moved to /etc/mail/aliases.  Mergemaster will 
533         incorrectly install the default aliases in /etc/mail rather than
534         move the old one from /etc.  So you'll need to manually move the
535         file, create a symbolic link, remove the old /etc/aliases.db and
536         run newaliases.  For safety sake, you should stop sendmail
537         while doing this and run the upgrade when locally sourced email
538         is not likely to be generated.
539
540 20000825:
541         /boot/device.hints is now required for installkernel to
542         succeed.  You should copy GENERIC.hints for your architecture
543         into /boot/device.hints.  If and only if you compile hints
544         into your kernel, then this file may be empty.  Please note,
545         if you have an empty or missing /boot/device.hints file and
546         you neglected to compile hints into your kernel, no boot
547         messages will appear after the boot loader tries to start the
548         kernel.
549
550 20000821:
551         If you do NOT have ``options RANDOMDEV'' in your kernel and
552         you DO want the random device then add randomdev_load="YES" to
553         /boot/loader.conf.
554
555 20000812:
556         suidperl is now always built and installed on the system, but
557         with permissions of 511.  If you have applications that use
558         this program, you are now required to add ENABLE_SUIDPERL=true
559         to /etc/make.conf.  If you forget to do this,
560                 chmod 4511 /usr/bin/suidperl
561         will fix this until the next build.
562
563 20000812:
564         sendmail has been updated from 8.9.3 to 8.11.0.  Some of the more
565         visible changes that may immediately affect your configuration
566         include:
567         - New default file locations from src/contrib/sendmail/cf/README
568         - newaliases limited to root and trusted users
569         - MSA port (587) turned on by default
570         - New queue file naming system so can't go from 8.11 -> 8.9
571         - FEATURE(`rbl') renamed to FEATURE(`dnsbl')
572         - FEATURE(`nullclient') is more full featured
573         - FEATURE(`nouucp') requires an argument: `reject' or `nospecial'
574         - mail.local FreeBSD-only -b option changed to -B
575         - See src/contrib/sendmail/RELEASE_NOTES for more info
576
577 20000810:
578         suidperl (aka sperl) is no longer build by default.  You must
579         specifically define BUILD_SUIDPERL to "true" for it to be build.
580         Furthermore, we recommend that you remove /usr/bin/sperl* and
581         /usr/bin/suidperl files from your system unless you have a
582         specific use for it.
583
584 20000729:
585         Networking defaults have been tightened.  Anybody upgrading
586         /etc/defaults/rc.conf needs to add the following lines to
587         /etc/rc.conf if they want to have the same setup
588         afterwards (unless the variables already are set, of course):
589                 # Enable network daemons for user convenience.
590                 inetd_enable="YES"
591                 portmap_enable="YES"
592                 sendmail_enable="YES"
593
594 20000728:
595         If you have null_load="YES" in your /boot/loader.conf, you
596         will need to change that to nullfs_load="YES".
597
598 20000728:
599         The "installkernel" target has changed slightly. Now even if
600         you override KERNEL e.g. 'make installkernel KERNEL=MYKERNEL'
601         it will install the MYKERNEL file (built with the buildkernel
602         target) as /kernel rather than /MYKERNEL. Those who have
603         updated their /boot/loader.conf files to point to /MYKERNEL
604         should remove that entry or perform manual rename of /kernel
605         to /MYKERNEL.
606
607 20000711:
608         If you use CVSUP or CTM to get CVS trees, AND you used to get 
609         the old crypto files from internat.freebsd.org AND you check
610         out files from the CVS tree with the cvs command, please read
611                 http://people.freebsd.org/~imp/internat.txt
612         for details on potential problems that you might have and how
613         to get around them.
614
615         If you are merely a mirror, or don't answer yes to each of the
616         clauses above, you needn't worry.
617
618 20000711:
619         /etc/security has been updated to print the inode number of
620         setuid programs that have changed.  You will see a large spike
621         in the number of changed programs the first time when you run
622         mergemaster to get a new /etc/security.
623
624 20000710:
625         /dev/random now has good entropy collection (from the keyboard
626         and sysmouse drivers). Please ensure that either `options
627         RANDOMDEV' is present in your kernel config file or that
628         `randomdev_load="YES"' is in your /boot/loader.conf. If you do
629         not have the /dev/random driver, OpenSSL (and consequently
630         lots of crypto tools (like SSH)) will fail with strange
631         errors. (see below, 20000624).
632
633         FreeBSD-current is safe again to run Crypto.
634
635 20000709:
636         phk made the malloc default options AJ.  This may slow things
637         down and uncover other latent bugs in the code.  If you need to
638         run at full speed, you can disable this by doing the following:
639                 ln -s aj /etc/malloc.conf
640
641 20000706:
642         libftpio's version was accidentally bumped a few days ago.  This
643         has been corrected.  You may need to remove /usr/lib/libftpio.so.6
644         before doing your next buildworld/installworld pair.  It certainly
645         won't hurt to remove it before the update procedure.  It will
646         break fetch until a new one is built, but ftp can be used in the
647         interim if needed.
648
649 20000705:
650         The crypto packages have changed for the cvsup.  This has been done
651         in a backward compatible way, but the old packages will go away at
652         some point in the future.  Look at /usr/share/examples/cvsup for
653         details.
654
655 20000704:
656         With the new sys/modules/sound/drivers/*, you will need to
657         set SYSDIR until you do an installworld after July 7th.
658
659 20000704:
660         rc.shutdown and rc will now call the rc.d scripts with start
661         or stop.  This may cause some harmless warnings from older
662         rc.d scripts that haven't been updated.
663
664 20000630:
665         The libfetch based version of fetch has gone into the tree.
666         Minor problems may result on some of the less popular sites,
667         which should be reported to des@freebsd.org.
668
669 20000625:
670         From approximately this date forward, one must have the crypto
671         system installed in order to build the system and kernel.
672         While not technically strictly true, one should treat it as
673         required and grab the crypto bits.  If you are grabbing CVS
674         trees, src-all and cvs-crypto should be treated as if they
675         were required.  You should check with the latest collections
676         to make sure that these haven't changed.
677
678 20000624:
679         Mark Murray just committed the first parts of a cleanup of
680         /dev/zero, et al.  This is also cleaning up /dev/random.
681         The entropy is disconnected, so DO NOT USE VERSIONS OF FREEBSD
682         -CURRENT FROM THIS POINT FORWARD for cryptographic services
683         until Mark can merge in the fixes to this work in progress.
684         openssh and openssl should not be used to generate keys from this
685         date to the completion of the work.
686
687         If you must operate at this reduced level of security, add '
688         options RANDOMDEV' to your kernel or modload the randomdev
689         module.  You may also need to copy a new MAKEDEV to /dev and
690         recreate the random and urandom devices.
691
692 20000622:
693         The license on the softupdates is now a standard 2 clause
694         BSD license.  You may need to remove your symbolic links
695         that used to be required when updating.
696
697 20000621:
698         Scott Flatman <sf@aracnet.com> sent in a decent write-up on
699         the config file update procedure.
700                 http://people.freebsd.org/~imp/config-upd.html
701         NOTE: LINT is gone.  It has been replaced with NOTES.  NOTES
702         isn't buildable.  However, you can generate a LINT file.
703
704 20000620:
705         Binutils 2.10 have hit the tree, or will shortly.  As soon
706         as they do, the problem noted in 20000522 will be resolved and
707         that workaround will no longer be required.
708
709 20000615:
710         phk removed the compatibility creation of wd devices in the
711         ad driver.  If you haven't done so already, you must update
712         your fstab, etc to use the ad devices instead of the wd
713         devices.
714
715         In addition, you'll need to update your boot blocks to a
716         more modern version, if you haven't already done so.  Modern
717         here means 4.0 release or newer (although older releases
718         may work).
719
720 20000612:
721         Peter took an axe to config(8).  Be sure that you read his mail
722         on the topic before even thinking about updating.  You will
723         need to create a /boot/device.hints or add a hints directive
724         to your config file to compile them in statically.  The format
725         of the config file has changed as well.  Please see GENERIC or
726         NEWCARD for examples of the new format.
727
728 20000522:
729         A new set of binutils went into the tree today.  Anybody
730         building a kernel after this point is advised that they need
731         to rebuild their binutils (or better yet do a
732         buildworld/installworld) before building a new kernel.
733
734         Due to bugs in binutils, using malloc options (eg /etc/malloc.conf
735         or MALLOC_OPTIONS env var) J will cause ld to dump core.  It
736         is recommended that you don't set this option until the problem
737         is resolved.
738
739 20000513:
740         The ethernet drivers were all updated to clean up the BPF handling.
741
742 20000510:
743         The problems with boot blocks on the alphas have been corrected.
744         This will require some care in updating alphas.  A new libstand
745         is requires for the boot blocks to build properly.
746
747 20000503:
748         Recompile all kld modules.  Proper version dependency info
749         is now available.
750
751 20000502:
752         Modules have been disconnected from the buildworld tree and 
753         connected to the kernel building instead.
754
755 20000427:
756         You may need to build gperf
757                 cd /usr/src/gnu/usr.bin/gperf && make depend all install
758         when upgrading from 4.0 -> current.  The build system now uses
759         an option only in -current.
760
761 20000417:
762         The method that we brand ELF binaries has changed to be more
763         acceptable to the binutils maintainers.  You will need to
764         rebrand your ELF binaries that aren't native.  One problem
765         binary is the Linux ldconfig.  After your make world, but
766         before you reboot, you'll need to issue:
767                 brandelf -t Linux /compat/linux/sbin/ldconfig
768         if you have Linux compatibility enabled on your machine.
769
770 20000320:
771         If you have really bad/marginal IDE drives, you may find they
772         don't work well.  Use pio mode instead.  The easiest way to
773         cope if you have a problem combination is to add:
774                 /sbin/sysctl -w hw.atamodes=pio,pio,pio,pio
775         to the start of /etc/rc.conf.
776
777 20000319:
778         The ISA and PCI compatibility shims have been connected to the
779         options COMPAT_OLDISA and COMPAT_OLDPCI.  If you are using old
780         style PCI or ISA drivers (i.e. tx, voxware, etc.) you must
781         include the appropriate option in your kernel config.  Drivers
782         using the shims should be updated or they won't ship with
783         5.0-RELEASE, targeted for 2001.
784
785 20000318:
786         We've entered the traditional post release dumping party.
787         Large kernel changes are being committed and are in the
788         works.  It is important to keep the systems' klds and kernel
789         in sync as kernel interfaces and structures are changing.
790         Before reporting kernel panics, make sure that all modules
791         that you are loading are up to date.
792
793 20000315:
794         If you are upgrading from an older version of FreeBSD, you
795         need to update your boot blocks as well.  'disklabel -B ad0'
796         will do the trick.  This isn't critical until you remove your
797         wd device entries in /dev, at which point your system will not
798         boot.
799
800 20000315:
801         4.0 RELEASE shipped.  Please see the 4.0 UPDATING file for how
802         to upgrade to 4.0 from 3.x.
803
804 COMMON ITEMS:
805
806         General Notes
807         -------------
808         Avoid using make -j when upgrading.  From time to time in the
809         past there have been problems using -j with buildworld and/or
810         installworld.  This is especially true when upgrading between
811         "distant" versions (eg one that cross a major release boundary
812         or several minor releases, or when several months have passed
813         on the -current branch).
814
815         To build a kernel
816         -----------------
817         If you are updating from a prior version of FreeBSD (even one just
818         a few days old), you should follow this procedure. With a
819         /usr/obj tree with a fresh buildworld,
820         make buildkernel KERNCONF=YOUR_KERNEL_HERE
821         make installkernel KERNCONF=YOUR_KERNEL_HERE
822
823         To just build a kernel when you know that it won't mess you up
824         --------------------------------------------------------------
825         cd src/sys/{i386,alpha}/conf
826         config KERNEL_NAME_HERE
827         cd ../../compile/KERNEL_NAME_HERE
828         make depend
829         make
830         make install    
831
832         If this fails, go to the "To build a kernel" section.
833
834         To rebuild everything and install it on the current system.
835         -----------------------------------------------------------
836         make world
837         Build a new kernel, see above.
838
839         To upgrade from 4.x-stable to current
840         -------------------------------------
841         make buildworld
842         make buildkernel KERNCONF=YOUR_KERNEL_HERE
843         cp src/sys/${MACHINE_ARCH}/conf/GENERIC.hints /boot/device.hints [2]
844         make installkernel KERNCONF=YOUR_KERNEL_HERE
845         reboot in single user [3]
846         make installworld
847         mergemaster             [4]
848         [1]
849         <reboot>
850
851         Make sure that you've read the UPDATING file to understand the
852         tweaks to various things you need.  At this point in the life
853         cycle of current, things change often and you are on your own
854         to cope.  The defaults can also change, so please read ALL of
855         the UPDATING entries.
856
857         Also, if you are tracking -current, you must be subscribed to
858         freebsd-current@freebsd.org.  Make sure that before you update
859         your sources that you have read and understood all the recent
860         messages there.  If in doubt, please track -stable which has
861         much fewer pitfalls.
862
863         [1] If you have third party modules, such as vmware, you
864         should disable them at this point so they don't crash your
865         system on reboot.
866
867         [2] If you have legacy ISA devices, you may need to create
868         your own device.hints to reflect your unique hardware
869         configuration.
870
871         [3] From the bootblocks, boot -s, and then do
872                 fsck -p
873                 mount -u /
874                 mount -a
875                 cd /usr/src
876                 adjkerntz -i            # if CMOS is wall time
877
878         [4] Note: This step is non-optional.  Failure to do this step
879         can result in a significant reduction in the functionality of the
880         system.  Attempting to do it by hand is not recommended and those
881         that pursue this avenue should read this file carefully, as well
882         as the archives of freebsd-current and freebsd-hackers mailing lists
883         for potential gotchas.
884
885 FORMAT:
886
887 This file contains a list, in reverse chronological order, of major
888 breakages in tracking -current.  Not all things will be listed here,
889 and it only starts on March 15, 2000.  Updating files can found in
890 previous releases if your system is older than this.
891
892 Please filter your entries through Warner Losh (imp@village.org) so
893 that the style, formatting, etc of this file can be maintained.
894
895 Copyright information:
896
897 Copyright 1998, 2001 M. Warner Losh.  All Rights Reserved.
898
899 Redistribution, publication, translation and use, with or without
900 modification, in full or in part, in any form or format of this
901 document are permitted.
902
903 THIS DOCUMENT IS PROVIDED BY WARNER LOSH ``AS IS'' AND ANY EXPRESS OR
904 IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
905 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
906 DISCLAIMED.  IN NO EVENT SHALL WARNER LOSH BE LIABLE FOR ANY DIRECT,
907 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
908 (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
909 SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
910 HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
911 STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
912 IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
913 POSSIBILITY OF SUCH DAMAGE.
914
915 If you find this document useful, and you want to, you may buy the
916 author a beer.
917
918 Contact Warner Losh if you have any questions about your use of
919 this document.
920
921 $FreeBSD$