UPDATING revision 89297
1Updating Information for FreeBSD current users
2
3This file is maintained and copyrighted by M. Warner Losh
4<imp@village.org>.  Please send new entries directly to him.  See end
5of file for further details.  For commonly done items, please see the
6COMMON ITEMS: section later in the file.
7
820020112:
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:
17http://www.freebsd.org/cgi/mid.cgi?db=mid&id=<xzp6667fyoa.fsf@flood.ping.uio.no>
18
1920011229:
20	If anyone here is already using the new rc.conf(5) variable
21	networkfs_types, please note that it has changed
22http://www.freebsd.org/cgi/mid.cgi?db=mid&id=<9744.1009655556@axl.seasidesoftware.co.za>
23
2420011209:
25	The bugs in procfs' debugging support code have been fixed,
26	and truss(1) now works again.
27
2820011207:
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 
32http://www.freebsd.org/cgi/mid.cgi?db=mid&id=<20011207155805.R8975@blossom.cjclark.org>
33	for details.
34
3520011204:
36	sos added VCD/SVCD support to ata driver and that needs the
37	kernel and burncd to be in sync.
38
3920011203:
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
4820011202:
49	A security hole in OpenSSH involving `UseLogin yes' has been
50	patched.
51
5220011126:
53	You need to remove /usr/obj/.../usr.bin/tip before rebuilding
54	after this date.
55
5620011103:
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
6120011030:
62	Awk has been upgraded to the one true awk from bell labs.  Expect
63	choppy waves in the upgrade process.
64
6520011030:
66	The asr driver problem has been resolved.
67
6820011027:
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
7420011025:
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
8120011001:
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
8620010929:
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
9320010927:
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
10420010924:
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
11420010919:
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
12520010918:
126	Peter has committed his new kthread nfs client/server code.
127	NFS may be unstable after this date.
128
12920010912:
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
13520010901:
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
14120010823:
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
15620010709:
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
16220010628:
163	The kernel compile module has moved from src/sys/compile/FOO
164	to src/sys/${MACHINE}/compile/FOO.
165
16620010625:
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
17320010617:
174	Softupdates problems have been corrected.
175
17620010614:
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
18120010613:
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
18720010613:
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
19220010612:
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
20320010610:
204	Locale names have changed to match other systems better.
205
20620010604:
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
22120010530:
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
226install: 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
23120010525:
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
23620010521:
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
242Updater failed: Cannot delete "/usr/ports/www/jakarta-tomcat/files": Directory not empty
243
24420010520:
245	Vm and/or swapping are busted on -current.  Please be patient.
246
24720010519:
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
25220010517:
253	ata ioctl changed.  Make sure to recompile both kernel and
254	userland at the same time.
255
25620010517:
257	New ncurses imported.
258
25920010512:
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
26320010502:
264	Perl breakage in 20010501 was corrected at 14:18:33 PDT.
265
26620010501:
267	Building perl was broken at 02:25:25 PDT.
268
26920010430:
270	The bug in 20010429 was corrected at 07:35:37 PDT.  It is safe to
271	go back in the water.
272
27320010429:
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
27720010423:
278	old fsck and new kernel interactions appear to have been fixed.
279
28020010411:
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
28620010330:
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
29120010319:
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
29720010315:
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
30220010312:
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
30620010312:
307	The wi device now defaults to BSS (infrastructure) mode
308	instead of ad-hoc.
309
31020010310:
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
31520010303:
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
32020010220:
321	The problems with libc have been corrected.  It is now mostly
322	safe to go back into the water.
323
32420010211:
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
34420010207:
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
34820010205:
349	FFS_ROOT and CD9660_ROOT have been removed or deprecated.
350	Remove them from your config.
351
35220010122:
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
35920010119:
360	config has changed to allow DEV_FOO as a replacement for NFOO.
361	This requires a new config to build correctly.
362
36320010116:
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
36820010110:
369	Changes to the kernel require it and burncd be in sync.
370
37120010102:
372	Everyone who has hw.sndunit set to something in
373	/etc/sysctl.conf, it is now hw.snd.unit.
374
37520010101:
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
38820001228:
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
39320001218:
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
39920001205:
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
40820001031:
409	cvs updated to 1.11.
410
41120001020:
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
41820001010:
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
43520001009:
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
43920001006:
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
44420001005:
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
45120000928:
452	There was a change in the passwd format.  Need more information.
453
45420000916:
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
45920000914:
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
46820000911:
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
48020000909:
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
48720000907:
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
49420000906:
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
50120000905:
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
50820000905:
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
53020000904:
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
54020000825:
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
55020000821:
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
55520000812:
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
56320000812:
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
57720000810:
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
58420000729:
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
59420000728:
595	If you have null_load="YES" in your /boot/loader.conf, you
596	will need to change that to nullfs_load="YES".
597
59820000728:
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
60720000711:
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
61820000711:
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
62420000710:
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
63520000709:
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
64120000706:
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
64920000705:
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
65520000704:
656	With the new sys/modules/sound/drivers/*, you will need to
657	set SYSDIR until you do an installworld after July 7th.
658
65920000704:
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
66420000630:
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
66920000625:
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
67820000624:
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
69220000622:
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
69720000621:
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
70420000620:
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
70920000615:
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
72020000612:
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
72820000522:
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
73920000513:
740	The ethernet drivers were all updated to clean up the BPF handling.
741
74220000510:
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
74720000503:
748	Recompile all kld modules.  Proper version dependency info
749	is now available.
750
75120000502:
752	Modules have been disconnected from the buildworld tree and 
753	connected to the kernel building instead.
754
75520000427:
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
76120000417:
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
77020000320:
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
77720000319:
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
78520000318:
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
79320000315:
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
80020000315:
801	4.0 RELEASE shipped.  Please see the 4.0 UPDATING file for how
802	to upgrade to 4.0 from 3.x.
803
804COMMON 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
885FORMAT:
886
887This file contains a list, in reverse chronological order, of major
888breakages in tracking -current.  Not all things will be listed here,
889and it only starts on March 15, 2000.  Updating files can found in
890previous releases if your system is older than this.
891
892Please filter your entries through Warner Losh (imp@village.org) so
893that the style, formatting, etc of this file can be maintained.
894
895Copyright information:
896
897Copyright 1998, 2001 M. Warner Losh.  All Rights Reserved.
898
899Redistribution, publication, translation and use, with or without
900modification, in full or in part, in any form or format of this
901document are permitted.
902
903THIS DOCUMENT IS PROVIDED BY WARNER LOSH ``AS IS'' AND ANY EXPRESS OR
904IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
905WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
906DISCLAIMED.  IN NO EVENT SHALL WARNER LOSH BE LIABLE FOR ANY DIRECT,
907INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
908(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
909SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
910HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
911STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
912IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
913POSSIBILITY OF SUCH DAMAGE.
914
915If you find this document useful, and you want to, you may buy the
916author a beer.
917
918Contact Warner Losh if you have any questions about your use of
919this document.
920
921$FreeBSD: head/UPDATING 89297 2002-01-12 21:27:02Z imp $
922