UPDATING revision 57019
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
23119990919:
232	New jail syscall format requires recompilation of jail(8) with
233	fresh headers installed (or a make world will do it for you).
234
23519990914:
236	Matt Dillon checked in many vm related things and sent a heads up
237	to -current urging caution and to report vm problems to him.
238	As of the 19th, no killer problems have been reported, but you
239	have been warned.
240
24119990908:
242	The new miibus has been added to the system.  If you are using
243	the dm, rl, sf, sis, ste, tl, wb or xl drivers, you need to
244	add "controller miibus0" to your config file.
245
24619990905:
247	/var/cron/log has been moved to /var/log/cron to get all the
248	log files in one place.
249
25019990831:
251	tn3270 has been removed from the base system and added as a port.
252
25319990830:
254	User-visible TCP timers are now expressed in units of 1ms, instead
255	of 500ms, so if you've customized any timer values under
256	``net.inet.tcp'', multiply them by 500 to preserve TCP's behavior.
257
25819990828:
259	RCS Id tags changed to FreeBSD.  This will cause huge cvsup
260	updates.
261
26219990821:
263	On 28-May-1999 libreadline was upgraded from readline-2.2 to
264	readline-4.0.  At that time the shared library major version
265	number was bumped from "3" to "4".  It has been deemed that
266	the interface change between readline-2.2 and readline-4.0 was
267	not sufficient to warrant the version number bump.
268
269	Thus I have reverted it back to "3".  You will need to perform
270	the below immediately before your next ``make world'':
271	    cd /usr/lib
272	    ls -l libreadline.so.4
273	        (if you have /usr/lib/libreadline.so.4)
274	    mv libreadline.so.4 libreadline.so.3
275	    rm -f libreadline.so
276	    ln -s libreadline.so.3 libreadline.so
277
27819990801:
279	Changes to the pccardd kernel interface require that you recompile
280	pccardd for new kernel.
281
28219980725:
283	The ipfw interface to the kernel has changed.  You will need to
284	recompile ipfw programs for the new kernel.
285
28619990715:
287	The bpfilter device has been renamed to bpf.  You will need to 
288	change your config files in order to enable this in newer kernels.
289
29019990704:
291	src/contrib/sys/softupdates is moving to
292	src/sys/contrib/softupdates.  Update your symbolic links/etc.
293
29419990702:
295	Major changes have been made to vinum and its interface.  See
296	the man page (vinum(8)) for details.  Look at the concat,
297	mirror and stripe commands, as well as the SIMPLIFIED
298	CONFIGURATION section.
299
30019990628:
301	Newsyslog.conf has had a minor, but potentially dangerous,
302	change to its username/group syntax.  The old syntax was
303	user.group, while the new syntax is user:group.
304
30519990627:
306	Inetd wrapping default has changed.  Please see the updated
307	man page for details.
308
30919990623:
310	Compaq Smart Raid driver committed as ida.
311
31219990622:
313	The second phase of syscons cleanup has happened.  Some
314	functionality has been made optional.  For details, see
315        http://www.freebsd.org/~yokota/sc_update-June.txt
316	Everyone will need to re-config(8) their kernels, but old
317	binaries will work with the new kernel.
318
31919990620:
320	IPFW uid/gid-based filtering support has been committed. This
321	breaks binary compatibility with previous copies of
322	ipfw(8). Any utilities using the ioctl()s of ipfw (especially
323	ipfw(8)) need to be recompiled with the newest headers
324	installed.
325
32619990618:
327	Inetd now wraps all stream-based services, including internals.
328	Syslog "severity" options are honoured. Installed syslog.conf
329	and hosts.allow should be checked.
330
33119990509:
332	Most of the problems with newbus have been corrected, but
333	it is still current and evolving.
334
335	libcam's ABI has changed.  You must recompile the world and
336	any ports that use it.
337
33819990427:
339	Massive changes to SMP went into the tree that should speed
340	things up.  However, if you experience problems with SMP 
341	machines, you can back off to the PRE_SMP_VMSHARE tag in the
342	CVS repository (or run an MP kernel).
343
34419990420:
345	Pccardd and the pccard bus in general seem to be broken or
346	most people.  Soren has patches to make it better for some,
347	but not all people.  Work is underway to make it better for
348	all people.
349
35019990416:
351	new bus changes integrated into -current.  Many problems were
352	initially reported, but most have been fixed.  You'll need a
353	new config and to tweak your kernel config file the way that
354	GENERIC was tweaked.  Keep a copy of your old kernel when
355	upgrading in case your new kernel doesn't work (and report the
356	breakage to current@freebsd.org).
357
358	As of 19990421 the remaining problems/quirks are
359
360	o sio no longer supports pnp nor pccard.  This will be corrected,
361	  but the new pccard code needs to be completed.
362	o Some of the sound drivers broke for some people.  It seems
363	  inconsistant as to who/what/when/where things broke.
364	o Duplicate device entries in your config do not work.  Previously
365	  they were silently ignored.  psm0 seems to be the most common
366	  duplicate choice, although some reports have come in from people
367	  that wired their scsi disk entries.
368	o You must move the keyboard and mouse attachments from the
369	  isa bus to the atkbdc bus.  See GENERIC for details.
370	o Machines with multiple host-pci bridges (Intel 450NX) will not
371	  probe the second pci bus.
372	o Some probe ordering may have changed, so device naming may change
373	  with the new kernel.  If you have multiple devices, please double
374	  check to make sure they didn't move.  This is especially true
375	  for cards on different buses.
376	o The bus attachment for vga0 is always isa0 and never pci0 when
377	  it is in fact a pci card.  It is safe to ignore this.
378	o The format of the boot messages has changed (and is not
379	  guaranteed to be constant for a while) so you may see this
380	  in some shell scripts that diff dmesg from day to day as well
381	  as scripts that parse dmesg output.
382
38319990414:
384	cc -aout sometimes has problems compiling with -g, remove -g
385	from those compilation units affected until this is corrected.
386
387	cc -aout has problems with producing some threaded libraries,
388	so make world -DWANT_AOUT is not functional at this time.
389
390	Since make world for a.out isn't functional, you cannot do
391	make aout-to-elf from a pre-egcs a.out system.  To work around
392	this problem, make aout-to-elf using 3.1-stable first (or a
393	pre egcs -current) and then a simple make world will take you
394	the rest of the way with a -current source base.
395
39619990413:
397	Make -j works again for make world.  As always, use it with
398	care, and be sure to try a make world w/o -j before reporting
399	problems (that is, know if the problem exists w/o -j before
400	reporting the problem with -j).
401
40219990413:
403	Note cc -aout, which had been broken since the conversion to
404	egcs, now supposedly works.  If you have rebuilt things like
405	XFree86 a.out libraries, you should rebuild them again or
406	progams that use them, including netscape, will fail to work.
407
40819990409:
409	NOTE: New c++ compiler cannot be used with c++ binaries from
410	the old compiler and vice versa.
411
41219990408:
413	In recent days egcs has been imported into the tree.  A number
414	of problems have been discussed in -current.  Here is a highlight
415	of a few of the more common ones.  With the exception of make
416	-j n, they have been claimed to have been fixed.
417
418	c++ is broken after make world: This is correct.  Because we
419	changed compilers two make worlds are necessary to get C++
420	working again.  The code generated by the old compiler and new
421	compiler are not compatible, so things wind up being
422	undefined.
423
424	cpp is broken in make world:  There was a window where cpp
425	would be built incorrectly.  The fix for this is
426		cd src/gnu/usr.bin/cc
427		make clean
428		make all
429		make install
430	and this should correct your problems.  See the -current
431	archives for a version of this that does moer cleaning.
432
433	Make -j n doesn't work.  Work contiunes to make this work,
434	I've seen no reports of success as of April 7th.
435
43619990329:
437	Previously, one would define "NOAOUT" to keep from building
438	the legacy a.out bits.  Now one would define "WANT_AOUT" to
439	build them.
440
44119990316:
442	The name of the old wd.c and atapi.c based CDROM driver has
443	been changed back to wcd. So update your config file to use
444	"device wcd" instead of "device acd".
445
44619990314:
447	For those of you using the VN device as a loadable module,
448	please be aware that the new VN device has been committed to
449	-4.x and cannot yet be used as a loadable module.  This will
450	be fixed in the future.
451	
45219990309:
453	New loader.rc mechanism.  Please see src/sys/boot/README for
454	details.
455
45619990225:
457	struct proc size changed.  Recompile kernel and the
458	usual suspects.  Make world if in doubt.
459
46019990214:
461	The nlpt driver has changed names back to be the lpt driver.
462	See ppbus(4) or http://www.freebsd.org/~nsouch/ppbus.html
463	for proper configuration details.
464
46519990210:
466	The 'lpt' driver is now obsolete.  Replace it with the 'nlpt'
467	driver and 'ppbus' controller combination.
468
46919990209:
470	New devstat API requires recompilation of libdevstat, systat,
471	iostat, vmstat and rpc.rstatd.  A new kernel is also required.
472	make world + building a kernel should do all of this.  Any
473	ports that use devstat need to be recompiled as well.
474
47519990125:
476	Linux threads options has gone away (they are now standard in
477	the FreeBSD kernel).  A recompile of all libkvm using programs
478	is in order (or better yet a make world).
479
48019990122:
481	On or about this date there was a small window when the boot
482	blocks had some minor problems which seemed to force one to
483	edit /etc/fstab.  This has been corrected, if you are seeing this
484	problem, please rebuild and reinstall your boot blocks.
485
48619990121:
487	Vinum has changed.  The "vinum read" command has changed.  For
488	updates, please see
489
490http://www.freebsd.org/cgi/getmsg.cgi?fetch=800363+0+current/freebsd-current
491
492	for details.  
493
494	Matt Dillon committed a boatload of VM changes, for
495	information please see
496
497http://www.freebsd.org/cgi/getmsg.cgi?fetch=886676+0+current/freebsd-current
498	or
499http://www.freebsd.org/cgi/getmsg.cgi?fetch=827400+0+current/freebsd-current
500
501	for details.  These changes will likely not impact anybody,
502	but large chagnes to the VM need at least a heads up.
503
50419990120:
505	Stable branch created.  You might want to consider using this
506	branch.  It is tagged with RELENG_3.
507
50819990119:
509	More work on the syscons driver has been committed.  Since
510	files moved around, you will need to reconfigure your kernel,
511	and make clean; make depend before rebuilding the kernel.  No
512	config file changes are needed.
513
51419990111:
515	New keyboard and video card drivers are introduced as the first
516	stage of console driver reorganization.  You are required to
517	update the kernel configuration file and rebuild the kernel.
518	kbdcontrol, vidcontrol, and screen savers also need recompilation.
519	The instruction can be found in
520
521		http://www.freebsd.org/~yokota/sc_update.txt
522
523	It has notes on splash screen too.
524
52519990106:
526	Robert Nordier was kind enough to make this page to enable people to
527	install the new bootblocks:
528
529		http://www.freebsd.org/~rnordier/boot.txt
530
531	When updating to ELF, make sure that you have updated your
532	/etc/rc files which have different ldconfig invocations for
533	elf and aout.  Otherwise things like X will stop working with
534	messages about being unable to find library files.  The
535	mergemaster utility in ports/sysutils/mergemaster helps to
536	keep critical files like this in sync, and its use is
537	recommended.
538
53919990104:
540	Information about ELF day (see 19981230) can be found in
541
542		http://www.freebsd.org/~peter/elfday.html
543
544	about the upcoming change, its motivations and instructions
545	for doing the upgrade.
546
54719981230:
548	You should install new bootblocks now.  The ELF kernel will
549	become default soon.  In addition, you'll need to upgrade
550	your userland programs to ELF before then as well.  Use
551	make aout-to-elf to upgrade your userland programs (old
552	a.out programs in, for example, /usr/local/bin will
553	continue to work, even after the upgrade).  See src/Makefile
554	for more details.
555
55619981224:
557	The old wcd driver has been deleted from the kernel.  The
558	driver that replaces it is named acd.  You'll need to change
559	this in your configuration files.
560
561	Failure to do this will result in "ATAPI CD-ROMs not
562	configured" at boot time.
563
564	The floppy tape driver (ft) has been removed from the kernel,
565	with no replacement driver.
566
56719981202:
568	New groups from 19981201 commented out of mtree, so they
569	aren't strictly needed, but still a good idea to have.
570
57119981201:
572	New user/group added: bind.  From src/etc/master.passwd and
573	src/etc/group:
574		% grep <newstuff> /usr/src/etc/group 
575		bind:*:53:
576		% grep <newstuff> /usr/src/etc/master.passwd 
577		tty:*:4:65533::0:0:Tty Sandbox:/:/sbin/nologin
578		kmem:*:5:65533::0:0:KMem Sandbox:/:/sbin/nologin
579		bind:*:53:53::0:0:Bind Sandbox:/:/sbin/nologin
580
58119981118:
582	PAM integrated into the tree.   Requires new /etc/pam.conf file
583	to silence warnings from authentication programs (login, etc).
584	See src/etc/pam.conf for a sample.
585
586COMMON ITEMS:
587
588	To build a kernel
589	-----------------
590	Update config, genassym and go:
591		cd src/usr.bin/genassym
592		make depend all install clean
593		cd ../../usr.sbin/config
594		make depend all install clean
595		cd ../../sys/i386/conf
596		config YOUR_KERNEL_HERE
597		cd ../../compile/YOUR_KERNEL_HERE
598		make depend && make
599
600	To rebuild disk /dev entries
601	----------------------------
602
603	MAKEDEV should be copied from src/etc/MAKEDEV to /dev before
604	starting the following:
605
606		For N in the list of disks
607			MAKEDEV N			# eg ad0
608			for M in the list of slices
609				MAKEDEV NsMa		# eg ad0s1a
610
611
612	To rebuild everything
613	---------------------
614	make world
615
616	To update from 3.x to 4.0 stable
617	--------------------------------
618	make world
619
620FORMAT:
621
622This file contains a list, in reverse chronologocal order, of major
623breakages in tracking -current.  Not all things will be listed here,
624and it only starts on November 18, 1998.  If you have an earlier
625version of FreeBSD, you are on your own to get to November 18, 1998.
626
627Please filter your entries through Warner (imp@village.org) so that
628the style, formatting, etc of this file can be maintained.
629
630$FreeBSD: head/UPDATING 57019 2000-02-07 05:14:16Z imp $
631