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