xref: /freebsd/UPDATING (revision 81adddf30a753f74b7e3c6d6061d1a19a4c6a512)
157199806SWarner LoshUpdating Information for FreeBSD current users
253dfde79SWarner Losh
3e72fd46aSWarner LoshThis file is maintained and copyrighted by M. Warner Losh
49698f2c0SWarner Losh<imp@village.org>.  See end of file for further details.  For commonly
59698f2c0SWarner Loshdone items, please see the COMMON ITEMS: section later in the file.
6e72fd46aSWarner Losh
72c724730SWarner LoshItems affecting the ports and packages system can be found in
82c724730SWarner Losh/usr/ports/UPDATING.  Please read that file before running
92c724730SWarner Loshportupgrade.  Important recent entries: 20040724 (default X changes).
102c724730SWarner Losh
11f692e7ecSWarner Losh[[ The UPDATING file will be trimmed to 20040814 on or about Oct 1, 2004 ]]
12f692e7ecSWarner Losh
13f692e7ecSWarner LoshNOTE TO PEOPLE WHO THINK THAT FreeBSD 6.x IS SLOW:
14f692e7ecSWarner Losh	FreeBSD 6.x has many debugging features turned on, in
1569f7bcf3SWarner Losh	both the kernel and userland.  These features attempt to detect
1669f7bcf3SWarner Losh	incorrect use of system primitives, and encourage loud failure
1769f7bcf3SWarner Losh	through extra sanity checking and fail stop semantics.  They
1869f7bcf3SWarner Losh	also substantially impact system performance.  If you want to
1969f7bcf3SWarner Losh	do performance measurement, benchmarking, and optimization,
2069f7bcf3SWarner Losh	you'll want to turn them off.  This includes various WITNESS-
2169f7bcf3SWarner Losh	related kernel options, INVARIANTS, malloc debugging flags
2269f7bcf3SWarner Losh	in userland, and various verbose features in the kernel.  Many
2369f7bcf3SWarner Losh	developers choose to disable these features on build machines
24a19f8ddaSDavid E. O'Brien	to maximize performance.
25c1f61aa9SDavid E. O'Brien
2681adddf3SJohn Baldwin20041116:
2781adddf3SJohn Baldwin	Support for systems with an 80386 CPU has been removed.  Please
2881adddf3SJohn Baldwin	use FreeBSD 5.x or earlier on systems with an 80386.
2981adddf3SJohn Baldwin
3042ba1c57SPoul-Henning Kamp20041110:
3142ba1c57SPoul-Henning Kamp	We have had a hack which would mount the root filesystem
3242ba1c57SPoul-Henning Kamp	R/W if the device were named 'md*'.  As part of the vnode
3342ba1c57SPoul-Henning Kamp	work I'm doing I have had to remove this hack.  People
3442ba1c57SPoul-Henning Kamp	building systems which use preloaded MD root filesystems
3542ba1c57SPoul-Henning Kamp	may need to insert a "/sbin/mount -u -o rw /dev/md0 /" in
3642ba1c57SPoul-Henning Kamp	their /etc/rc scripts.
3742ba1c57SPoul-Henning Kamp
38c94c54e4SAndre Oppermann20041102:
39c94c54e4SAndre Oppermann	The size of struct tcpcb has changed again due to the removal
40c94c54e4SAndre Oppermann	of RFC1644 T/TCP.  You have to recompile userland programs that
41c94c54e4SAndre Oppermann	read kmem for tcp sockets directly (netstat, sockstat, etc.)
42c94c54e4SAndre Oppermann
43cd109b0dSAndre Oppermann20041022:
44cd109b0dSAndre Oppermann	The size of struct tcpcb has changed.  You have to recompile
45cd109b0dSAndre Oppermann	userland programs that read kmem for tcp sockets directly
46cd109b0dSAndre Oppermann	(netstat, sockstat, etc.)
47cd109b0dSAndre Oppermann
487b606583SPoul-Henning Kamp20041018:
497b606583SPoul-Henning Kamp	A major sweep over the tty drivers to elimnate approx 3100
507b606583SPoul-Henning Kamp	lines of copy&pasted code have been performed.  As a part of
517b606583SPoul-Henning Kamp	this change some tty devices have changed names:
527b606583SPoul-Henning Kamp	sio devices are now named:	{tty,cua}d%d[.init,.lock]
537b606583SPoul-Henning Kamp	ucom devices are now named:	{tty,cua}U%d[.init,.lock]
547b606583SPoul-Henning Kamp	For other drivers see the commit logs.
557b606583SPoul-Henning Kamp
56cf0684aeSMike Makonnen20041007:
57028a5b92SMike Makonnen	The FreeBSD keyword is no longer a requirement for a valid
58028a5b92SMike Makonnen	rc.d script. The rc(8) and rc.shutdown(8) scripts no longer check
59028a5b92SMike Makonnen	for the existence of this keyword when ordering rc.d scripts.
6000bd8f10SMike Makonnen	This change touches most of the file in /etc/rc.d; therefore,
6100bd8f10SMike Makonnen	if you have not modified any files in that directory it may
6200bd8f10SMike Makonnen	be easier to rm -rf /etc/rc.d and then use the -i switch with
6300bd8f10SMike Makonnen	mergemaster(8).
64028a5b92SMike Makonnen
65028a5b92SMike Makonnen20041007:
66cf0684aeSMike Makonnen	One of the syscalls the 1:1 threading library libthr uses has
67cf0684aeSMike Makonnen	changed, thus breaking ABI compatibility. Make sure you rebuild
68cf0684aeSMike Makonnen	this library with the kernel.
69cf0684aeSMike Makonnen
7085a8b887SKen Smith20041001:
7185a8b887SKen Smith	The following libraries had their version number bumped up:
7285a8b887SKen Smith		/lib/libm.so.2 -> libm.so.3
7385a8b887SKen Smith		/lib/libreadline.so.4 -> libreadline.so.5
7485a8b887SKen Smith		/usr/lib/libhistory.so.4 -> libhistory.so.5
7585a8b887SKen Smith		/usr/lib/libopie.so.2 -> libopie.so.3
7685a8b887SKen Smith		/usr/lib/libpcap.so.2 -> libpcap.so.3
7785a8b887SKen Smith	FreeBSD 4.10 versions of these libraries will be added to the
7885a8b887SKen Smith	compat4x collection.  If you expect to be able to run old 4.X
7985a8b887SKen Smith	executables you will need to remove the old versions of these
8085a8b887SKen Smith	libraries.  However note that any 5.X executables you have built
8185a8b887SKen Smith	will stop working once you remove those old libraries.  You should
8285a8b887SKen Smith	have all your ports/packages rebuilt before removing the old
8385a8b887SKen Smith	libraries.
8485a8b887SKen Smith
85d6a8d588SMax Laier20040929:
86d6a8d588SMax Laier	The pfil API has gained an additional argument to pass an inpcb.
87d6a8d588SMax Laier	You should rebuild all pfil consuming modules: ipfw, ipfilter
88d6a8d588SMax Laier	and pf.
89d6a8d588SMax Laier
908f1bb389SDoug Barton20040928:
91cfeb1f52SDoug Barton	If named is enabled, the default is now to run it in a chroot
928f1bb389SDoug Barton	"sandbox." For users with existing configurations in
938f1bb389SDoug Barton	/etc/namedb the migration should be simple. Upgrade your
948f1bb389SDoug Barton	world as usual, then after installworld but before
958f1bb389SDoug Barton	mergemaster do the following:
968f1bb389SDoug Barton
978f1bb389SDoug Barton	If named is running: /etc/rc.d/named stop
988f1bb389SDoug Barton	cd /etc
998f1bb389SDoug Barton	mv namedb namedb.bak
1008f1bb389SDoug Barton	mkdir -p /var/named/etc/namedb
1018f1bb389SDoug Barton	cp -Rp namedb.bak/* /var/named/etc/namedb/
1028f1bb389SDoug Barton	mergemaster (with your usual options)
1038f1bb389SDoug Barton	If using the generated localhost* files:
1048f1bb389SDoug Barton		cd /var/named/etc/namedb
1058f1bb389SDoug Barton		/bin/sh make-localhost
1068f1bb389SDoug Barton		rm -f localhost-v6.rev localhost.rev
107cfeb1f52SDoug Barton	/etc/rc.d/syslogd restart
1088f1bb389SDoug Barton	/etc/rc.d/named start
1098f1bb389SDoug Barton
1108f1bb389SDoug Barton	If you are using a custom configuration, or if you have
1118f1bb389SDoug Barton	customised the named_* variables in /etc/rc.conf[.local]
1128f1bb389SDoug Barton	then you may have to adjust the instructions accordingly.
1138f1bb389SDoug Barton	It is suggested that you carefully examine the new named
1148f1bb389SDoug Barton	variables in /etc/defaults/rc.conf and the options in
1158f1bb389SDoug Barton	/var/named/etc/namedb/named.conf to see if they might
1168f1bb389SDoug Barton	now be more suitable.
1178f1bb389SDoug Barton
1185d36721aSDoug Barton20040925:
1195d36721aSDoug Barton	BIND 9 has been imported into the base, and is now fully
1205d36721aSDoug Barton	functional. BIND 8 has now been removed. There are numerous
1215d36721aSDoug Barton	differences between BIND 8 and 9, and users with critical
1225d36721aSDoug Barton	named installations should read the migration documentation
1235d36721aSDoug Barton	in /usr/share/doc/bind9/misc/migration. There is also a
1245d36721aSDoug Barton	new instruction manual in /usr/share/doc/bind9/arm.
1255d36721aSDoug Barton
1265d36721aSDoug Barton	The key differences that most users will experience are in
1275d36721aSDoug Barton	how picky BIND 9 is about zone file format. If you are using
1285d36721aSDoug Barton	named as a resolving (caching) name server, you will likely
1295d36721aSDoug Barton	not have trouble.
1305d36721aSDoug Barton
131f50b1bdbSDoug Barton	The following files are part of the old BIND 8 installation
132f50b1bdbSDoug Barton	and should be removed:
133f50b1bdbSDoug Barton	/usr/bin/dnskeygen /usr/bin/dnsquery /usr/libexec/named-xfer
134f50b1bdbSDoug Barton	/usr/sbin/named.restart /usr/sbin/ndc
135f50b1bdbSDoug Barton
136f50b1bdbSDoug Barton	The following files have moved to /usr/bin, and should be
137f50b1bdbSDoug Barton	removed from their old locations:
138f50b1bdbSDoug Barton	/usr/sbin/nslookup /usr/sbin/nsupdate
139f50b1bdbSDoug Barton
140f5ee5a8bSMax Laier20040914:
141f5ee5a8bSMax Laier	The format of the pflogd(8) logfile "/var/log/pflog" has changed for
142f5ee5a8bSMax Laier	architectures that have a 64 bit long type to make it compatible to
143f5ee5a8bSMax Laier	the standard pcap format. In order to prevent corruption move away
144f5ee5a8bSMax Laier	any old logfile before using a new pflogd(8).
145f5ee5a8bSMax Laier
146d698cdb3SJohn-Mark Gurney20040906:
147d698cdb3SJohn-Mark Gurney	debug.witness_* has been renamed to debug.witness.*.  There are
148d698cdb3SJohn-Mark Gurney	compatibility tunables left in for a few days.  Update loader.conf
149d698cdb3SJohn-Mark Gurney	as necessary.
150d698cdb3SJohn-Mark Gurney
1514ff62bd9SBrooks Davis20040902:
1524ff62bd9SBrooks Davis	The ifi_epoch change has been reverted because the ABI breakage
1534ff62bd9SBrooks Davis	was too extensive.  If you are running with a kernel/userland
1544ff62bd9SBrooks Davis	containing the initial change (20040830), you should heed the
1554ff62bd9SBrooks Davis	warning about ifconfig incompatibility when upgrading again.
1564ff62bd9SBrooks Davis	With this change, 5.3 and 6.0 ifconfigs and kernels are once
1574ff62bd9SBrooks Davis	again interoperable.
1584ff62bd9SBrooks Davis
1591fc4519bSBrooks Davis20040830:
1601fc4519bSBrooks Davis	A new variable, ifi_epoch, has been added to struct if_data
1611fc4519bSBrooks Davis	which is part if struct ifnet.  This means all network drivers
1621fc4519bSBrooks Davis	and network monitoring applications need to be recompiled.
1631fc4519bSBrooks Davis
1643789fb75SBrooks Davis        WARNING WARNING WARNING WARNING WARNING WARNING WARNING
1653789fb75SBrooks Davis
1663789fb75SBrooks Davis        This also breaks ifconfig compatibility.  An old ifconfig will
1673789fb75SBrooks Davis        not work with the new kernel and a new ifconfig will not work
1683789fb75SBrooks Davis        with the old.  It is strongly recommended that you make a copy
1693789fb75SBrooks Davis        of your old ifconfig before installworld.  If you are installing
1703789fb75SBrooks Davis        remotely, you must copy over a new ifconfig before rebooting in
1713789fb75SBrooks Davis        to the new kernel.
1723789fb75SBrooks Davis
173c1c94d5cSRobert Watson20040828:
174c1c94d5cSRobert Watson	The default configuration for the network stack has been changed
175c1c94d5cSRobert Watson	such that it now runs without the Giant lock unless configured
176c1c94d5cSRobert Watson	otherwise.  If you experience network-related instability, you
177c1c94d5cSRobert Watson	may wish to try setting "debug.mpsafenet=0" or compiling the
178c1c94d5cSRobert Watson	kernel with "options NET_WITH_GIANT".  Details on the netperf
179c1c94d5cSRobert Watson	project may be found at:
180c1c94d5cSRobert Watson
181c1c94d5cSRobert Watson	    http://www.watson.org/~robert/freebsd/netperf/
182c1c94d5cSRobert Watson
183c1c94d5cSRobert Watson	Including the 20040828 announcement of configuration change
184c1c94d5cSRobert Watson	details.
185c1c94d5cSRobert Watson
186c21fd232SAndre Oppermann20040827:
187c21fd232SAndre Oppermann	PFIL_HOOKS are a fixed part of the network stack now and do not
188c21fd232SAndre Oppermann	need to be specified in the kernel configuration file anymore.
189c21fd232SAndre Oppermann
190f036d408SJulian Elischer20040819:
191f036d408SJulian Elischer	Netgraph changed its message format slightly to align the data
192f036d408SJulian Elischer	portion well on 64 bit machines.
193f036d408SJulian Elischer	Netgraph using utilities (e.g. ngctl, nghook, ppp, mpd,
194f036d408SJulian Elischer	pppoed, bluetooth, ATM) should be recompiled when a new kernel
195f036d408SJulian Elischer	is installed.
196f036d408SJulian Elischer
197b067abfaSAndre Oppermann20040817:
1980ce70eb4SAndre Oppermann	IPFW has been converted to use PFIL_HOOKS.  This change is
199b067abfaSAndre Oppermann	transparent to userland and preserves the ipfw ABI.  The ipfw
200b067abfaSAndre Oppermann	core packet inspection and filtering functions have not been
201b067abfaSAndre Oppermann	changed, only how ipfw is invoked is different.  Note that
202b067abfaSAndre Oppermann	"option PFIL_HOOKS" is required to use IPFIREWALL compiled
203b067abfaSAndre Oppermann	into the kernel or as KLD.
204b067abfaSAndre Oppermann
205f13a7951SDavid Malone20040814:
206f13a7951SDavid Malone	The RANDOM_IP_ID option has been replaced by the sysctl
207f13a7951SDavid Malone	net.inet.ip.random_id. If you had RANDOM_IP_ID in your kernel then
208f13a7951SDavid Malone	you may want to add "net.inet.ip.random_id=1" to /etc/sysctl.conf.
209f13a7951SDavid Malone
2103a004637SMax Laier20040807:
2113a004637SMax Laier	The size of 'struct ifnet' has changed due to the addition of the
2123a004637SMax Laier	if_carp placeholder.  All kernel modules implementing network
2133a004637SMax Laier	interfaces must be recompiled as a result.
2143a004637SMax Laier
2154f34d8d1SJohn-Mark Gurney20040806:
2164f34d8d1SJohn-Mark Gurney	Module loading has been fixed.  Some older installations will
217ac41c814SRuslan Ermilov	drop proper module_path initialization and modules will fail to
2184f34d8d1SJohn-Mark Gurney	load properly.  If you have a line in /boot/loader.rc that says:
2194f34d8d1SJohn-Mark Gurney	"initialize drop", do (i386 only):
2204f34d8d1SJohn-Mark Gurney		cp /usr/src/sys/boot/i386/loader/loader.rc /boot/loader.rc
2214f34d8d1SJohn-Mark Gurney		chown root:wheel /boot/loader.rc
2224f34d8d1SJohn-Mark Gurney		chmod 444 /boot/loader.rc
2234f34d8d1SJohn-Mark Gurney
2248f075db4SMark Murray20040802:
2258f075db4SMark Murray	making /dev/(null|zero) into a module proved to be too unpopular,
2268f075db4SMark Murray	so this bit has been revoked from the previous (20040801) entry.
2278f075db4SMark Murray
228d064d6dbSMark Murray20040801:
229d064d6dbSMark Murray	The /dev/mem, /dev/io /dev/(null/zero) devices are now modules,
230d064d6dbSMark Murray	so you may wish to add them to your kernel config file. See
231d064d6dbSMark Murray	GENERIC for examples.
232d064d6dbSMark Murray
233b289983eSAlexander Kabaev20040728:
23454bd5271SAlexander Kabaev	System compiler has been upgraded to GCC 3.4.2-pre. As with any major
23554bd5271SAlexander Kabaev	compiler upgrade, there are several issues to be aware of. GCC 3.4.x
23654bd5271SAlexander Kabaev	has broken C++ ABI compatibility with previous releases yet again
23754bd5271SAlexander Kabaev	and users will have to rebuild all their C++ programs with the new
238d0e54ab4SDavid E. O'Brien	compiler. If you are getting run-time error such as
239d0e54ab4SDavid E. O'Brien	/libexec/ld-elf.so.1: Undefined symbol "_ZNSs20_S_empty_rep_storageE"
240d0e54ab4SDavid E. O'Brien	This entry does apply to you.
241d0e54ab4SDavid E. O'Brien
242d0e54ab4SDavid E. O'Brien	A new unit-at-a-time optimization mode, which is default in this
243d0e54ab4SDavid E. O'Brien	compiler release, is more aggressive in removing unused static
244d0e54ab4SDavid E. O'Brien	symbols. This is the likely cause of 'make buildworld' breakages
245cd5f061cSWarner Losh	with non-default CFLAGS where optimization level is set to -O2
246cd5f061cSWarner Losh	or higher.
24754bd5271SAlexander Kabaev
2486e1afae3SWarner Losh	With the upgrade of the system compiler, the kernel has been upgraded
2496e1afae3SWarner Losh	to match the new system compiler.  This makes it impossible to build
2506e1afae3SWarner Losh	a new kernel with the old compiler.  Upgrade your system via
2516e1afae3SWarner Losh	make buildworld and make kernel (see below) to fix this problem.
2526e1afae3SWarner Losh
25336ed21e6SRobert Watson20040727:
25436ed21e6SRobert Watson	The size of 'struct ifnet' has changed due to the addition of
25536ed21e6SRobert Watson	the IFF_NEEDSGIANT flag (and what it implies).  All kernel
25636ed21e6SRobert Watson	modules implementing network interfaces must be recompiled as
25736ed21e6SRobert Watson	a result.
25836ed21e6SRobert Watson
2596305ac24SSeigo Tanimura20040716:
2606305ac24SSeigo Tanimura	The sound device drivers are renamed.  `sound' is always required,
2616305ac24SSeigo Tanimura	while `snd_*' should be configured accordingly to your hardware.
2626305ac24SSeigo Tanimura	Refer to NOTES for the detail of the drivers.
2636305ac24SSeigo Tanimura
264e623dcb7SMarcel Moolenaar20040710:
265e623dcb7SMarcel Moolenaar	__FreeBSD_version bumped to 502122.
266e623dcb7SMarcel Moolenaar
267e623dcb7SMarcel Moolenaar20040710:
268e623dcb7SMarcel Moolenaar	The console initialization on Alpha has been reworked and is now
269e623dcb7SMarcel Moolenaar	identical to other platforms. This means that the hardcoding of
270e623dcb7SMarcel Moolenaar	the serial console and the debug port has been removed. As such,
271e623dcb7SMarcel Moolenaar	hints are now required for the sio(4) driver to become a console
272e623dcb7SMarcel Moolenaar	or debug port. The NO_SIO option has been decommissioned because
273e623dcb7SMarcel Moolenaar	of this.
274e623dcb7SMarcel Moolenaar
275e623dcb7SMarcel Moolenaar20040710:
276e623dcb7SMarcel Moolenaar	A revamp of the debugging code in the kernel with some visible
277e623dcb7SMarcel Moolenaar	changes beyond just the debugging experience:
278e623dcb7SMarcel Moolenaar	o  The DDB option is now specific to the DDB debugger backend
279e623dcb7SMarcel Moolenaar	   and should not be used any more for conditional compilation
280e623dcb7SMarcel Moolenaar	   of debugging code for when debugging is enabled. Use the KDB
281e623dcb7SMarcel Moolenaar	   option for this.
282e623dcb7SMarcel Moolenaar	o  The WITNESS_DDB, DDB_TRACE and DDB_UNATTENDED options have
283e623dcb7SMarcel Moolenaar	   been renamed to WITNESS_KDB, KDB_TRACE and KDB_UNATTENDED
284e623dcb7SMarcel Moolenaar	   respectively. This is in line with the first bullet.
285e623dcb7SMarcel Moolenaar	o  The remote GDB support has been untangled from DDB and needs
2865bd7ce0aSJens Schweikhardt	   to be enabled separately now. Use the GDB option for this.
287e623dcb7SMarcel Moolenaar	o  The GDB_REMOTE_CHAT option has been removed. Support for this
288e623dcb7SMarcel Moolenaar	   homegrown feature is discontinued. The GDB remote protocol
289e623dcb7SMarcel Moolenaar	   supports console output and it makes sense to use that.
290e623dcb7SMarcel Moolenaar	o  The DDB_NOKLDSYM option has been removed. The DDB debugger
291e623dcb7SMarcel Moolenaar	   now supports both direct symbol table lookups as well as KLD
292e623dcb7SMarcel Moolenaar	   symbol lookups through the linker.
293e623dcb7SMarcel Moolenaar
2946421d1dbSMaksim Yevmenkin20040708:
2956421d1dbSMaksim Yevmenkin	Bluetooth code has been marked as non-i386 specific.
2966421d1dbSMaksim Yevmenkin	__FreeBSD_version has been bumped to 502121 to mark this change.
2976421d1dbSMaksim Yevmenkin
29858af3216SWarner Losh20040702:
29958af3216SWarner Losh	The native preemption has been added to the kernel scheduler.
3005bd7ce0aSJens Schweikhardt	There is some report that the ULE scheduler was broken in some
3015bd7ce0aSJens Schweikhardt	machines and we encourage users using the ULE scheduler either
3025bd7ce0aSJens Schweikhardt	stick with a known good kernel, or temporarily switch to the 4BSD
30358af3216SWarner Losh	scheduler as a workaround.
30458af3216SWarner Losh
305c2dba668SNate Lawson20040630:
3068ed370fdSJulian Elischer	The netgraph ABI version number has been incremented to indicate
3078ed370fdSJulian Elischer	an incompatible change in the ABI. Old netgraph nodes will refuse
308a6c26e1cSBruce M Simpson	to attach until recompiled. Netgraph now uses mbuf tags to move
309a6c26e1cSBruce M Simpson	metadata and this commit removes its home-grown metadata facility.
310a6c26e1cSBruce M Simpson	Nodes should just recompile, unless they use metadata, in which
311a6c26e1cSBruce M Simpson	case the changes are simple; the file ng_ksocket.c serves as an
312a6c26e1cSBruce M Simpson	example of such changes.
3138ed370fdSJulian Elischer
31458af3216SWarner Losh	This also broke i4b, although the compile problem has been papered
31558af3216SWarner Losh	over.
31658af3216SWarner Losh
3178ed370fdSJulian Elischer20040630:
318c2dba668SNate Lawson	ACPI has been updated to disable known-bad BIOS revisions.  A message
3195bd7ce0aSJens Schweikhardt	will be printed on the console indicating that ACPI has been disabled
320c2dba668SNate Lawson	automatically and that the user should use a newer BIOS, if possible.
321c2dba668SNate Lawson	If you think ACPI does work on your system and want to override
322c2dba668SNate Lawson	this (i.e., for testing), set hint.acpi.0.disabled="0" at the
323c2dba668SNate Lawson	loader prompt.
324c2dba668SNate Lawson
3258ee2ac9eSMax Laier20040623:
3265bd7ce0aSJens Schweikhardt	pf was updated to OpenBSD-stable 3.5 and pflogd(8) is privilege
3278ee2ac9eSMax Laier	separated now. It uses the newly created "_pflogd" user/group
3288ee2ac9eSMax Laier	combination. If you plan to use pflogd(8) make sure to run
3298ee2ac9eSMax Laier	mergemaster -p or install the "_pflogd" user and group manually.
3308ee2ac9eSMax Laier
3313db5687dSBrooks Davis20040622:
3323db5687dSBrooks Davis	Network interface cloning has been overhauled.  This change will
3333db5687dSBrooks Davis	require a recompile of modules using cloning and modification of
3343db5687dSBrooks Davis	external ones to the new API.  __FreeBSD_version has been bumped
3353db5687dSBrooks Davis	to 502119 to mark this change.  Additionally, users creating
3363db5687dSBrooks Davis	stf(4) interfaces via "ifconfig stf" will need to update their
3373db5687dSBrooks Davis	scripts as this will create an interface named "stf" instead of
3383db5687dSBrooks Davis	"stf0" and ifconfig will not print "stf0" to stdout.
3393db5687dSBrooks Davis
340e0ae81f3SDag-Erling Smørgrav20040621:
341e0ae81f3SDag-Erling Smørgrav	On 20040524, the /etc/rc.d/nsswitch script was modified to
342e0ae81f3SDag-Erling Smørgrav	automatically create /etc/nsswitch.conf on startup if it did
343e0ae81f3SDag-Erling Smørgrav	not already exist.  Unfortunately, an error in the man page
344e0ae81f3SDag-Erling Smørgrav	was carried over to the script, resulting in incorrect
345e0ae81f3SDag-Erling Smørgrav	nsswitch settings.  The simplest remedy is to remove both
346e0ae81f3SDag-Erling Smørgrav	/etc/nsswitch.conf and /etc/host.conf; they will be recreated
347e0ae81f3SDag-Erling Smørgrav	during the next reboot.
348e0ae81f3SDag-Erling Smørgrav
3494717d22aSJohn Polstra20040614:
3504717d22aSJohn Polstra	The return value of sema_timedwait(9) has been changed to
3514717d22aSJohn Polstra	make it consistent with cv_timedwait(9).  Be sure to recompile
3524717d22aSJohn Polstra	the ips module and any third-party modules which call
3534717d22aSJohn Polstra	sema_timedwait.
3544717d22aSJohn Polstra
3556cb7a382SMax Laier20040613:
3566cb7a382SMax Laier	ALTQ is now linked to the build. This breaks ABI for struct ifnet.
3576cb7a382SMax Laier	Make sure to recompile modules and any userland that makes use of
358df843493SMax Laier	sizeof(struct ifnet). In order to get the altq headers in place
359df843493SMax Laier	please recompile and reinstall world.
3606cb7a382SMax Laier
3612454685eSJulian Elischer20040607:
3622454685eSJulian Elischer	Splitting kern_thread.c into 2 files (adding kern_kse.c)
3632454685eSJulian Elischer	requires that you re-run config after updating your tree.
3642454685eSJulian Elischer
36564fef830SSeigo Tanimura20040601:
36664fef830SSeigo Tanimura	The MIDI drivers have been removed. Until the new module-friendly
36764fef830SSeigo Tanimura	ones are merged, remove or comment out midi and seq from your
36864fef830SSeigo Tanimura	kernel configuration.
36964fef830SSeigo Tanimura
370bb4f06e7SAndre Oppermann20040423:
371bb4f06e7SAndre Oppermann	Due to a new option in ipfw (versrcreach) the ipfw(8) command
372bb4f06e7SAndre Oppermann	needs to be recompiled.  Normal accept/reject rules without
373bb4f06e7SAndre Oppermann	options are not affected but those with options may break until
374bb4f06e7SAndre Oppermann	ipfw(8) is recompiled.
375bb4f06e7SAndre Oppermann
37605641e82SColin Percival20040420:
37705641e82SColin Percival	Due to changes in the callout ABI, kernels compiled after this
37805641e82SColin Percival	date may be incompatible with kernel modules compiled prior to
37905641e82SColin Percival	20040406.
38005641e82SColin Percival
381d0dc9183SWarner Losh20040414:
382d0dc9183SWarner Losh	The PCI bus power state stuff has been turned on.  If this causes
383d0dc9183SWarner Losh	problems for your system, please disable it using the tunable
384d0dc9183SWarner Losh	hw.pci.do_powerstate=0.
385d0dc9183SWarner Losh
386d0dc9183SWarner Losh20040412:
387d0dc9183SWarner Losh	The bulk of the pci problems have been fixed, although the floppy
388d0dc9183SWarner Losh	drive is still broken.
389d0dc9183SWarner Losh
390d0dc9183SWarner Losh20040410:
391d0dc9183SWarner Losh	A substantial update to the pci bus resource and power management
392d0dc9183SWarner Losh	have been committed.  Expect a bumpy ride for a few days until
393d0dc9183SWarner Losh	the unanticipated problems have been resolved.
394d0dc9183SWarner Losh
3958633bbeaSBrooks Davis20040409:
3968633bbeaSBrooks Davis        Due to changes in the the Yarrow initialization process,
3978633bbeaSBrooks Davis        /dev/random needs to be fed before operations requiring
3988633bbeaSBrooks Davis        temp files can succeed in single user mode.  This includes
3998633bbeaSBrooks Davis        running "make installworld". /dev/random may be fed by running
40076c3e0f7SBrooks Davis        "/etc/rc.d/initrandom start" or with 20040415 source by running
4018633bbeaSBrooks Davis        "/etc/rc.d/preseedrandom".
4028633bbeaSBrooks Davis
403d40d033aSRobert Watson20040322:
404d40d033aSRobert Watson	The debug.mpsafenet tunable controls whether the kernel Giant
405d40d033aSRobert Watson	lock is held across the lower levels of the network stack, and
406d40d033aSRobert Watson	by default is turned off.  In the few days following 20040322,
407d40d033aSRobert Watson	the behavior of debug.mpsafenet will change such that this
408d40d033aSRobert Watson	tunable controls Giant over all levels of the network stack.
409d40d033aSRobert Watson	If you are currently setting debug.mpsafenet to 1, you should
410d40d033aSRobert Watson	set it back to 0 (the default) again during the change-over.
411d40d033aSRobert Watson	An additional note will be added to UPDATING when sufficient
412d40d033aSRobert Watson	locking is merged to permit this to take place.
413d40d033aSRobert Watson
414ec9b318eSGarance A Drosehn20040310:
415ec9b318eSGarance A Drosehn	The FreeBSD/sparc64 platform is changing time_t from 32-bits to
416ec9b318eSGarance A Drosehn	64-bits.  This is a very major incompatible change, so people
417ec9b318eSGarance A Drosehn	using FreeBSD/sparc64 *must* read the UPDATING.64BTT file for
418ec9b318eSGarance A Drosehn	detailed instructions on how to make this upgrade.  People
419ec9b318eSGarance A Drosehn	upgrading FreeBSD on other platforms can ignore this event.
420ec9b318eSGarance A Drosehn
421fc28f1ffSMax Laier20040308:
422fc28f1ffSMax Laier	The packet filter (pf) is now installed with the base system. Make
423fc28f1ffSMax Laier	sure to run mergemaster -p before installworld to create required
4244c86458bSDavid E. O'Brien	user account ("proxy"). If you do not want to build pf with your
4254c86458bSDavid E. O'Brien	system you can use the NO_PF knob in make.conf.
426fc28f1ffSMax Laier	Also note that pf requires "options PFIL_HOOKS" in the kernel. The
427fc28f1ffSMax Laier	pf system consists of the following three devices:
428fc28f1ffSMax Laier	device		pf		# required
429fc28f1ffSMax Laier	device		pflog		# optional
430fc28f1ffSMax Laier	device		pfsync		# optional
431fc28f1ffSMax Laier
4323aff5d06SDag-Erling Smørgrav20040303:
4333aff5d06SDag-Erling Smørgrav	If you are having trouble with the libc_r -> libpthread transition
4343aff5d06SDag-Erling Smørgrav	(see the 20040130 entry), place the following lines at the top of
4353aff5d06SDag-Erling Smørgrav	/etc/libmap.conf:
4363aff5d06SDag-Erling Smørgrav
4373aff5d06SDag-Erling Smørgrav	libc_r.so.5		libpthread.so.1
4383aff5d06SDag-Erling Smørgrav	libc_r.so		libpthread.so
4393aff5d06SDag-Erling Smørgrav
4403aff5d06SDag-Erling Smørgrav	This will cause all programs and libraries linked against libc_r
4413aff5d06SDag-Erling Smørgrav	to use libpthread instead.
4423aff5d06SDag-Erling Smørgrav
443fd63c5b3SDag-Erling Smørgrav20040226:
4449d7f8c80SDag-Erling Smørgrav	Some sshd configuration defaults have changed: protocol version 1
445fd63c5b3SDag-Erling Smørgrav	is no longer enabled by default, and password authentication is
446fd63c5b3SDag-Erling Smørgrav	disabled by default if PAM is enabled (which it is by default).
447fd63c5b3SDag-Erling Smørgrav	OpenSSH clients should not be affected by this; other clients may
448fd63c5b3SDag-Erling Smørgrav	have to be reconfigured, upgraded or replaced.
449fd63c5b3SDag-Erling Smørgrav
450714ae42aSBruce M Simpson20040225:
451e07a40f3SBrian Feldman	The ABIs defined in <resolv.h> and <netdb.h> have been updated
452e07a40f3SBrian Feldman	to support improved reentrancy.  Multi-threaded programs that
453e07a40f3SBrian Feldman	reference the "_res" or "h_errno" symbols may experience some
454e07a40f3SBrian Feldman	problems if they are not recompiled.  Single-threaded programs
455e07a40f3SBrian Feldman	should remain unaffected.
456e07a40f3SBrian Feldman
457e07a40f3SBrian Feldman20040225:
458714ae42aSBruce M Simpson	routed has been updated in the base system from the vendor
459714ae42aSBruce M Simpson	sources, routed v2.27, from rhyolite.com. This change means that
460714ae42aSBruce M Simpson	for users who use RIP's MD5 authentication feature, FreeBSD
461714ae42aSBruce M Simpson	-CURRENT's routed is now incompatible with previous versions
462714ae42aSBruce M Simpson	of FreeBSD; however it is now compatible with implementations
463714ae42aSBruce M Simpson	from Sun, Cisco and other vendors.
464714ae42aSBruce M Simpson
465fbd2e692SAndre Oppermann20040224:
466fbd2e692SAndre Oppermann	The tcpcb structure has changed and makes a recompile of libkvm
4675bd7ce0aSJens Schweikhardt	and related userland network utilities necessary.
468fbd2e692SAndre Oppermann
469158b90daSWarner Losh20040222:
470158b90daSWarner Losh	The cdevsw structure has changed in two externally visible ways.
471158b90daSWarner Losh	First, the sense of the D_GIANT flag has changed to D_NEEDSGIANT.
472158b90daSWarner Losh	Second, the d_version field must be filled in with D_VERSION.
473158b90daSWarner Losh	Drivers outside the tree will need to be updated.
474158b90daSWarner Losh
475b7b1e150SMike Makonnen20040207:
476b7b1e150SMike Makonnen	The /etc/rc.d/ttys script has been removed. It is no longer
477b7b1e150SMike Makonnen	necessary since devfs has been mandatory for some time.
478b7b1e150SMike Makonnen
479aca89ee6SDaniel Eischen20040130:
480aca89ee6SDaniel Eischen	libkse has been renamed back to libpthread and is now the
481aca89ee6SDaniel Eischen	default threads library.  The gcc -pthread option has also
482aca89ee6SDaniel Eischen	been changed to link to libpthread instead of libc_r.  For
483aca89ee6SDaniel Eischen	alpha and sparc64 machines, libkse is not renamed and links
484aca89ee6SDaniel Eischen	are installed so that libpthread points to libc_r.  Until
485aca89ee6SDaniel Eischen	the ports system is updated to handle this change, it is
486aca89ee6SDaniel Eischen	recommended that folks install an /etc/libmap.conf(5) that
487aca89ee6SDaniel Eischen	maps libc_r to libpthread.  If you have any binaries or
488aca89ee6SDaniel Eischen	libraries linked to libkse, then it is also recommended
489aca89ee6SDaniel Eischen	that you map libkse to libpthread.  Anyone that is using
490aca89ee6SDaniel Eischen	nvidia supplied drivers and libraries should use a libmap.conf
491aca89ee6SDaniel Eischen	that maps libpthread to libc_r since their drivers/libraries
492aca89ee6SDaniel Eischen	do not work with libpthread.
493aca89ee6SDaniel Eischen
49468b7b3a9SAlex Dupre20040125:
49568b7b3a9SAlex Dupre	ULE has entered into its probationary period as the default scheduler
49668b7b3a9SAlex Dupre	in GENERIC.  For the average user, interactivity is reported to be
49768b7b3a9SAlex Dupre	better in many cases.  On SMP machines ULE will be able to make more
49868b7b3a9SAlex Dupre	efficient use of the available parallel resources.  If you are not
49968b7b3a9SAlex Dupre	running it now, please switch over, replacing the kernel option
50068b7b3a9SAlex Dupre	SCHED_4BSD with SCHED_ULE.
50168b7b3a9SAlex Dupre
502ff46e0deSWarner Losh20040125:
503ff46e0deSWarner Losh	Move LongRun support out of identcpu.c, where it hardly
504ff46e0deSWarner Losh	belongs, into its own file and make it opt-in, not mandatory,
505ff46e0deSWarner Losh	depending on CPU_ENABLE_LONGRUN config(8) option.
506ff46e0deSWarner Losh
507ce41f4bfSRobert Watson20031213:
508ce41f4bfSRobert Watson	src/lib/libc/gen/initgroups.c:1.8 now causes logins to fail
509ce41f4bfSRobert Watson	if the login process is unable to successfully set the
510ce41f4bfSRobert Watson	process credentials to include all groups defined for the
511ce41f4bfSRobert Watson	user.  The current kernel limit is 16 groups; administrators
512ce41f4bfSRobert Watson	may wish to check that users do not have over 16 groups
513ce41f4bfSRobert Watson	defined, or they will be unable to log in.
514ce41f4bfSRobert Watson
515c124fa05SJohn Baldwin20031203:
516c124fa05SJohn Baldwin	The ACPI module has been reactivated.  It is no longer required
517c124fa05SJohn Baldwin	to compile ACPI support into kernels statically.
518c124fa05SJohn Baldwin
5198ad1f5e4SHartmut Brandt20031112:
52030093b05SWarner Losh	The statfs structure has been updated with 64-bit fields to
52130093b05SWarner Losh	allow accurate reporting of multi-terabyte filesystem
52297209ca3SRobert Watson	sizes. You should build world, then build and boot the new kernel
52397209ca3SRobert Watson	BEFORE doing a `installworld' as the new kernel will know about
52497209ca3SRobert Watson	binaries using the old statfs structure, but an old kernel will
52597209ca3SRobert Watson	not know about the new system calls that support the new statfs
5263f631d52SMarcel Moolenaar	structure.
5273f631d52SMarcel Moolenaar	Note that the backwards compatibility is only present when the
5283f631d52SMarcel Moolenaar	kernel is configured with the COMPAT_FREEBSD4 option. Since
5293f631d52SMarcel Moolenaar	even /bin/sh will not run with a new kernel without said option
5303f631d52SMarcel Moolenaar	you're pretty much dead in the water without it. Make sure you
5313f631d52SMarcel Moolenaar	have COMPAT_FREEBSD4!
5323f631d52SMarcel Moolenaar	Running an old kernel after a `make world' will cause programs
5333f631d52SMarcel Moolenaar	such as `df' that do a statfs system call to fail with a bad
5343f631d52SMarcel Moolenaar	system call. Marco Wertejuk <wertejuk@mwcis.com> also reports
5353f631d52SMarcel Moolenaar	that cfsd (ports/security/cfs) needs to be recompiled after
5363f631d52SMarcel Moolenaar	these changes are installed.
53730093b05SWarner Losh
53830093b05SWarner Losh	****************************DANGER*******************************
53930093b05SWarner Losh
54030093b05SWarner Losh	DO NOT make installworld after the buildworld w/o building and
54130093b05SWarner Losh	installing a new kernel FIRST.  You will be unable to build a
54230093b05SWarner Losh	new kernel otherwise on a system with new binaries and an old
54330093b05SWarner Losh	kernel.
54464a18d6fSKirk McKusick
54564a18d6fSKirk McKusick20031112:
5468ad1f5e4SHartmut Brandt	Some netgraph string length constants have been changed. This
5478ad1f5e4SHartmut Brandt	change requires the netgraph kernel modules and all netgraph
5488ad1f5e4SHartmut Brandt	userland components to be in sync. Especially users who require
5498ad1f5e4SHartmut Brandt	netgraph to boot need to make sure to have world and kernel in
5508ad1f5e4SHartmut Brandt	sync before rebooting.
5518ad1f5e4SHartmut Brandt
552c53a5d8fSJohn Baldwin20031111:
553c53a5d8fSJohn Baldwin	Hyperthreading logical CPU's are no longer probed by default
554c53a5d8fSJohn Baldwin	when using the MP Table.  If ACPI is being used, then logical
555c53a5d8fSJohn Baldwin	CPUs will be probed if hyperthreading is enabled in the BIOS.
556c53a5d8fSJohn Baldwin	If ACPI is not being used and hyperthreading is enabled in the
557c53a5d8fSJohn Baldwin	BIOS, logical CPUs can be enabled by building a custom kernel
558c53a5d8fSJohn Baldwin	with the option MPTABLE_FORCE_HTT enabled.
559c53a5d8fSJohn Baldwin
5608bf455a5SJohn Baldwin20031103:
5618bf455a5SJohn Baldwin	The i386 APIC_IO kernel option has been replaced by
5628bf455a5SJohn Baldwin	'device apic'.  The ACPI module has also been temporarily
5632a2cfa95SCeri Davies	disabled, so ACPI must be statically compiled into your
5648bf455a5SJohn Baldwin	kernel using 'device acpi' if you wish to use the ACPI driver.
5658bf455a5SJohn Baldwin
5669bf40edeSBrooks Davis20031031:
5679bf40edeSBrooks Davis	The API and ABI of struct ifnet have been changed by removing
5689bf40edeSBrooks Davis	the if_name and if_unit members and replacing them with
5699bf40edeSBrooks Davis	if_xname, if_dname, and if_dunit.  All network drivers and most
5709bf40edeSBrooks Davis	userland programs which include net/if_var.h must be updated
5719bf40edeSBrooks Davis	and recompiled.  __FreeBSD_version has been bumped to 501113 to
5729bf40edeSBrooks Davis	reflect this change.
5739bf40edeSBrooks Davis
57447a42c7aSPoul-Henning Kamp20030928:
57547a42c7aSPoul-Henning Kamp	Changes to the cdevsw default functions have been made to remove
57647a42c7aSPoul-Henning Kamp	the need to specify nullopen() and nullclose() explicitly.
5775bd7ce0aSJens Schweikhardt	__FreeBSD_version bumped to 501110.
57847a42c7aSPoul-Henning Kamp
57907105342SMax Khon20030926:
58007105342SMax Khon	kiconv(3) has been added. mount_msdosfs(8), mount_ntfs(8) and
58107105342SMax Khon	mount_cd9660(8) need to be in sync with kernel.
58207105342SMax Khon
58317dcd026SSam Leffler20030925:
58417dcd026SSam Leffler	Configuring a system to use IPFILTER now requires that PFIL_HOOKS
58517dcd026SSam Leffler	also be explicitly configured.  Previously this dependency was
58617dcd026SSam Leffler	magically handled through some cruft in net/pfil.h; but that has
58717dcd026SSam Leffler	been removed.  Building a kernel with IPFILTER but not PFIL_HOOKS
58817dcd026SSam Leffler	will fail with obtuse errors in ip_fil.c.
58917dcd026SSam Leffler
590fedf1d01SBruce M Simpson20030923:
591fedf1d01SBruce M Simpson	Fix a bug in arplookup(), whereby a hostile party on a locally
592fedf1d01SBruce M Simpson	attached network could exhaust kernel memory, and cause a system
593fedf1d01SBruce M Simpson	panic, by sending a flood of spoofed ARP requests. See
594fedf1d01SBruce M Simpson	FreeBSD-SA-03:14.arp.
595fedf1d01SBruce M Simpson
596db38f9cbSJacques Vidrine20030915:
597db38f9cbSJacques Vidrine	A change to /etc/defaults/rc.conf now causes inetd to be started
598db38f9cbSJacques Vidrine	with `-C 60' if it is not overridden in /etc/rc.conf.  This
599db38f9cbSJacques Vidrine	causes inetd to stop accepting connections from an IP address
600db38f9cbSJacques Vidrine	that exceeds the rate of 60 connections per minute.
601db38f9cbSJacques Vidrine
602c09d2c2bSMike Makonnen20030829:
603c09d2c2bSMike Makonnen	The following rc.d scripts have been removed and should be
604c09d2c2bSMike Makonnen	deleted from your installation: atm2.sh atm3.sh devdb
605c09d2c2bSMike Makonnen	localdaemons network1 network2 network3. Depending on when
606c09d2c2bSMike Makonnen	you last updated world and used mergemaster(8) you may or
607c09d2c2bSMike Makonnen	may not have problems during the rc boot sequence. The simplest
608c09d2c2bSMike Makonnen	solution is an 'rm -rf /etc/rc.d/*' and then 'mergemaster -i'.
609c09d2c2bSMike Makonnen	The atm2.sh atm3.sh and devdb scripts were removed some time
610c09d2c2bSMike Makonnen	ago, so depending on when you installed -CURRENT these scripts
611c09d2c2bSMike Makonnen	may or may not exist on your system.
612c09d2c2bSMike Makonnen
61317c159dcSSøren Schmidt20030824:
61417c159dcSSøren Schmidt	ATAng has been committed. You need to build world as sys/ata.h
61517c159dcSSøren Schmidt	has changed, and userland atacontrol depends on it.
616f240812bSSøren Schmidt	If you use ATA SW raids you need "device ataraid" in your
617f240812bSSøren Schmidt	kernel config file, as it is no longer pulled in automatically.
61817c159dcSSøren Schmidt
619c1f61aa9SDavid E. O'Brien20030819:
620c1f61aa9SDavid E. O'Brien	The OFW_NEWPCI option has been turned on in the Sparc64 GENERIC kernel.
621c1f61aa9SDavid E. O'Brien	Among other things, this changes the device enumeration to be
622c1f61aa9SDavid E. O'Brien	closer to Solaris.  Be aware that, this can even cause the machine
623c1f61aa9SDavid E. O'Brien	to not boot without manual intervention before the fstab is adjusted.
62469f7bcf3SWarner Losh
62538c962e7SNate Lawson20030728:
62638c962e7SNate Lawson	All current USB and Firewire quirks in da(4) have been deprecated
62738c962e7SNate Lawson	and will be removed for 5.2.  If this causes failure for your
62838c962e7SNate Lawson	umass(4) devices, enable "options DA_OLD_QUIRKS" in your kernel
62938c962e7SNate Lawson	and send the output of "camcontrol inquiry da0" to scsi@freebsd.org
63038c962e7SNate Lawson	so the quirk can be re-enabled.
63138c962e7SNate Lawson
63274111097SWarner Losh20030724:
63374111097SWarner Losh	Problems with entry 20030714 have been corrected and no known issues
63474111097SWarner Losh	with /rescue and -j exist for host systems after this point in time.
63574111097SWarner Losh
636178cf4e9SWarner Losh20030722:
637178cf4e9SWarner Losh	FPU-less support has been removed from FreeBSD.  Chances are you won't
638178cf4e9SWarner Losh	notice.  386+387 support should still work after this change, but
639178cf4e9SWarner Losh	it is now a minimum requirement for the i386 port that you have real
640178cf4e9SWarner Losh	FPU hardware.
641178cf4e9SWarner Losh
642178cf4e9SWarner Losh20030714:
643178cf4e9SWarner Losh	Some people are having problems with changes related to /rescue.
644178cf4e9SWarner Losh	If you are building -j N, you will need to define NO_RESCUE.  Others
645178cf4e9SWarner Losh	will need to define it if /rescue has issues with their environment.
646178cf4e9SWarner Losh	People should report those issues to current@.
647178cf4e9SWarner Losh
648157c629aSWarner Losh20030711:
649157c629aSWarner Losh	gcc was upgraded to 3.3.  You are advised to not build -DNOCLEAN
6508b71efcaSCeri Davies	across this point.  Further, it might be a good idea to remove
65105538fa9SWarner Losh	/usr/obj.
652157c629aSWarner Losh
65374111097SWarner Losh20030610:
65474111097SWarner Losh	Remove deprecated locale names and transition period code
65574111097SWarner Losh	for them, finishing switching to the new scheme. Check your
65674111097SWarner Losh	LANG environment variable.
65774111097SWarner Losh
65874111097SWarner Losh20030609:
65974111097SWarner Losh	CCD has been changed to be a fully GEOMified class.  Kernel
66074111097SWarner Losh	and ccdconfig(8) needs to be in sync, this is particularly
66174111097SWarner Losh	important to remember beforehand if your source tree is on
66274111097SWarner Losh	a ccd device.  Consider making a copy of the old ccdconfig
66374111097SWarner Losh	into /boot/kernel.good or wherever you keep your backup
66474111097SWarner Losh	kernel.
66574111097SWarner Losh
66674111097SWarner Losh20030605:
6676cc6353fSMarcel Moolenaar	There was a small window in which sed(1) was broken.  If you
6686cc6353fSMarcel Moolenaar	happen to have sed(1) installed during that window, which is
6696cc6353fSMarcel Moolenaar	evidenced by an inability to build world with the failure
6706cc6353fSMarcel Moolenaar	given below, you need to manually build and install sed(1)
6716cc6353fSMarcel Moolenaar	(and only sed(1)) before doing anything else. This is a one-
6726cc6353fSMarcel Moolenaar	time snafu. Typical failure mode:
6736cc6353fSMarcel Moolenaar
6746cc6353fSMarcel Moolenaar	In file included from /usr/src/contrib/binutils/bfd/targets.c:1092:
6756cc6353fSMarcel Moolenaar	targmatch.h:7:1: null character(s) ignored
6766cc6353fSMarcel Moolenaar	targmatch.h:12:1: null character(s) ignored
6776cc6353fSMarcel Moolenaar	targmatch.h:16:1: null character(s) ignored
6786cc6353fSMarcel Moolenaar		:
6796cc6353fSMarcel Moolenaar
6806cc6353fSMarcel Moolenaar	The window of "sed(1)-uction" is from Wed Jun 4 15:31:55 2003 UTC
6816cc6353fSMarcel Moolenaar	to Thu Jun 5 12:10:19 2003 UTC (from rev 1.30 to rev 1.31 of
6826cc6353fSMarcel Moolenaar	usr.bin/sed/process.c).
6836cc6353fSMarcel Moolenaar
68452b47445SMark Murray20030505:
68552b47445SMark Murray	Kerberos 5 (Heimdal) is now built by default. Setting
68652b47445SMark Murray	MAKE_KERBEROS5 no longer has any effect. If you do NOT
68752b47445SMark Murray	want the "base" Kerberos 5, you need to set NO_KERBEROS.
68852b47445SMark Murray
689a26df538SWarner Losh20030502:
690a26df538SWarner Losh	groff has been updated.  If you try to do a buildworld and
691a26df538SWarner Losh	get an infinite loop in troff, update to May 4th or newer.  If you
692a26df538SWarner Losh	have a newer kernel than userland, you may need to set the OSRELDATE
693a26df538SWarner Losh	to 500110 in your environment before starting a buildworld.
694a26df538SWarner Losh
6954b065e2cSDoug Barton20030501:
6964b065e2cSDoug Barton	The old rc system has been removed.  Please report any problems
6974b065e2cSDoug Barton	to freebsd-rc@yahoogroups.com, and/or freebsd-current@freebsd.org.
6984b065e2cSDoug Barton	Your personal versions of these files will not be removed, so you can
6994b065e2cSDoug Barton	continue to use them. However, you should take great care when updating,
7004b065e2cSDoug Barton	especially when using mergemaster, since the compatibility code that
7014b065e2cSDoug Barton	utilizes these old scripts has also been removed.
7024b065e2cSDoug Barton
70381cda3d9SWarner Losh20030423:
70481cda3d9SWarner Losh	A bug has been fixed in /dev/devctl which would cause devd
70581cda3d9SWarner Losh	to hang on boot, were it not for a workaround in devd.  The
70681cda3d9SWarner Losh	work around in devd will be removed around 20030507.  You
70781cda3d9SWarner Losh	have until then to upgrade your kernel before updating
70881cda3d9SWarner Losh	userland.  In general, you should have a userland and
70981cda3d9SWarner Losh	kernel that's in sync with each other.  However, given the
71081cda3d9SWarner Losh	effects of this bug (hang on boot when starting devd), some
71181cda3d9SWarner Losh	allowances are made.
71281cda3d9SWarner Losh
71347a657d1SRuslan Ermilov20030329:
71447a657d1SRuslan Ermilov	Alphas with libc from between 20030312 and 20030329 exhibit
71547a657d1SRuslan Ermilov	floating point exceptions (FPEs), most notably in awk(1)
71647a657d1SRuslan Ermilov	while upgrading the system through a buildworld.
71747a657d1SRuslan Ermilov
71847a657d1SRuslan Ermilov	So, to successfully upgrade your Alpha, you must either
71947a657d1SRuslan Ermilov	downgrade your libc.so to a pre-20030312 version, or update
72047a657d1SRuslan Ermilov	/usr/share/mk/bsd.cpu.mk to revision 1.26 which adds -mieee
72147a657d1SRuslan Ermilov	to CFLAGS, then forcibly rebuild and install libc:
72247a657d1SRuslan Ermilov
72347a657d1SRuslan Ermilov	cd /usr/src/lib/libc && \
72447a657d1SRuslan Ermilov	    make cleandir && make obj && \
72547a657d1SRuslan Ermilov	    make -DNOMAN -DNOPROFILE all && \
72647a657d1SRuslan Ermilov	    make -DNOMAN -DNOPROFILE install
72747a657d1SRuslan Ermilov
7285d2af00cSGregory Neil Shapiro20030208:
7295d2af00cSGregory Neil Shapiro	sendmail 8.12.7 has been imported.  It has one important
7305d2af00cSGregory Neil Shapiro	change for IPv6 users.  The default submit.mc now uses
7315d2af00cSGregory Neil Shapiro	'[127.0.0.1]' instead of 'localhost' meaning only IPv4 is
7325d2af00cSGregory Neil Shapiro	used to connect to the MTA.  Users on IPv6-only machines
7335d2af00cSGregory Neil Shapiro	will need to edit /etc/mail/submit.mc appropriately.
7345d2af00cSGregory Neil Shapiro
7355d2af00cSGregory Neil Shapiro20030128:
7369db58771SPoul-Henning Kamp	NODEVFS option has been removed and DEVFS thereby made standard.
737ca22e652SJens Schweikhardt	This makes all references to MAKEDEV obsolete, and they should
7389db58771SPoul-Henning Kamp	be removed when convenient.
7399db58771SPoul-Henning Kamp
7408d9b3f57SJake Burkholder20030126:
7418d9b3f57SJake Burkholder	The name of the device for the ofw console has changed, sparc64 users
7428d9b3f57SJake Burkholder	must run mergemaster to update their installed /etc/ttys.
7438d9b3f57SJake Burkholder
7441c5efda5SJeff Roberson20030125:
7451c5efda5SJeff Roberson	The scheduler framework has grown a second scheduler and consequently
7461c5efda5SJeff Roberson	you must specify one and only one scheduler in your kernel config.
747ca22e652SJens Schweikhardt	The cvs config files have been updated to use the old scheduler
7481c5efda5SJeff Roberson	which may be selected via 'options SCHED_4BSD'.  If you would like
7491c5efda5SJeff Roberson	to try the new, much more experimental, scheduler please try
7501c5efda5SJeff Roberson	'options SCHED_ULE' and contribute to the arch@ discussion.
7511c5efda5SJeff Roberson
7529d1d64f5SWarner Losh20030115:
7539d1d64f5SWarner Losh	A new version of the wi driver has been imported into the tree.
7549d1d64f5SWarner Losh	One now must have device wlan in the config file for it to operate
7559d1d64f5SWarner Losh	properly.
7569d1d64f5SWarner Losh
757c9fdb80aSWarner Losh	In addition, there have been some changes to how wi devices are
758c9fdb80aSWarner Losh	configured for point to point links to bring it more in line
759c9fdb80aSWarner Losh	with the former way of doing things, as well as compatibility
760c9fdb80aSWarner Losh	with NetBSD.
761c9fdb80aSWarner Losh
762161dc364SAlexander Kabaev20021222:
763161dc364SAlexander Kabaev 	For a period after the GCC 3.2.1 import (from 12/04 to 12/22), GCC
764161dc364SAlexander Kabaev 	used an incompatible form of ABI for returning structures and unions
765161dc364SAlexander Kabaev 	which FreeBSD's GCC maintainers were not aware of relative to previous
766161dc364SAlexander Kabaev 	versions of FreeBSD.  We have gone back to the ABI for now, and any
767161dc364SAlexander Kabaev 	code compiled which is required to interoperate with other code (not
768161dc364SAlexander Kabaev 	built at the same time) returning structs or unions should be
76984cc83efSAlexander Kabaev	rebuilt.
770161dc364SAlexander Kabaev
771fb4c8061SMartin Blapp20021216:
772fb4c8061SMartin Blapp	A name change in /etc/netconfig has been reverted to stay
77389056245SJens Schweikhardt	compatible with suns TIRPC and also with NetBSD. You need
774fb4c8061SMartin Blapp	to run mergemaster after make world. A new libc does still work
7759d5abbddSJens Schweikhardt	with an outdated /etc/netconfig for some time, but you'll get
776fb4c8061SMartin Blapp	a warning. This warning will be removed in 20030301.
777fb4c8061SMartin Blapp
77817d47eb3SGiorgos Keramidas20021202:
77917d47eb3SGiorgos Keramidas	The recent binutils upgrade marks a kernel flag day on
78017d47eb3SGiorgos Keramidas	sparc64: modules built with the old binutils will not work
78117d47eb3SGiorgos Keramidas	with new kernels and vice versa. Mismatches will result in
78217d47eb3SGiorgos Keramidas	panics.  Make sure your kernel and modules are in sync.
78317d47eb3SGiorgos Keramidas
784a4459294SBill Fenner20021029:
785a4459294SBill Fenner	The value of IPPROTO_DIVERT has changed.  Make sure to keep
786a4459294SBill Fenner	your kernel, netstat, natd and any third-party DIVERT
787a4459294SBill Fenner	consumers in sync.
788a4459294SBill Fenner
789fc8c157fSWarner Losh20021024:
790c57404feSRuslan Ermilov	Old, compatibility slices have been removed in GEOM kernels.
791c57404feSRuslan Ermilov	This means that you will have to update your /etc/fstab to
792c57404feSRuslan Ermilov	not use disk devices of the form /dev/ad0a.  Instead, you
793c57404feSRuslan Ermilov	now must specify /dev/ad0s1a, or whatever slice your FreeBSD
794c57404feSRuslan Ermilov	partition really is on.  The old device names have gone
795c57404feSRuslan Ermilov	away, so if you use them anywhere else, you must also adjust
796c57404feSRuslan Ermilov	those uses.  (This doesn't affect the disks formatted in
797c57404feSRuslan Ermilov	the ``dangerously-dedicated'' mode.)
79869f7bcf3SWarner Losh
799fd9e8bdaSAndrew Gallatin20021023:
800fd9e8bdaSAndrew Gallatin	Alphas with kernels from between 20020830 and 20021023 and/or
801fd9e8bdaSAndrew Gallatin	rtld (ld-elf.so.1) older than 20021023 may experience problems
802fd9e8bdaSAndrew Gallatin	with groff while doing a buildworld (kernel: "out of memory",
803fd9e8bdaSAndrew Gallatin	fixed in rev 1.129 of kern/imgact_elf.c; rtld: "too few PT_LOAD
804fd9e8bdaSAndrew Gallatin	segments", fixed in rev 1.8 of libexec/rtld-elf/map_object.c).
805fd9e8bdaSAndrew Gallatin
806fd9e8bdaSAndrew Gallatin	So, to successfully upgrade your Alpha, you must either
807fd9e8bdaSAndrew Gallatin	upgrade your kernel and rtld first (which might be a bit
808fd9e8bdaSAndrew Gallatin	tricky), or avoid running the bootstrapped groff during the
809fd9e8bdaSAndrew Gallatin	"transitional" buildworld.  To avoid running groff during the
810fd9e8bdaSAndrew Gallatin	transitional upgrade run make buildworld with -DNOMAN,
811fd9e8bdaSAndrew Gallatin	-DNO_SHAREDOCS, and -DNO_LPR.
812fd9e8bdaSAndrew Gallatin
813f8a4c901SWarner Losh20020831:
814f8a4c901SWarner Losh	gcc has been upgraded to 3.2.  It is not all binary compatible
815f8a4c901SWarner Losh	with earlier versions of gcc for c++ programs.  All c++
816f8a4c901SWarner Losh	programs and libraries need to be recompiled.
817f8a4c901SWarner Losh
818f8a4c901SWarner Losh	Also, if you encounter g++ issues, rm /usr/include/g++/* before
819f8a4c901SWarner Losh	doing an installworld to make sure that stale files are removed.
820f8a4c901SWarner Losh
821c2248fa2SJens Schweikhardt20020827:
822c2248fa2SJens Schweikhardt	Our /etc/termcap now has all the entries from the XFree86 xterm
823c2248fa2SJens Schweikhardt	almost unchanged. This means xterm now supports color by default.
824c2248fa2SJens Schweikhardt	If you used TERM=xterm-color in the past you now should use
825c2248fa2SJens Schweikhardt	TERM=xterm. (xterm-color will lead to benign warnings).
826c2248fa2SJens Schweikhardt
8270d533e43SRuslan Ermilov20020815:
8280d533e43SRuslan Ermilov	A "bug" in gcc(1) that was hiding warning in system headers was
8290d533e43SRuslan Ermilov	fixed.  It's probably time to add -DNO_WERROR to your make line
8300d533e43SRuslan Ermilov	again.
8310d533e43SRuslan Ermilov
83233c1de7dSRuslan Ermilov20020729:
83333c1de7dSRuslan Ermilov	COPY is being deprecated.  The 20010530 change was reverted, as
83433c1de7dSRuslan Ermilov	it causes far more pain than was expected, and to always compare
83533c1de7dSRuslan Ermilov	before installing, please use INSTALL="install -C" again.  The
83633c1de7dSRuslan Ermilov	-C option is now silently ignored when used with the -d option.
83733c1de7dSRuslan Ermilov
8382b877facSJulian Elischer20020702:
8392b877facSJulian Elischer	Problems with libc_r clients like KDE and GNOME have been resolved.
8402b877facSJulian Elischer	There are still some minor problems with some signals but the
8412b877facSJulian Elischer	system is stable enough for general use again. SMP is less so than UP
8422b877facSJulian Elischer	but each can successfully complete multiple buildworlds.
8432b877facSJulian Elischer	Libkvm needs to be recompiled due to KSE.
8442b877facSJulian Elischer
84506596d37SWarner Losh20020701:
84606596d37SWarner Losh	Now would be a bad time to upgrade.  Something in or near the
84706596d37SWarner Losh	KSE commit totally broke programs using libc_r like KDE and
84806596d37SWarner Losh	GNOME.
84906596d37SWarner Losh
85095ba4330SJacques Vidrine20020511:
85195ba4330SJacques Vidrine	The k5su utility installed as part of Kerberos 5 is no longer
85295ba4330SJacques Vidrine	installed with the set-user-ID bit set by default.  Add
85395ba4330SJacques Vidrine	ENABLE_SUID_K5SU=yes to /etc/make.conf to have it installed
85495ba4330SJacques Vidrine	with the set-user-ID bit set.
85595ba4330SJacques Vidrine
856a81da3c9SDavid E. O'Brien20020510:
857f50caf6fSDavid E. O'Brien	Gcc 3.1 debugging format (cc -g) has changed from STABS to DWARF2.
858f50caf6fSDavid E. O'Brien	Unfortunately our native GDB (at version 4.18) does not understand
8594b683fb2SRobert Watson	the DWARF2 debugging format.  Thus you must use `gcc -gstabs+' to
860f50caf6fSDavid E. O'Brien	generated debugging information for our native GDB.
861f50caf6fSDavid E. O'Brien
862f50caf6fSDavid E. O'Brien20020510:
863a81da3c9SDavid E. O'Brien	Due to the way CVS works, it may not properly update src/contrib/gcc
864a81da3c9SDavid E. O'Brien	to the 3.1 sources.  The easiest fix is to `rm -rf' src/contrib/gcc
865a81da3c9SDavid E. O'Brien	and then do a cvs update.
866a81da3c9SDavid E. O'Brien
867528a0ef5SJacques Vidrine20020421:
868528a0ef5SJacques Vidrine	When exec'ing set[ug]id executables, the kernel now ensures that the
869528a0ef5SJacques Vidrine	stdio file descriptors (0..2) are open.  See FreeBSD-SA-02:23.stdio.
870528a0ef5SJacques Vidrine
87185aa5a2eSGregory Neil Shapiro20020404:
87285aa5a2eSGregory Neil Shapiro	New sendmail startup scripts have been installed to make it
87385aa5a2eSGregory Neil Shapiro	easier to use alternative MTAs with FreeBSD.  Setting the rc.conf
87485aa5a2eSGregory Neil Shapiro	variable sendmail_enable to "NO" no longer prevents any sendmail
87585aa5a2eSGregory Neil Shapiro	daemons from starting.  Instead, either set sendmail_enable to
87685aa5a2eSGregory Neil Shapiro	"NONE" or change mta_start_script to a script for starting
87785aa5a2eSGregory Neil Shapiro	an alternative MTA.  Setting mta_start_script to "" will
87885aa5a2eSGregory Neil Shapiro	also prevent any MTA from being started at boot.
87985aa5a2eSGregory Neil Shapiro
8808f1e4358SRuslan Ermilov20020403:
8818f1e4358SRuslan Ermilov	UCONSOLE is no longer a valid kernel option.
8828f1e4358SRuslan Ermilov
8832292c02eSWarner Losh20020315:
8842292c02eSWarner Losh	FreeBSD 5.0 DP-1 was basically branched today.
8852292c02eSWarner Losh
88669f7bcf3SWarner Losh20020225:
88769f7bcf3SWarner Losh	Warnings are now errors in the kernel.  Unless you are a developer,
88869f7bcf3SWarner Losh	you should add -DNO_WERROR to your make line.
88969f7bcf3SWarner Losh
8908f35c493SWarner Losh20020217:
8918f35c493SWarner Losh	sendmail 8.12.2 has been imported.  The sendmail binary is no
8928f35c493SWarner Losh	longer a set-user-ID root binary and the infrastructure to support
8938f35c493SWarner Losh	command line mail submission has changed.  Be sure to run
8948f35c493SWarner Losh	mergemaster (especially for updating /etc/rc, /etc/defaults/rc.conf,
8958f35c493SWarner Losh	and /etc/mail) and read /etc/mail/README for more details.
8968f35c493SWarner Losh
897835284beSWarner Losh	Due to the import of sendmail 8.12.2, a new user and group are
898835284beSWarner Losh	required in order for sendmail to run as a set-group-ID
899835284beSWarner Losh	binary.  A 'make installworld' will use the new user and group
900835284beSWarner Losh	to set the owner and group of /var/spool/clientmqueue and will
901835284beSWarner Losh	fail if the new user and group do not exist.  The 'smmsp' user
902835284beSWarner Losh	and group must be merged from src/etc/group and
903835284beSWarner Losh	src/etc/master.passwd before using 'make installworld'.
904835284beSWarner Losh	'mergemaster -p' will do this.  You may need to install
905835284beSWarner Losh	mergemaster before this will work if you are updating from a
906835284beSWarner Losh	very old version of current.  The updating recipe has changed
907835284beSWarner Losh	as of this date.
908835284beSWarner Losh
909fa9401c1SWarner Losh20020112:
910fa9401c1SWarner Losh	The preferred configuration method for PAM is now /etc/pam.d/
911fa9401c1SWarner Losh	rather than /etc/pam.conf.  If you have an unmodified
912fa9401c1SWarner Losh	pam.conf, just delete it after your next mergemaster run.  If
913fa9401c1SWarner Losh	you have local modifications, you can use
914fa9401c1SWarner Losh	/usr/src/etc/pam.d/convert.pl to incorporate them into your
915fa9401c1SWarner Losh	/etc/pam.d.
916fa9401c1SWarner Losh
917fa9401c1SWarner Losh	Please see the following url for more details:
918fa9401c1SWarner Loshhttp://www.freebsd.org/cgi/mid.cgi?db=mid&id=<xzp6667fyoa.fsf@flood.ping.uio.no>
91947d0d01fSWarner Losh20011229:
92047d0d01fSWarner Losh	If anyone here is already using the new rc.conf(5) variable
92147d0d01fSWarner Losh	networkfs_types, please note that it has changed
92247d0d01fSWarner Loshhttp://www.freebsd.org/cgi/mid.cgi?db=mid&id=<9744.1009655556@axl.seasidesoftware.co.za>
92347d0d01fSWarner Losh
924514318a8SWarner Losh20011220:
925514318a8SWarner Losh	sys/i4b/driver/i4b_ispppsubr.c has been retired.  This file
926514318a8SWarner Losh	started out its life in the ISDN4BSD project as an offspring
927514318a8SWarner Losh	from sys/net/if_spppsubr.c, which eventually got a life of its
928514318a8SWarner Losh	own.  All the accumulated features and bug fixes of the i4b
929514318a8SWarner Losh	version have now been merged back into the base system's
930514318a8SWarner Losh	version now.  The only user-visible change resulting from this
931514318a8SWarner Losh	is that i4b's sppp(4) interfaces are to be managed with
932514318a8SWarner Losh	spppcontrol(8) again, since ispppcontrol(8) has been retired
933514318a8SWarner Losh	as well.  (There has never been rc file support for
934514318a8SWarner Losh	ispppcontrol in -current, but only in -stable.  That will be
935514318a8SWarner Losh	reverted by the time the changes are MFCed.)
936514318a8SWarner Losh
937514318a8SWarner Losh20011215:
938514318a8SWarner Losh	The fdc(4) driver has been updated and now automatically
939514318a8SWarner Losh	recognizes media in `standard' formats (like 1440 KB and
940514318a8SWarner Losh	720 KB for a 3.5" high-density drive) when accessing the
941514318a8SWarner Losh	default device node (e. g. /dev/fd0).  The old variety of
942514318a8SWarner Losh	floppy device nodes /dev/fd*.* is no longer present by
943514318a8SWarner Losh	default, devices can be created (in DEVFS) on demand.  They
944514318a8SWarner Losh	will need to be customized then for `odd' densities using
945514318a8SWarner Losh	fdcontrol(8).
946514318a8SWarner Losh
9472d22e2bfSWarner Losh20011209:
9482d22e2bfSWarner Losh	The bugs in procfs' debugging support code have been fixed,
9492d22e2bfSWarner Losh	and truss(1) now works again.
9502d22e2bfSWarner Losh
9519e0428e2SWarner Losh20011207:
9529e0428e2SWarner Losh	Daily security checks have been split out to use the periodic(8)
9539e0428e2SWarner Losh	scripts.  Some change in configuration may be necessary.  Please
9549e0428e2SWarner Losh	see
9559e0428e2SWarner Loshhttp://www.freebsd.org/cgi/mid.cgi?db=mid&id=<20011207155805.R8975@blossom.cjclark.org>
9569e0428e2SWarner Losh	for details.
9579e0428e2SWarner Losh
9589bab8c59SWarner Losh20011204:
9599bab8c59SWarner Losh	sos added VCD/SVCD support to ata driver and that needs the
9609bab8c59SWarner Losh	kernel and burncd to be in sync.
9619bab8c59SWarner Losh
962e57d8b01SWarner Losh20011203:
963e57d8b01SWarner Losh	The procfs pseudo-filesystem has now been converted to use the
964e57d8b01SWarner Losh	pseudofs framework.  If you have 'options PROCFS' in your
965e57d8b01SWarner Losh	kernel config, you'll need to add 'options PSEUDOFS' if it's
966e57d8b01SWarner Losh	not there already.
967e57d8b01SWarner Losh
968e57d8b01SWarner Losh	This change temporarily breaks truss(1); use ktrace(1) instead
969e57d8b01SWarner Losh	until the issue has been resolved.
970e57d8b01SWarner Losh
971b001d36fSJacques Vidrine20011202:
972b001d36fSJacques Vidrine	A security hole in OpenSSH involving `UseLogin yes' has been
973b001d36fSJacques Vidrine	patched.
974b001d36fSJacques Vidrine
9754b676ec1SWarner Losh20011126:
9764b676ec1SWarner Losh	You need to remove /usr/obj/.../usr.bin/tip before rebuilding
9775ebbf43eSWarner Losh	after this date.  You need to do this only once.
9784b676ec1SWarner Losh
979d961e462SWarner Losh20011103:
980d961e462SWarner Losh	Most of the awk issues have been resolved.  Some rough
981d961e462SWarner Losh	edges may be left, but for the most part things should be
9824b676ec1SWarner Losh	back to "normal." For CURRENT's usual definition of "normal."
983d961e462SWarner Losh
984d961e462SWarner Losh20011030:
985d961e462SWarner Losh	Awk has been upgraded to the one true awk from bell labs.  Expect
986d961e462SWarner Losh	choppy waves in the upgrade process.
987d961e462SWarner Losh
9881fe003b6SWarner Losh20011030:
989a4b6fda0SWarner Losh	The asr driver problem has been resolved.
9901fe003b6SWarner Losh
9911fe003b6SWarner Losh20011027:
9921fe003b6SWarner Losh	Due to changes in other parts of the system, the asr driver
9931fe003b6SWarner Losh	now causes the system to panic on boot.  Do not use it pending
9941fe003b6SWarner Losh	correction.  Comment it out of any kernel config file that you
9951fe003b6SWarner Losh	try to use from this date forward.
9961fe003b6SWarner Losh
9971fe003b6SWarner Losh20011025:
9981fe003b6SWarner Losh	When crossbuilding, use TARGET=xxx where you used to use
9991fe003b6SWarner Losh	MACHINE=xxx.  You don't need to set TARGET_ARCH and TARGET,
10001fe003b6SWarner Losh	unless you are changing both of them.  To cross build pc98 on
10011fe003b6SWarner Losh	an alpha, for example, you need to set TARGET=pc98 and
10021fe003b6SWarner Losh	TARGET_ARCH=i386.
10031fe003b6SWarner Losh
1004d05f9643SWarner Losh20011001:
1005d05f9643SWarner Losh	The kernel interface that burncd depends on has changed.
1006d05f9643SWarner Losh	You must recompile both the kernel and userland applications
1007d05f9643SWarner Losh	at the same time.
1008d05f9643SWarner Losh
100958970f85SWarner Losh20010929:
101058970f85SWarner Losh	When crossbuilding, please set TARGET_ARCH rather than
101158970f85SWarner Losh	MACHINE_ARCH to indicate the target.  In the future, one will
101258970f85SWarner Losh	set TARGET_MACHINE where you set MACHINE now.  At the moment,
101358970f85SWarner Losh	setting MACHINE alone for same MACHINE_ARCH machines works
10149d5abbddSJens Schweikhardt	(eg, you can build pc98 on an i386 machine and vice versa).
101558970f85SWarner Losh
101658970f85SWarner Losh20010927:
101758970f85SWarner Losh	Some weird problems result from using ACPI on some machines.
101858970f85SWarner Losh	To disable ACPI you can add
101966ff0e67SMax Khon		hint.acpi.0.disabled="1"
102058970f85SWarner Losh	to /boot/loader.conf (or by putting set X=Y at the boot
102158970f85SWarner Losh	loader "ok" prompt).
102258970f85SWarner Losh
102358970f85SWarner Losh	Alternatively, you can remove it from /boot/kernel/acpi.ko
102458970f85SWarner Losh	or use the MODULES_OVERRIDE function in your kernel config
102558970f85SWarner Losh	file and not list acpi in that list.
1026378f4486SAlfred Perlstein
10275119d237SWarner Losh20010924:
10285119d237SWarner Losh	The buildworld has been fixed.  You may need to install
10295119d237SWarner Losh	the 4.x compatibility libraries for some old binaries
10308b039fffSWarner Losh	to work.  Add COMPAT4X=true to your /etc/make.conf to
10318b039fffSWarner Losh	get them installed on every installworld, or execute the
10328b039fffSWarner Losh	following to get them installed only once:
10338b039fffSWarner Losh		cd src/lib/compat/compat4x.<arch>
103458970f85SWarner Losh		make all install
10358b039fffSWarner Losh	You will see ``__stdoutp undefined'' until you do this.
10365119d237SWarner Losh
10373c293725SWarner Losh20010919:
10383c293725SWarner Losh	There's a bug in the world build process.  The cross-tools
10393c293725SWarner Losh	are build with the NEW headers, but the OLD libc.a.  This
10403c293725SWarner Losh	leads to all kinds of problems with the new libc.  A temporary
1041772730c7SWarner Losh	workaround is to add
10423c293725SWarner Losh		CFLAGS="-O -pipe -D_OLD_STDIO"
10433c293725SWarner Losh	before building world when upgrading from 4.x to current.  This
10443c293725SWarner Losh	can be removed afterwards.
10453c293725SWarner Losh
10463c293725SWarner Losh	A proper fix to the buildworld target is needed.
10473c293725SWarner Losh
10483c293725SWarner Losh20010918:
10493c293725SWarner Losh	Peter has committed his new kthread nfs client/server code.
10503c293725SWarner Losh	NFS may be unstable after this date.
10513c293725SWarner Losh
10523c293725SWarner Losh20010912:
10533c293725SWarner Losh	KSE has hit the tree.  Lots of things are now different in
10543c293725SWarner Losh	the kernel.  While a few problems were introduced in the
10553c293725SWarner Losh	initial commit, most of the major ones have been found and
10563c293725SWarner Losh	corrected.
10573c293725SWarner Losh
10583c293725SWarner Losh20010901:
10593c293725SWarner Losh	In OLDCARD, CardBus bridges appear to be stable.  The work
10603c293725SWarner Losh	arounds described in the 20010604 entry are now no longer
10613c293725SWarner Losh	necessary and will be ignored.  Most insert/remove problems
10623c293725SWarner Losh	have been rectified around this date.
10633c293725SWarner Losh
106498b17b95SWarner Losh20010823:
106598b17b95SWarner Losh 	named now runs as user bind and group bind rather than as
106698b17b95SWarner Losh 	root.  If named_enable is set to YES in /etc/rc.conf, ensure
106798b17b95SWarner Losh 	that user bind is available in /etc/passwd (using vipw(8))
106898b17b95SWarner Losh 	and that group bind is available in /etc/group.  Also make
106998b17b95SWarner Losh 	sure that user or group bind has read (and not write)
107098b17b95SWarner Losh 	permission for your name server configuration and that it
107198b17b95SWarner Losh 	has read and write permission for your slave zone files and
107298b17b95SWarner Losh 	directory.
107398b17b95SWarner Losh
107498b17b95SWarner Losh 	If you wish to continue to run named as root (a less secure
107598b17b95SWarner Losh 	alternative), add a line to /etc/rc.conf saying
107698b17b95SWarner Losh
107798b17b95SWarner Losh 		named_flags=
107898b17b95SWarner Losh
10797b9786edSMark Murray20010709:
10807b9786edSMark Murray	The PAM libraries have had an API upgrade that is beyond
10817b9786edSMark Murray	the ability of the shared library major number to handle.
10827b9786edSMark Murray	It is manifested by PAM-using ports dumping core. The
10837b9786edSMark Murray	solution is to rebuild those ports.
10847b9786edSMark Murray
10851d28950eSWarner Losh20010628:
10861d28950eSWarner Losh	The kernel compile module has moved from src/sys/compile/FOO
10871d28950eSWarner Losh	to src/sys/${MACHINE}/compile/FOO.
10881d28950eSWarner Losh
1089e72fd46aSWarner Losh20010625:
109098b17b95SWarner Losh	The pccard modem issue from 20010613 has been corrected.
109198b17b95SWarner Losh	OLDCARD support is still a little weak in -current.  slot 1 is
109298b17b95SWarner Losh	known not to work on some TI based cardbus bridges.  Some
109398b17b95SWarner Losh	cardbus bridges do not properly detect insert/removal events.
109498b17b95SWarner Losh	IRQ configuration needs more safety belts.
109516de1a07SWarner Losh
10960d415dffSWarner Losh20010617:
1097e72fd46aSWarner Losh	Softupdates problems have been corrected.
10980d415dffSWarner Losh
10990d415dffSWarner Losh20010614:
11000d415dffSWarner Losh	Peter ripped out the linkerset support.  You must, as always,
11010d415dffSWarner Losh	rerun config after you cvsup if you are using the traditional
11020d415dffSWarner Losh	kernel building methods.
11030d415dffSWarner Losh
11048b9959adSWarner Losh20010613:
11058b9959adSWarner Losh	pccard modems may not work with current after 20010604 date.  Some
11068b9959adSWarner Losh	do, others result in panics.  *MAKE*SURE* that you update your
1107e72fd46aSWarner Losh	config and /etc/rc.conf ala the 20010604 entry, or you will have
1108e72fd46aSWarner Losh	problems (this issue will be fixed, it just hasn't been yet).
11098b9959adSWarner Losh
1110e72fd46aSWarner Losh20010613:
11118b9959adSWarner Losh	SOFTUPDATES seem to be broken since the middle of May or so.  Do not
1112e72fd46aSWarner Losh	use them in current.  You can disable softupdates on all mounted
1113e72fd46aSWarner Losh	partitions, or remove SOFTUPDATES the kernel config file.
11148b9959adSWarner Losh
11150d415dffSWarner Losh20010612:
11160d415dffSWarner Losh	After Peter's commits to the hints code, people have been noticing
11170d415dffSWarner Losh	that certain devices are attached (or try to) twice.  This is due
11180d415dffSWarner Losh	to having both static hints as well as a /boot/device.hints.  To
11190d415dffSWarner Losh	work around this issue, please use only one or the other mechanism
11200d415dffSWarner Losh	until this bug is fixed.
11210d415dffSWarner Losh
1122e72fd46aSWarner Losh	Please note that a feature of config is that if you have config
1123e72fd46aSWarner Losh	file FOO and FOO.hints, it automatically adds FOO.hints to the
1124ca22e652SJens Schweikhardt	hints.c file, whether you want it to or not.
1125e72fd46aSWarner Losh
11260d415dffSWarner Losh20010610:
11270d415dffSWarner Losh	Locale names have changed to match other systems better.
11280d415dffSWarner Losh
11296ccdb5e4SWarner Losh20010604:
11306ccdb5e4SWarner Losh	pccard support for pci cards has been committed.  You must change
11316ccdb5e4SWarner Losh	your /etc/pccard.conf irq lines.  It must match the irq used by
11326ccdb5e4SWarner Losh	pcic device.  Interrupt storms may result if you fail to do this.
11333590182eSWarner Losh	Interrupt storms look a lot like a hang.
11343590182eSWarner Losh
11353590182eSWarner Losh	You must also install a new pccardd, otherwise you will get an
11363590182eSWarner Losh	interrupt storm at card reset time (just after it tells you what
11373590182eSWarner Losh	it is).
11383590182eSWarner Losh
11393590182eSWarner Losh	pccardd_flags="-I" is necessary for the time being.  It tells pccardd
11403590182eSWarner Losh	not to ask the kernel if the interrupt is really free or not before
11413590182eSWarner Losh	using it.  You can either change the /etc/pccard.conf irq lines to
11423590182eSWarner Losh	match pcic, or add "-i X" to the pccardd_flags.
11436ccdb5e4SWarner Losh
11440bc62786SWarner Losh20010530:
11450bc62786SWarner Losh	INSTALL=install -C is being deprecated.  If you want to do this,
11460bc62786SWarner Losh	use COPY=-C instead.  The former method will be supported for only
11470bc62786SWarner Losh	a limited time.  If you see
11480bc62786SWarner Losh
11490bc62786SWarner Loshinstall: warning: the -d and -C options may not be specified together
11500bc62786SWarner Losh
11510bc62786SWarner Losh	in your makeworld, then you need to migrate towards using
11520bc62786SWarner Losh	COPY=-C.
11530bc62786SWarner Losh
115468a38c6cSWarner Losh20010525:
1155b6609bbbSWarner Losh	It appears that vm is now stable enough to use again.  However,
1156c4f4a728SWarner Losh	there may be other problems, so caution is still urged.  alpha
1157c4f4a728SWarner Losh	definitely is in bad shape.
115868a38c6cSWarner Losh
1159ed0f29caSWarner Losh20010521:
1160ca22e652SJens Schweikhardt	Minor repo damage has happened.  This may cause problems
1161ed0f29caSWarner Losh	with cvsup of ports.  If you get errors, please see
1162ed0f29caSWarner Losh	http://www.FreeBSD.org/cgi/query-pr.cgi?pr=27495
1163ed0f29caSWarner Losh	at the bottom for details on a workaround.  The error message
1164ed0f29caSWarner Losh	is
1165ed0f29caSWarner LoshUpdater failed: Cannot delete "/usr/ports/www/jakarta-tomcat/files": Directory not empty
1166ed0f29caSWarner Losh
116780c16af9SWarner Losh20010520:
116868a38c6cSWarner Losh	Vm and/or swapping are busted on -current.  Please be patient.
116980c16af9SWarner Losh
117080c16af9SWarner Losh20010519:
117180c16af9SWarner Losh	pccard has had much reorganizational work done to it over
117280c16af9SWarner Losh	the past few days.  Everything should still work, but if
117380c16af9SWarner Losh	not, please contact imp@freebsd.org.
117480c16af9SWarner Losh
1175a45f2d05SWarner Losh20010517:
1176a45f2d05SWarner Losh	ata ioctl changed.  Make sure to recompile both kernel and
1177a45f2d05SWarner Losh	userland at the same time.
1178a45f2d05SWarner Losh
1179a45f2d05SWarner Losh20010517:
1180a45f2d05SWarner Losh	New ncurses imported.
1181a45f2d05SWarner Losh
11822988afcaSWarner Losh20010512:
11832988afcaSWarner Losh	DEVFS is now opt out, not opt in.  Barring major problems, this
11842988afcaSWarner Losh	will be the only way to go starting July 1.
11852988afcaSWarner Losh
11861a33dba7SWarner Losh20010504:
11871a33dba7SWarner Losh	OpenSSH has been updated to 2.9.  Some defaults are different,
11881a33dba7SWarner Losh	including RhostsRSAAuthentication, which changes from yes to no.
11891a33dba7SWarner Losh
119009946a51SWarner Losh20010502:
119109946a51SWarner Losh	Perl breakage in 20010501 was corrected at 14:18:33 PDT.
119209946a51SWarner Losh
119309946a51SWarner Losh20010501:
119409946a51SWarner Losh	Building perl was broken at 02:25:25 PDT.
119509946a51SWarner Losh
119609946a51SWarner Losh20010430:
1197a70a79adSWarner Losh	The bug in 20010429 was corrected at 07:35:37 PDT.  It is safe to
119809946a51SWarner Losh	go back in the water.
119909946a51SWarner Losh
120009946a51SWarner Losh20010429:
120109946a51SWarner Losh	A bad bug was committed at 04:48:42 PDT.  Don't use kernels after
120209946a51SWarner Losh	this date, but before the correction date.
120309946a51SWarner Losh
120491dd3b53SWarner Losh20010423:
120591dd3b53SWarner Losh	old fsck and new kernel interactions appear to have been fixed.
120691dd3b53SWarner Losh
120791dd3b53SWarner Losh20010411:
120891dd3b53SWarner Losh	fsck and the kernel were changed to handle some optimizations
120991dd3b53SWarner Losh	to directory layout.  This breaks backward compatibility.
121091dd3b53SWarner Losh	Update only if you understand that you must not use the old
121191dd3b53SWarner Losh	fsck with the new kernel ever.
121291dd3b53SWarner Losh
1213933b3269SWarner Losh20010330:
1214933b3269SWarner Losh	fsck has changed the meaning of the pass column in /etc/fstab.
1215c4e215d3SWarner Losh	Please see the cvs commit to fsck.8 or the fsck.8 man page for
1216933b3269SWarner Losh	details.  It is unclear if changes to /etc/fstab are necessary.
1217933b3269SWarner Losh
1218933b3269SWarner Losh20010319:
1219933b3269SWarner Losh	portmap had changed name to rpcbind for maximum POLA in your
1220933b3269SWarner Losh	current world.  /etc/hosts.{allow,deny} needs changes.  nfs and
1221933b3269SWarner Losh	other rpc based programs that rely on portmapper will not work
1222f34a9421SWarner Losh	without updates to /etc/hosts.{allow,deny} and /etc/netconfig.
122309946a51SWarner Losh
122409946a51SWarner Losh20010315:
122509946a51SWarner Losh	ata subsystem changes.  ATA_ENABLE_ATAPI_DMA, ATA_ENABLE_WC
1226ca22e652SJens Schweikhardt	and ATA_ENABLE_TAGS are no longer kernel options.  They have
122709946a51SWarner Losh	been replaced by tunables.  See ata.4 for details.
1228933b3269SWarner Losh
1229933b3269SWarner Losh20010312:
1230933b3269SWarner Losh	The fxp driver was converted to use miibus.  If you compile
1231933b3269SWarner Losh	fxp into your kernel statically, you will need to add miibus.
1232933b3269SWarner Losh
1233933b3269SWarner Losh20010312:
1234933b3269SWarner Losh	The wi device now defaults to BSS (infrastructure) mode
1235933b3269SWarner Losh	instead of ad-hoc.
1236933b3269SWarner Losh
1237933b3269SWarner Losh20010310:
1238f5260d32SWarner Losh	/dev/urandom should be a symbolic link to /dev/random now.
1239933b3269SWarner Losh	Users of current not using DEVFS need to run MAKEDEV std.
1240933b3269SWarner Losh	ssh might not work if you don't.
1241933b3269SWarner Losh
124262353691SWarner Losh20010303:
124362353691SWarner Losh	The ed driver has been updated.  It now allows mii attachments,
124462353691SWarner Losh	which means that you must include the miibus in your kernel if
124562353691SWarner Losh	you use the ed driver.
124662353691SWarner Losh
1247d325cf65SWarner Losh20010220:
1248d325cf65SWarner Losh	The problems with libc have been corrected.  It is now mostly
1249d325cf65SWarner Losh	safe to go back into the water.
1250d325cf65SWarner Losh
1251024daae6SWarner Losh20010211:
1252024daae6SWarner Losh	The size of FILE was changed.  This breaks upgrading.  If
1253024daae6SWarner Losh	you must upgrade, be prepared for pain.  It also breaks almost
1254024daae6SWarner Losh	all binaries that you've compiled on -current.  You are warned
1255024daae6SWarner Losh	that before upgrading would be a good time to do a level 0
1256024daae6SWarner Losh	dump of your system.  No, really, I mean it this time.
1257024daae6SWarner Losh
1258024daae6SWarner Losh	To get to the new system, you'll need to use the following
1259024daae6SWarner Losh	workaround.  Hopefully this can be sorted out so that we
1260024daae6SWarner Losh	don't have to move this to the updating section.
1261024daae6SWarner Losh
1262024daae6SWarner Losh	To get around the installworld problem, do:
1263024daae6SWarner Losh		# cd /usr/src/usr.bin/sed
1264024daae6SWarner Losh		# make install
1265024daae6SWarner Losh		# cd /usr/src
1266024daae6SWarner Losh		# make installworld
1267024daae6SWarner Losh	If that doesn't work, then try:
1268024daae6SWarner Losh		# make -k installworld
1269024daae6SWarner Losh		# make installworld
1270024daae6SWarner Losh
1271024daae6SWarner Losh20010207:
1272024daae6SWarner Losh	DEVFS is now the default.  If you use vinum, make sure that you
1273024daae6SWarner Losh	do not include devfs in your kernel as problems result.
1274024daae6SWarner Losh
1275024daae6SWarner Losh20010205:
12767595222aSWarner Losh	FFS_ROOT and CD9660_ROOT have been removed or deprecated.
1277024daae6SWarner Losh	Remove them from your config.
1278024daae6SWarner Losh
12791e159248SWarner Losh20010122:
12801e159248SWarner Losh	****************************** WARNING ******************************
12811e159248SWarner Losh			buildkernel has been changed slightly
12821e159248SWarner Losh	****************************** WARNING ******************************
12831e159248SWarner Losh	KERNCONF replaces the variable KERNEL for buildkernel.  You
12841e159248SWarner Losh	should update your scripts and make.conf accordingly.
12851e159248SWarner Losh
12861e159248SWarner Losh20010119:
12871e159248SWarner Losh	config has changed to allow DEV_FOO as a replacement for NFOO.
12881e159248SWarner Losh	This requires a new config to build correctly.
12891e159248SWarner Losh
1290aac7dfeaSWarner Losh20010116:
1291ca22e652SJens Schweikhardt	The kernel option I386_CPU is now mutually exclusive with the
1292aac7dfeaSWarner Losh	other cpu types. If you have an i386 system, be sure that it
1293aac7dfeaSWarner Losh	only had this line.  Remove it for all other configurations.
1294aac7dfeaSWarner Losh
1295aac7dfeaSWarner Losh20010110:
1296aac7dfeaSWarner Losh	Changes to the kernel require it and burncd be in sync.
1297aac7dfeaSWarner Losh
1298aac7dfeaSWarner Losh20010102:
1299aac7dfeaSWarner Losh	Everyone who has hw.sndunit set to something in
1300aac7dfeaSWarner Losh	/etc/sysctl.conf, it is now hw.snd.unit.
1301aac7dfeaSWarner Losh
130263c90c9eSWarner Losh20010101:
130363c90c9eSWarner Losh	ex and vi were broken by some changes to sys/queue.h.  If you
130463c90c9eSWarner Losh	have a bad vi, you will see make buildworld fail with a core
13055fd2a895SWarner Losh	dump while building termcap.  You can work around this problem
130663c90c9eSWarner Losh	by adding -k to your make buildworld.  This will cause the
130763c90c9eSWarner Losh	build to complete and install a new vi.  Once that's done, you
130863c90c9eSWarner Losh	can rebuild again without the -k to pick up anything that
130963c90c9eSWarner Losh	might have been ignored by the -k option.
131063c90c9eSWarner Losh
13115fd2a895SWarner Losh	Others have suggested that you can just rebuild libc if your
13125fd2a895SWarner Losh	vi/ex is dynamically linked, but I've not received any reports
13135fd2a895SWarner Losh	of this working.
13145fd2a895SWarner Losh
1315aac7dfeaSWarner Losh20001228:
1316aac7dfeaSWarner Losh	There have been some changes to libcrypt in -current.  The
1317ca22e652SJens Schweikhardt	libscrypt/libdescrypt symlink silliness is gone and the installed
1318aac7dfeaSWarner Losh	libcrypt is fully functional.  Be aware of this.
1319aac7dfeaSWarner Losh
1320de2bcc63SWarner Losh20001218:
1321de2bcc63SWarner Losh	Linksys Fast Ethernet PCCARD cards supported by the ed driver
1322de2bcc63SWarner Losh	now require the addition of flag 0x80000 to their config line
1323de2bcc63SWarner Losh	in pccard.conf(5).  This flag is not optional.  These Linksys
1324de2bcc63SWarner Losh	cards will not be recognized without it.
1325de2bcc63SWarner Losh
1326960773f7SWarner Losh20001205:
1327960773f7SWarner Losh	Important new FreeBSD-version stuff: PAM support has been worked
1328960773f7SWarner Losh	in, partially from the "Unix" OpenSSH version.  This requires
1329960773f7SWarner Losh	adding the following in pam.conf:
1330960773f7SWarner Losh
1331960773f7SWarner Losh	sshd    auth    sufficient      pam_skey.so
1332960773f7SWarner Losh	sshd    auth    required        pam_unix.so         try_first_pass
1333960773f7SWarner Losh	sshd    session required        pam_permit.so
1334960773f7SWarner Losh
13350acc635eSWarner Losh20001031:
13360acc635eSWarner Losh	cvs updated to 1.11.
13370acc635eSWarner Losh
13380acc635eSWarner Losh20001020:
13390acc635eSWarner Losh	The random device needs more entropy, so you need to make sure
13400acc635eSWarner Losh	that you've run mergemaster to get a /etc/rc which will seed
13410acc635eSWarner Losh	/dev/random.  If you don't and the system hangs after ldconfig,
13420acc635eSWarner Losh	then banging on the keyboard randomly until it unhangs is one
13430acc635eSWarner Losh	workaround.
13440acc635eSWarner Losh
13450acc635eSWarner Losh20001010:
13460acc635eSWarner Losh	****************************** WARNING ******************************
13470acc635eSWarner Losh				Sendmail has been updated.
13480acc635eSWarner Losh	****************************** WARNING ******************************
13490acc635eSWarner Losh	o mail.local(8) is no longer installed as a set-user-id binary.
13500acc635eSWarner Losh	o sendmail(8) is now built with STARTTLS support unless NO_OPENSSL
13510acc635eSWarner Losh	  is set.
13520acc635eSWarner Losh	o The default /etc/mail/sendmail.cf disables the SMTP EXPN and VRFY
13530acc635eSWarner Losh	  commands.
13540acc635eSWarner Losh	o Now using sendmail's version of vacation(1).
13550acc635eSWarner Losh	o The sendmail cf building tools (contrib/sendmail/cf) are installed
13560acc635eSWarner Losh	  in /usr/share/sendmail/cf.
13570acc635eSWarner Losh	o sendmail.cw changed to local-host-names
13580acc635eSWarner Losh
13590acc635eSWarner Losh	More details can be found at
13600acc635eSWarner Losh		http://people.freebsd.org/~imp/UPDATING/sendmail-20001010
13610acc635eSWarner Losh
13626e98a146SWarner Losh20001009:
13636e98a146SWarner Losh	The ports tree's new layout is in place.  Be sure to update
13646e98a146SWarner Losh	your entire ports tree, or you will have problems.
13656e98a146SWarner Losh
13666e98a146SWarner Losh20001006:
1367685294e7SMark Ovens	The perl build procedure no longer installs miniperl, nor uses
13686e98a146SWarner Losh	the installed miniperl.  It is recommended that you delete
13696e98a146SWarner Losh	/usr/bin/miniperl.
13706e98a146SWarner Losh
1371073113a4SWarner Losh20001005:
1372073113a4SWarner Losh	This weekend the ports tree will be updated to a new layout.
1373685294e7SMark Ovens	It will be in an inconsistent state until noted in the UPDATING
1374073113a4SWarner Losh	file, or with asami-san's message to the relevant mailing
1375073113a4SWarner Losh	lists.  With this new layout, you'll need to update the whole
1376073113a4SWarner Losh	tree for anything to work.
1377073113a4SWarner Losh
13780acc635eSWarner Losh20000928:
13790acc635eSWarner Losh	There was a change in the passwd format.  Need more information.
13800acc635eSWarner Losh
1381be3885b3SWarner Losh20000916:
1382be3885b3SWarner Losh	/boot/kernel/kernel.ko -> /boot/kernel/kernel change has taken
1383be3885b3SWarner Losh	place.  Please update boot loader (not the boot blocks) at the
1384be3885b3SWarner Losh	same time as your kernel.
1385be3885b3SWarner Losh
138676ec9675SWarner Losh20000914:
138776ec9675SWarner Losh	The new pmtimer device is necessary for laptops.  Failure to
138876ec9675SWarner Losh	include the device will cause suspended laptops losing time
138976ec9675SWarner Losh	when they resume.  Include
139076ec9675SWarner Losh		device		pmtimer
139176ec9675SWarner Losh	in your config file and
139201b9a434SWarner Losh		hint.pmtimer.0.at="isa"
139376ec9675SWarner Losh	to your /boot/device.hints file.
139476ec9675SWarner Losh
1395f4865386SMark Murray20000911:
1396f4865386SMark Murray	The random device has been turned into a (pseudo-)device,
1397f4865386SMark Murray	rather than an option. The supplied kernel config files have
1398f4865386SMark Murray	been updated. You will need to do something similar in your
1399f4865386SMark Murray	own kernel config file.
1400f4865386SMark Murray	Remove:
1401f4865386SMark Murray		options		RANDOMDEV
1402f4865386SMark Murray	Add:
1403f4865386SMark Murray		device		random
1404f4865386SMark Murray	If you prefer to load the loadable module, you need to do
1405f4865386SMark Murray	nothing.
1406f4865386SMark Murray
1407d594498fSWarner Losh20000909:
1408d594498fSWarner Losh	The random device module has been renamed from randomdev.ko to
1409d594498fSWarner Losh	random.ko. You will need to edit your /boot/loader.conf to
1410d594498fSWarner Losh	reflect this if you load this module at boot time.
1411d594498fSWarner Losh	The line should read:
1412d594498fSWarner Losh		random_load="YES"
1413d594498fSWarner Losh
14140deb7ddcSWarner Losh20000907:
14150deb7ddcSWarner Losh	The SMPNG commit has happened.  It should work, but if it
141616eb772dSWarner Losh	doesn't, fallback to the PRE_SMPNG CVS tag.  There are likely
141716eb772dSWarner Losh	to be a variety of minor issues.  Please see 20000905 to make
141816eb772dSWarner Losh	sure you don't have model loading problems which might at
141916eb772dSWarner Losh	first blush appear related to SMP.
142052bf24e7SWarner Losh
14215a01880bSWarner Losh20000906:
14225a01880bSWarner Losh	nsswitch has been imported from NetBSD.  Among other things,
14235a01880bSWarner Losh	this means that /etc/host.conf is no longer used.  See
14245a01880bSWarner Losh	nsswitch.conf(5) instead.  Note that at boot time rc.network
14255a01880bSWarner Losh	will attempt to produce a new nsswitch.conf file for you if you
14265a01880bSWarner Losh	don't have one, and you have host.conf.
14275a01880bSWarner Losh
14282b41163cSWarner Losh20000905:
142938d6ecd2SWarner Losh	The ucred structure changed size.  This breaks the interface
143038d6ecd2SWarner Losh	that mountd uses.  Trying to use an older mountd with a newer
143138d6ecd2SWarner Losh	kernel guarantees a panic.  This means that you need to use
143238d6ecd2SWarner Losh	kernels newer than today only with matching mountd, but you
143338d6ecd2SWarner Losh	needed to do that anyway with the boot loader changes.
143438d6ecd2SWarner Losh
143538d6ecd2SWarner Losh20000905:
14368aab4bc7SWarner Losh	The boot loader has been updated.  The new default kernel is
14378aab4bc7SWarner Losh	now /boot/kernel/kernel.ko.  The new default module location
14388aab4bc7SWarner Losh	is /boot/kernel.
14398aab4bc7SWarner Losh
14408aab4bc7SWarner Losh	You *MUST* upgrade your boot loader and kernel at the same time.
144138d6ecd2SWarner Losh	The easiest way to do this is to do the buildworld/buildkernel/
144238d6ecd2SWarner Losh	installkernel/installworld dance.
14432b41163cSWarner Losh
1444d594498fSWarner Losh	Furthermore, you are urged to delete your old /modules directory
1445d594498fSWarner Losh	before booting the new kernel, since kldload will find stale
1446d594498fSWarner Losh	modules in that directory instead of finding them in the correct
1447d594498fSWarner Losh	path, /boot/kernel.  The most common complaint that this cures
1448d594498fSWarner Losh	is that the linux module crashes your machine after the update.
1449d594498fSWarner Losh
1450d594498fSWarner Losh	if [ ! -d /boot/kernel.old ]; then
1451d594498fSWarner Losh		mv /modules.old /boot/kernel.old
1452d594498fSWarner Losh		chflags noschg /kernel.old
1453d594498fSWarner Losh		mv /kernel.old /boot/kernel.old/kernel.ko
1454d594498fSWarner Losh		chflags schg /boot/kernel.old/kernel.ko
1455d594498fSWarner Losh	fi
1456d594498fSWarner Losh
1457c22a309cSWarner Losh20000904:
1458c22a309cSWarner Losh	A new issue with the sendmail upgrade has come to light.
1459c22a309cSWarner Losh	/etc/aliases has moved to /etc/mail/aliases.  Mergemaster will
1460c22a309cSWarner Losh	incorrectly install the default aliases in /etc/mail rather than
1461c22a309cSWarner Losh	move the old one from /etc.  So you'll need to manually move the
1462c22a309cSWarner Losh	file, create a symbolic link, remove the old /etc/aliases.db and
1463c22a309cSWarner Losh	run newaliases.  For safety sake, you should stop sendmail
1464c22a309cSWarner Losh	while doing this and run the upgrade when locally sourced email
1465c22a309cSWarner Losh	is not likely to be generated.
1466c22a309cSWarner Losh
1467fdb9f54dSWarner Losh20000825:
1468fdb9f54dSWarner Losh	/boot/device.hints is now required for installkernel to
14699c1a7444SWarner Losh	succeed.  You should copy GENERIC.hints for your architecture
14709c1a7444SWarner Losh	into /boot/device.hints.  If and only if you compile hints
14719c1a7444SWarner Losh	into your kernel, then this file may be empty.  Please note,
14729c1a7444SWarner Losh	if you have an empty or missing /boot/device.hints file and
14739c1a7444SWarner Losh	you neglected to compile hints into your kernel, no boot
14749c1a7444SWarner Losh	messages will appear after the boot loader tries to start the
14759c1a7444SWarner Losh	kernel.
14769c1a7444SWarner Losh
14779c1a7444SWarner Losh20000821:
14789c1a7444SWarner Losh	If you do NOT have ``options RANDOMDEV'' in your kernel and
14799c1a7444SWarner Losh	you DO want the random device then add randomdev_load="YES" to
14809c1a7444SWarner Losh	/boot/loader.conf.
1481fdb9f54dSWarner Losh
14828f250aa7SWarner Losh20000812:
14835da0d091SWarner Losh	suidperl is now always built and installed on the system, but
14845da0d091SWarner Losh	with permissions of 511.  If you have applications that use
14855da0d091SWarner Losh	this program, you are now required to add ENABLE_SUIDPERL=true
14865da0d091SWarner Losh	to /etc/make.conf.  If you forget to do this,
14875da0d091SWarner Losh		chmod 4511 /usr/bin/suidperl
14885da0d091SWarner Losh	will fix this until the next build.
14895da0d091SWarner Losh
14905da0d091SWarner Losh20000812:
14918f250aa7SWarner Losh	sendmail has been updated from 8.9.3 to 8.11.0.  Some of the more
14928f250aa7SWarner Losh	visible changes that may immediately affect your configuration
14938f250aa7SWarner Losh	include:
14948f250aa7SWarner Losh	- New default file locations from src/contrib/sendmail/cf/README
14958f250aa7SWarner Losh	- newaliases limited to root and trusted users
14968f250aa7SWarner Losh	- MSA port (587) turned on by default
14978f250aa7SWarner Losh	- New queue file naming system so can't go from 8.11 -> 8.9
14988f250aa7SWarner Losh	- FEATURE(`rbl') renamed to FEATURE(`dnsbl')
14998f250aa7SWarner Losh	- FEATURE(`nullclient') is more full featured
15008f250aa7SWarner Losh	- FEATURE(`nouucp') requires an argument: `reject' or `nospecial'
15018f250aa7SWarner Losh	- mail.local FreeBSD-only -b option changed to -B
15028f250aa7SWarner Losh	- See src/contrib/sendmail/RELEASE_NOTES for more info
15038f250aa7SWarner Losh
150471c38472SWarner Losh20000810:
150571c38472SWarner Losh	suidperl (aka sperl) is no longer build by default.  You must
150671c38472SWarner Losh	specifically define BUILD_SUIDPERL to "true" for it to be build.
150771c38472SWarner Losh	Furthermore, we recommend that you remove /usr/bin/sperl* and
150871c38472SWarner Losh	/usr/bin/suidperl files from your system unless you have a
150971c38472SWarner Losh	specific use for it.
151071c38472SWarner Losh
151171c38472SWarner Losh20000729:
151271c38472SWarner Losh	Networking defaults have been tightened.  Anybody upgrading
151371c38472SWarner Losh	/etc/defaults/rc.conf needs to add the following lines to
151471c38472SWarner Losh	/etc/rc.conf if they want to have the same setup
151571c38472SWarner Losh	afterwards (unless the variables already are set, of course):
151671c38472SWarner Losh		# Enable network daemons for user convenience.
151771c38472SWarner Losh		inetd_enable="YES"
151871c38472SWarner Losh		portmap_enable="YES"
151971c38472SWarner Losh		sendmail_enable="YES"
152071c38472SWarner Losh
152171c38472SWarner Losh20000728:
152271c38472SWarner Losh	If you have null_load="YES" in your /boot/loader.conf, you
152371c38472SWarner Losh	will need to change that to nullfs_load="YES".
152471c38472SWarner Losh
15251dece4a9SWarner Losh20000728:
15261dece4a9SWarner Losh	The "installkernel" target has changed slightly. Now even if
15271dece4a9SWarner Losh	you override KERNEL e.g. 'make installkernel KERNEL=MYKERNEL'
15281dece4a9SWarner Losh	it will install the MYKERNEL file (built with the buildkernel
15291dece4a9SWarner Losh	target) as /kernel rather than /MYKERNEL. Those who have
15301dece4a9SWarner Losh	updated their /boot/loader.conf files to point to /MYKERNEL
15311dece4a9SWarner Losh	should remove that entry or perform manual rename of /kernel
15321dece4a9SWarner Losh	to /MYKERNEL.
15331dece4a9SWarner Losh
1534409e887cSWarner Losh20000711:
1535409e887cSWarner Losh	If you use CVSUP or CTM to get CVS trees, AND you used to get
1536409e887cSWarner Losh	the old crypto files from internat.freebsd.org AND you check
1537409e887cSWarner Losh	out files from the CVS tree with the cvs command, please read
1538409e887cSWarner Losh		http://people.freebsd.org/~imp/internat.txt
1539409e887cSWarner Losh	for details on potential problems that you might have and how
1540409e887cSWarner Losh	to get around them.
1541409e887cSWarner Losh
1542409e887cSWarner Losh	If you are merely a mirror, or don't answer yes to each of the
1543409e887cSWarner Losh	clauses above, you needn't worry.
1544409e887cSWarner Losh
1545409e887cSWarner Losh20000711:
1546409e887cSWarner Losh	/etc/security has been updated to print the inode number of
1547409e887cSWarner Losh	setuid programs that have changed.  You will see a large spike
1548409e887cSWarner Losh	in the number of changed programs the first time when you run
1549409e887cSWarner Losh	mergemaster to get a new /etc/security.
1550409e887cSWarner Losh
1551673d13f2SWarner Losh20000710:
1552673d13f2SWarner Losh	/dev/random now has good entropy collection (from the keyboard
1553673d13f2SWarner Losh	and sysmouse drivers). Please ensure that either `options
1554673d13f2SWarner Losh	RANDOMDEV' is present in your kernel config file or that
1555673d13f2SWarner Losh	`randomdev_load="YES"' is in your /boot/loader.conf. If you do
1556673d13f2SWarner Losh	not have the /dev/random driver, OpenSSL (and consequently
1557673d13f2SWarner Losh	lots of crypto tools (like SSH)) will fail with strange
1558673d13f2SWarner Losh	errors. (see below, 20000624).
1559673d13f2SWarner Losh
1560bed5c5ffSWarner Losh	FreeBSD-current is safe again to run Crypto.
15611dece4a9SWarner Losh
1562673d13f2SWarner Losh20000709:
1563c6dd1430SWarner Losh	phk made the malloc default options AJ.  This may slow things
1564c6dd1430SWarner Losh	down and uncover other latent bugs in the code.  If you need to
1565c6dd1430SWarner Losh	run at full speed, you can disable this by doing the following:
1566673d13f2SWarner Losh		ln -s aj /etc/malloc.conf
1567673d13f2SWarner Losh
1568e98e26cdSWarner Losh20000706:
1569e98e26cdSWarner Losh	libftpio's version was accidentally bumped a few days ago.  This
1570e98e26cdSWarner Losh	has been corrected.  You may need to remove /usr/lib/libftpio.so.6
1571e98e26cdSWarner Losh	before doing your next buildworld/installworld pair.  It certainly
1572f699bbbbSMark Ovens	won't hurt to remove it before the update procedure.  It will
1573e98e26cdSWarner Losh	break fetch until a new one is built, but ftp can be used in the
15742c021c6cSMark Ovens	interim if needed.
1575e98e26cdSWarner Losh
1576e98e26cdSWarner Losh20000705:
1577e98e26cdSWarner Losh	The crypto packages have changed for the cvsup.  This has been done
1578e98e26cdSWarner Losh	in a backward compatible way, but the old packages will go away at
1579e98e26cdSWarner Losh	some point in the future.  Look at /usr/share/examples/cvsup for
1580e98e26cdSWarner Losh	details.
1581e98e26cdSWarner Losh
1582c373950eSWarner Losh20000704:
15832f961bc8SWarner Losh	With the new sys/modules/sound/drivers/*, you will need to
15842f961bc8SWarner Losh	set SYSDIR until you do an installworld after July 7th.
15852f961bc8SWarner Losh
15862f961bc8SWarner Losh20000704:
1587c373950eSWarner Losh	rc.shutdown and rc will now call the rc.d scripts with start
1588c373950eSWarner Losh	or stop.  This may cause some harmless warnings from older
1589c373950eSWarner Losh	rc.d scripts that haven't been updated.
1590c373950eSWarner Losh
159127dc3a2bSWarner Losh20000630:
159227dc3a2bSWarner Losh	The libfetch based version of fetch has gone into the tree.
159327dc3a2bSWarner Losh	Minor problems may result on some of the less popular sites,
159427dc3a2bSWarner Losh	which should be reported to des@freebsd.org.
159527dc3a2bSWarner Losh
1596b8c215acSWarner Losh20000625:
1597b8c215acSWarner Losh	From approximately this date forward, one must have the crypto
159827dc3a2bSWarner Losh	system installed in order to build the system and kernel.
159927dc3a2bSWarner Losh	While not technically strictly true, one should treat it as
160027dc3a2bSWarner Losh	required and grab the crypto bits.  If you are grabbing CVS
160127dc3a2bSWarner Losh	trees, src-all and cvs-crypto should be treated as if they
160227dc3a2bSWarner Losh	were required.  You should check with the latest collections
160327dc3a2bSWarner Losh	to make sure that these haven't changed.
1604b8c215acSWarner Losh
16057b990719SWarner Losh20000624:
16067b990719SWarner Losh	Mark Murray just committed the first parts of a cleanup of
16077b990719SWarner Losh	/dev/zero, et al.  This is also cleaning up /dev/random.
16087b990719SWarner Losh	The entropy is disconnected, so DO NOT USE VERSIONS OF FREEBSD
16091a33dba7SWarner Losh	-CURRENT FROM THIS POINT to 2000710 for cryptographic services
16107b990719SWarner Losh	until Mark can merge in the fixes to this work in progress.
16117b990719SWarner Losh	openssh and openssl should not be used to generate keys from this
16127b990719SWarner Losh	date to the completion of the work.
16137b990719SWarner Losh
161427dc3a2bSWarner Losh	If you must operate at this reduced level of security, add '
161527dc3a2bSWarner Losh	options RANDOMDEV' to your kernel or modload the randomdev
161627dc3a2bSWarner Losh	module.  You may also need to copy a new MAKEDEV to /dev and
161727dc3a2bSWarner Losh	recreate the random and urandom devices.
161827dc3a2bSWarner Losh
161981e54c50SWarner Losh20000622:
162081e54c50SWarner Losh	The license on the softupdates is now a standard 2 clause
162181e54c50SWarner Losh	BSD license.  You may need to remove your symbolic links
162281e54c50SWarner Losh	that used to be required when updating.
162381e54c50SWarner Losh
162439943833SWarner Losh20000621:
16252c021c6cSMark Ovens	Scott Flatman <sf@aracnet.com> sent in a decent write-up on
16262a2f33fbSDaniel Baker	the config file update procedure.
16272a2f33fbSDaniel Baker		http://people.freebsd.org/~imp/config-upd.html
1628c373950eSWarner Losh	NOTE: LINT is gone.  It has been replaced with NOTES.  NOTES
162959df1173SDavid E. O'Brien	isn't buildable.  However, you can generate a LINT file:
163059df1173SDavid E. O'Brien		cd /sys/<ARCH>/conf && make LINT
163139943833SWarner Losh
1632290f9ad8SWarner Losh20000620:
1633290f9ad8SWarner Losh	Binutils 2.10 have hit the tree, or will shortly.  As soon
1634290f9ad8SWarner Losh	as they do, the problem noted in 20000522 will be resolved and
1635290f9ad8SWarner Losh	that workaround will no longer be required.
1636290f9ad8SWarner Losh
163790fb6346SWarner Losh20000615:
163890fb6346SWarner Losh	phk removed the compatibility creation of wd devices in the
163990fb6346SWarner Losh	ad driver.  If you haven't done so already, you must update
164090fb6346SWarner Losh	your fstab, etc to use the ad devices instead of the wd
164190fb6346SWarner Losh	devices.
164290fb6346SWarner Losh
1643f75f65bbSWarner Losh	In addition, you'll need to update your boot blocks to a
1644f75f65bbSWarner Losh	more modern version, if you haven't already done so.  Modern
1645f75f65bbSWarner Losh	here means 4.0 release or newer (although older releases
1646f75f65bbSWarner Losh	may work).
1647f75f65bbSWarner Losh
1648ba26da8eSWarner Losh20000612:
1649ba26da8eSWarner Losh	Peter took an axe to config(8).  Be sure that you read his mail
1650290f9ad8SWarner Losh	on the topic before even thinking about updating.  You will
1651c6dd1430SWarner Losh	need to create a /boot/device.hints or add a hints directive
1652290f9ad8SWarner Losh	to your config file to compile them in statically.  The format
1653f54a3542SWarner Losh	of the config file has changed as well.  Please see GENERIC or
1654f54a3542SWarner Losh	NEWCARD for examples of the new format.
1655290f9ad8SWarner Losh
16569698f2c0SWarner Losh	Indirectly, this also breaks USERCONFIG.  Unless a newer entry
16579698f2c0SWarner Losh	says that it has been fixed, assume that must use the hints mechanism
16589698f2c0SWarner Losh	in the loader if you need to use a machine with very old ISA cards
16599698f2c0SWarner Losh	in it.
1660bbcc5149SWarner Losh
1661d65850ebSWarner Losh20000522:
1662ba26da8eSWarner Losh	A new set of binutils went into the tree today.  Anybody
1663d65850ebSWarner Losh	building a kernel after this point is advised that they need
1664d65850ebSWarner Losh	to rebuild their binutils (or better yet do a
1665d65850ebSWarner Losh	buildworld/installworld) before building a new kernel.
1666d65850ebSWarner Losh
1667d9583a00SWarner Losh	Due to bugs in binutils, using malloc options (eg /etc/malloc.conf
1668d9583a00SWarner Losh	or MALLOC_OPTIONS env var) J will cause ld to dump core.  It
1669d9583a00SWarner Losh	is recommended that you don't set this option until the problem
1670d9583a00SWarner Losh	is resolved.
1671d9583a00SWarner Losh
16728039cedeSWarner Losh20000513:
16738039cedeSWarner Losh	The ethernet drivers were all updated to clean up the BPF handling.
16748039cedeSWarner Losh
1675d65850ebSWarner Losh20000510:
16768039cedeSWarner Losh	The problems with boot blocks on the alphas have been corrected.
16778039cedeSWarner Losh	This will require some care in updating alphas.  A new libstand
16788039cedeSWarner Losh	is requires for the boot blocks to build properly.
16798039cedeSWarner Losh
16808039cedeSWarner Losh20000503:
16818039cedeSWarner Losh	Recompile all kld modules.  Proper version dependency info
16828039cedeSWarner Losh	is now available.
16838039cedeSWarner Losh
1684d65850ebSWarner Losh20000502:
1685d65850ebSWarner Losh	Modules have been disconnected from the buildworld tree and
1686d65850ebSWarner Losh	connected to the kernel building instead.
1687d65850ebSWarner Losh
1688be149406SNik Clayton20000427:
16898039cedeSWarner Losh	You may need to build gperf
16908039cedeSWarner Losh		cd /usr/src/gnu/usr.bin/gperf && make depend all install
16918039cedeSWarner Losh	when upgrading from 4.0 -> current.  The build system now uses
16928039cedeSWarner Losh	an option only in -current.
16938039cedeSWarner Losh
16942b8dd5f4SWarner Losh20000417:
16952b8dd5f4SWarner Losh	The method that we brand ELF binaries has changed to be more
1696f699bbbbSMark Ovens	acceptable to the binutils maintainers.  You will need to
16972b8dd5f4SWarner Losh	rebrand your ELF binaries that aren't native.  One problem
16982b8dd5f4SWarner Losh	binary is the Linux ldconfig.  After your make world, but
16992c021c6cSMark Ovens	before you reboot, you'll need to issue:
17002b8dd5f4SWarner Losh		brandelf -t Linux /compat/linux/sbin/ldconfig
17012b8dd5f4SWarner Losh	if you have Linux compatibility enabled on your machine.
17022b8dd5f4SWarner Losh
17038d9f1945SWarner Losh20000320:
17042b8dd5f4SWarner Losh	If you have really bad/marginal IDE drives, you may find they
17052b8dd5f4SWarner Losh	don't work well.  Use pio mode instead.  The easiest way to
17062b8dd5f4SWarner Losh	cope if you have a problem combination is to add:
1707ae20a1b8SDima Dorfman		/sbin/sysctl hw.ata.ata_dma=0
17082b8dd5f4SWarner Losh	to the start of /etc/rc.conf.
17098d9f1945SWarner Losh
1710f8ab1dd6SWarner Losh20000319:
1711f699bbbbSMark Ovens	The ISA and PCI compatibility shims have been connected to the
1712f8ab1dd6SWarner Losh	options COMPAT_OLDISA and COMPAT_OLDPCI.  If you are using old
1713f8ab1dd6SWarner Losh	style PCI or ISA drivers (i.e. tx, voxware, etc.) you must
1714f8ab1dd6SWarner Losh	include the appropriate option in your kernel config.  Drivers
1715f8ab1dd6SWarner Losh	using the shims should be updated or they won't ship with
1716f8ab1dd6SWarner Losh	5.0-RELEASE, targeted for 2001.
1717f8ab1dd6SWarner Losh
171819cada77SWarner Losh20000318:
1719f699bbbbSMark Ovens	We've entered the traditional post release dumping party.
172019cada77SWarner Losh	Large kernel changes are being committed and are in the
172119cada77SWarner Losh	works.  It is important to keep the systems' klds and kernel
172219cada77SWarner Losh	in sync as kernel interfaces and structures are changing.
172319cada77SWarner Losh	Before reporting kernel panics, make sure that all modules
172419cada77SWarner Losh	that you are loading are up to date.
1725ba228352SWarner Losh
172619cada77SWarner Losh20000315:
17276d23c382SWarner Losh	If you are upgrading from an older version of FreeBSD, you
17286d23c382SWarner Losh	need to update your boot blocks as well.  'disklabel -B ad0'
17296d23c382SWarner Losh	will do the trick.  This isn't critical until you remove your
17306d23c382SWarner Losh	wd device entries in /dev, at which point your system will not
17316d23c382SWarner Losh	boot.
17326d23c382SWarner Losh
17336d23c382SWarner Losh20000315:
173419cada77SWarner Losh	4.0 RELEASE shipped.  Please see the 4.0 UPDATING file for how
173519cada77SWarner Losh	to upgrade to 4.0 from 3.x.
173657199806SWarner Losh
1737dc0dbf5cSWarner LoshCOMMON ITEMS:
1738dc0dbf5cSWarner Losh
1739cd5f061cSWarner Losh	# NOTE: 5.x below applies to 6.0-currrent as well, for the
1740cd5f061cSWarner Losh	# momemnt.  4.any -> 5.any upgrade support will remain in
1741cd5f061cSWarner Losh	# place for 6.0 current, but after 5.3 RELEASE, the 4.any ->
1742cd5f061cSWarner Losh	# 6.0-current upgrade path will require moving through 5.3
1743cd5f061cSWarner Losh	# RELEASE or newer.
1744cd5f061cSWarner Losh
1745a24eff53SWarner Losh	General Notes
1746a24eff53SWarner Losh	-------------
1747a24eff53SWarner Losh	Avoid using make -j when upgrading.  From time to time in the
1748a24eff53SWarner Losh	past there have been problems using -j with buildworld and/or
1749a24eff53SWarner Losh	installworld.  This is especially true when upgrading between
1750a24eff53SWarner Losh	"distant" versions (eg one that cross a major release boundary
1751a24eff53SWarner Losh	or several minor releases, or when several months have passed
1752a24eff53SWarner Losh	on the -current branch).
1753a24eff53SWarner Losh
17545780f3baSWarner Losh	Sometimes, obscure build problems are the result of environment
17555780f3baSWarner Losh	poisoning.  This can happen because the make utility reads its
17565780f3baSWarner Losh	environment when searching for values for global variables.
17575780f3baSWarner Losh	To run your build attempts in an "environmental clean room",
17585780f3baSWarner Losh	prefix all make commands with 'env -i '.  See the env(1) manual
17595780f3baSWarner Losh	page for more details.
17605780f3baSWarner Losh
1761dc0dbf5cSWarner Losh	To build a kernel
1762dc0dbf5cSWarner Losh	-----------------
1763ba01eb20SWarner Losh	If you are updating from a prior version of FreeBSD (even one just
1764f699bbbbSMark Ovens	a few days old), you should follow this procedure. With a
1765ba01eb20SWarner Losh	/usr/obj tree with a fresh buildworld,
1766282e0f01SRuslan Ermilov	make -DALWAYS_CHECK_MAKE buildkernel KERNCONF=YOUR_KERNEL_HERE
1767282e0f01SRuslan Ermilov	make -DALWAYS_CHECK_MAKE installkernel KERNCONF=YOUR_KERNEL_HERE
1768dc0dbf5cSWarner Losh
1769ba01eb20SWarner Losh	To just build a kernel when you know that it won't mess you up
1770ba01eb20SWarner Losh	--------------------------------------------------------------
17710fbd2da9SKen Smith	This assumes you are already running a 5.X system.  Replace
17720fbd2da9SKen Smith	${arch} with the architecture of your machine (e.g. "i386",
17730fbd2da9SKen Smith	"alpha", "amd64", "ia64", "pc98", "sparc64", etc).
17740fbd2da9SKen Smith
17750fbd2da9SKen Smith	cd src/sys/${arch}/conf
177647d0d01fSWarner Losh	config KERNEL_NAME_HERE
17770fbd2da9SKen Smith	cd ../compile/KERNEL_NAME_HERE
1778ba01eb20SWarner Losh	make depend
1779ba01eb20SWarner Losh	make
1780ba01eb20SWarner Losh	make install
1781ba01eb20SWarner Losh
1782ba01eb20SWarner Losh	If this fails, go to the "To build a kernel" section.
1783ba01eb20SWarner Losh
1784ba01eb20SWarner Losh	To rebuild everything and install it on the current system.
1785ba01eb20SWarner Losh	-----------------------------------------------------------
178663cb445eSWarner Losh	# Note: sometimes if you are running current you gotta do more than
178763cb445eSWarner Losh	# is listed here if you are upgrading from a really old current.
178863cb445eSWarner Losh
1789f643de42SWarner Losh	<make sure you have good level 0 dumps>
179063cb445eSWarner Losh	<maybe fix /etc/fstab>				[7]
179163cb445eSWarner Losh	make buildworld
17926586253aSWarner Losh	make kernel KERNCONF=YOUR_KERNEL_HERE
179363cb445eSWarner Losh							[1]
179463cb445eSWarner Losh	<reboot in single user>				[3]
17956586253aSWarner Losh	src/etc/rc.d/preseedrandom			[10]
179663cb445eSWarner Losh	mergemaster -p					[5]
179763cb445eSWarner Losh	make installworld
179863cb445eSWarner Losh	mergemaster					[4]
179963cb445eSWarner Losh	<reboot>
180063cb445eSWarner Losh
1801759f0aefSWarner Losh
1802f27b1fceSJoseph Koshy	To cross-install current onto a separate partition
1803f27b1fceSJoseph Koshy	--------------------------------------------------
1804f27b1fceSJoseph Koshy	# In this approach we use a separate partition to hold
1805f27b1fceSJoseph Koshy	# current's root, 'usr', and 'var' directories.   A partition
1806f27b1fceSJoseph Koshy	# holding "/", "/usr" and "/var" should be about 2GB in
1807f27b1fceSJoseph Koshy	# size.
1808f27b1fceSJoseph Koshy
1809f27b1fceSJoseph Koshy	<make sure you have good level 0 dumps>
1810f27b1fceSJoseph Koshy	<boot into -stable>
1811f27b1fceSJoseph Koshy	make buildworld
1812f27b1fceSJoseph Koshy	<maybe newfs current's root partition>
1813f27b1fceSJoseph Koshy	<mount current's root partition on directory ${CURRENT_ROOT}>
1814f27b1fceSJoseph Koshy	make installworld DESTDIR=${CURRENT_ROOT}
1815f27b1fceSJoseph Koshy	make buildkernel KERNCONF=YOUR_KERNEL_HERE
18166586253aSWarner Losh	cp src/sys/${ARCH}/conf/GENERIC.hints \
1817f27b1fceSJoseph Koshy		${CURRENT_ROOT}/boot/device.hints	# as needed
1818f27b1fceSJoseph Koshy	make installkernel KERNCONF=YOUR_KERNEL_HERE DESTDIR=${CURRENT_ROOT}
18196586253aSWarner Losh	cd src/etc; make distribution DESTDIR=${CURRENT_ROOT} # if newfs'd
1820f27b1fceSJoseph Koshy	cp /etc/fstab ${CURRENT_ROOT}/etc/fstab 		   # if newfs'd
1821f27b1fceSJoseph Koshy	<edit ${CURRENT_ROOT}/etc/fstab to mount "/" from the correct partition>
1822f27b1fceSJoseph Koshy	<reboot into current>
1823f27b1fceSJoseph Koshy	<do a "native" rebuild/install as described in the previous section>
18246586253aSWarner Losh	<maybe install compatibility libraries from src/lib/compat>
1825f27b1fceSJoseph Koshy 	<reboot>
1826f27b1fceSJoseph Koshy
1827f27b1fceSJoseph Koshy
1828f27b1fceSJoseph Koshy	To upgrade in-place from 4.x-stable to current
1829f27b1fceSJoseph Koshy	----------------------------------------------
18305c195f59SWarner Losh	# 5.x uses more space than 4.x.  Also, the location of kernel
1831e5dc5f61SWarner Losh	# modules has changed.  If you are installing 5.x onto a 4.x
18325c195f59SWarner Losh	# system, you'll need about 30MB of free disk space on your /
18335c195f59SWarner Losh	# partition.  If you have less than this, you may encounter difficult
1834ca22e652SJens Schweikhardt	# to back out of problems with this procedure.  If /tmp is on
1835f643de42SWarner Losh	# the / partition, you may want to completely remove all its content
1836f643de42SWarner Losh	# before upgrading, as this can be a common source of shortage of
1837f643de42SWarner Losh	# space on /.
1838f643de42SWarner Losh
1839f643de42SWarner Losh	<make sure you have good level 0 dumps>
1840fc8c157fSWarner Losh	<maybe fix /etc/fstab>				[7]
184121c075eaSWarner Losh	make buildworld					[9]
1842802fc49dSBrian Feldman	cp sys/${MACHINE}/conf/GENERIC.hints /boot/device.hints [2]
1843e5dc5f61SWarner Losh	make kernel KERNCONF=YOUR_KERNEL_HERE		[8]
1844802fc49dSBrian Feldman	cd sys/boot ; make STRIP="" install		[6]
1845fc8c157fSWarner Losh							[1]
1846fc8c157fSWarner Losh	<reboot in single user>				[3]
18476586253aSWarner Losh	src/etc/rc.d/preseedrandom			[10]
1848835284beSWarner Losh	mergemaster -p					[5]
1849f8a4c901SWarner Losh	rm -rf /usr/include/g++
1850ba26da8eSWarner Losh	make installworld
1851802fc49dSBrian Feldman	mergemaster -i					[4]
1852ba26da8eSWarner Losh	<reboot>
1853ba26da8eSWarner Losh
1854fdb9f54dSWarner Losh	Make sure that you've read the UPDATING file to understand the
1855fdb9f54dSWarner Losh	tweaks to various things you need.  At this point in the life
1856fdb9f54dSWarner Losh	cycle of current, things change often and you are on your own
1857fdb9f54dSWarner Losh	to cope.  The defaults can also change, so please read ALL of
1858fdb9f54dSWarner Losh	the UPDATING entries.
1859ba26da8eSWarner Losh
18601dece4a9SWarner Losh	Also, if you are tracking -current, you must be subscribed to
18611dece4a9SWarner Losh	freebsd-current@freebsd.org.  Make sure that before you update
18621dece4a9SWarner Losh	your sources that you have read and understood all the recent
18631dece4a9SWarner Losh	messages there.  If in doubt, please track -stable which has
18641dece4a9SWarner Losh	much fewer pitfalls.
18651dece4a9SWarner Losh
1866134d2e86SWarner Losh	[1] If you have third party modules, such as vmware, you
1867134d2e86SWarner Losh	should disable them at this point so they don't crash your
1868134d2e86SWarner Losh	system on reboot.
1869134d2e86SWarner Losh
18709c1a7444SWarner Losh	[2] If you have legacy ISA devices, you may need to create
18719c1a7444SWarner Losh	your own device.hints to reflect your unique hardware
18729c1a7444SWarner Losh	configuration.
18739c1a7444SWarner Losh
1874ee6e1fc3SWarner Losh	[3] From the bootblocks, boot -s, and then do
1875ee6e1fc3SWarner Losh		fsck -p
1876ee6e1fc3SWarner Losh		mount -u /
1877ee6e1fc3SWarner Losh		mount -a
18786586253aSWarner Losh		cd src
187947d0d01fSWarner Losh		adjkerntz -i		# if CMOS is wall time
1880f6a0ef01SWarner Losh	Also, when doing a major release upgrade, it is required that
1881f6a0ef01SWarner Losh	you boot into single user mode to do the installworld.
188266986952SRuslan Ermilov	For the 4.x -> 5.x upgrade, you will also see many messages about
1883b705ae10SWarner Losh	needing to recompile your userland.  These are harmless and can
1884b705ae10SWarner Losh	be ignored while you proceed to the next step.
1885ee6e1fc3SWarner Losh
1886a6cd4f9dSWarner Losh	[4] Note: This step is non-optional.  Failure to do this step
1887a6cd4f9dSWarner Losh	can result in a significant reduction in the functionality of the
1888a6cd4f9dSWarner Losh	system.  Attempting to do it by hand is not recommended and those
1889a6cd4f9dSWarner Losh	that pursue this avenue should read this file carefully, as well
1890a6cd4f9dSWarner Losh	as the archives of freebsd-current and freebsd-hackers mailing lists
1891a6cd4f9dSWarner Losh	for potential gotchas.
1892a6cd4f9dSWarner Losh
1893835284beSWarner Losh	[5] Usually this step is a noop.  However, from time to time
1894835284beSWarner Losh	you may need to do this if you get unknown user in the following
1895835284beSWarner Losh	step.  It never hurts to do it all the time.  You may need to
1896835284beSWarner Losh	install a new mergemaster (cd src/usr.sbin/mergemaster && make
1897835284beSWarner Losh	install) after the buildworld before this step if you last updated
1898835284beSWarner Losh	from current before 20020224 or from -stable before 20020408.
1899835284beSWarner Losh
1900bd79cf40SWarner Losh	[6] 4.x boot loader can be used to boot a 5.x system, however
1901bd79cf40SWarner Losh	it is difficult to do that at best.  If you wish to try, then
1902bd79cf40SWarner Losh	you should interrupt the boot and at the ok prompt type:
1903bd79cf40SWarner Losh		ok unload
1904bd79cf40SWarner Losh		ok boot /boot/kernel/kernel
1905bd79cf40SWarner Losh	If this fails to work, you must install a new boot loader as
1906bd79cf40SWarner Losh	described here.
1907fc8c157fSWarner Losh
1908fc8c157fSWarner Losh	[7] Before you upgrade, please make sure that you are not using
1909e5dc5f61SWarner Losh	compatibility slices.  These are device names of the form /dev/ad0a
1910e5dc5f61SWarner Losh	without the actual slice name.  These will break with 5.x and newer.
1911fc8c157fSWarner Losh	You generally must update these entries to use the post FreeBSD
1912e5dc5f61SWarner Losh	2.x form of /dev/ad0s1a. i386 and pc98 are affected, while alpha
1913e5dc5f61SWarner Losh	is not.
1914fc8c157fSWarner Losh
1915c74fe6afSWarner Losh	[8] In order to have a kernel that can run the 4.x binaries
1916c74fe6afSWarner Losh	needed to do an installworld, you must include the COMPAT_FREEBSD4
1917c74fe6afSWarner Losh	option in your kernel.  Failure to do so may leave you with a system
1918c74fe6afSWarner Losh	that is hard to boot to recover.
1919c74fe6afSWarner Losh
1920e5dc5f61SWarner Losh	Make sure that you merge any new devices from GENERIC since the
1921e5dc5f61SWarner Losh	last time you updated your kernel config file.
1922e5dc5f61SWarner Losh
192321c075eaSWarner Losh	[9] When checking out sources, you must include the -P flag to have
1924e5dc5f61SWarner Losh	cvs prune empty directories.
1925e5dc5f61SWarner Losh
1926e5dc5f61SWarner Losh	If CPUTYPE is defined in your /etc/make.conf, make sure to use the
1927e5dc5f61SWarner Losh	"?=" instead of the "=" assignment operator, so that buildworld can
1928e5dc5f61SWarner Losh	override the CPUTYPE if it needs to.
1929e5dc5f61SWarner Losh
1930e5dc5f61SWarner Losh	MAKEOBJDIRPREFIX must be defined in an environment variable, and
1931e5dc5f61SWarner Losh	not on the command line, or in /etc/make.conf.  buildworld will
1932e5dc5f61SWarner Losh	warn if it is improperly defined.
1933e5dc5f61SWarner Losh
1934802fc49dSBrian Feldman	In case you would like to avoid installing new packages of everything,
1935802fc49dSBrian Feldman	you might want to uncomment the "COMPAT4X=	YES" entry, so that 4.x
193666986952SRuslan Ermilov	compatibility libraries are built which should allow you to continue
1937e5dc5f61SWarner Losh	using your existing software for a while.  Alternatively, you can
1938e5dc5f61SWarner Losh	install the misc/compat4x port.
19398633bbeaSBrooks Davis
19408633bbeaSBrooks Davis	[10] In order to create temporary files, /dev/random must be
19416586253aSWarner Losh	initialized by feeding data into it.  src/etc/rc.d/preseedrandom
19428633bbeaSBrooks Davis	takes care of this.
1943dc0dbf5cSWarner LoshFORMAT:
1944dc0dbf5cSWarner Losh
1945f699bbbbSMark OvensThis file contains a list, in reverse chronological order, of major
19461fc1a0dcSWarner Loshbreakages in tracking -current.  Not all things will be listed here,
1947f8ab1dd6SWarner Loshand it only starts on March 15, 2000.  Updating files can found in
1948f8ab1dd6SWarner Loshprevious releases if your system is older than this.
19491fc1a0dcSWarner Losh
1950e72fd46aSWarner LoshCopyright information:
1951e72fd46aSWarner Losh
1952e5dc5f61SWarner LoshCopyright 1998-2004 M. Warner Losh.  All Rights Reserved.
1953e72fd46aSWarner Losh
1954772730c7SWarner LoshRedistribution, publication, translation and use, with or without
1955772730c7SWarner Loshmodification, in full or in part, in any form or format of this
19569698f2c0SWarner Loshdocument are permitted without further permission from the author.
1957e72fd46aSWarner Losh
1958e72fd46aSWarner LoshTHIS DOCUMENT IS PROVIDED BY WARNER LOSH ``AS IS'' AND ANY EXPRESS OR
1959e72fd46aSWarner LoshIMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
1960e72fd46aSWarner LoshWARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
1961e72fd46aSWarner LoshDISCLAIMED.  IN NO EVENT SHALL WARNER LOSH BE LIABLE FOR ANY DIRECT,
1962e72fd46aSWarner LoshINDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
1963e72fd46aSWarner Losh(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
1964e72fd46aSWarner LoshSERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
1965e72fd46aSWarner LoshHOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
1966e72fd46aSWarner LoshSTRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
1967e72fd46aSWarner LoshIN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
1968e72fd46aSWarner LoshPOSSIBILITY OF SUCH DAMAGE.
1969e72fd46aSWarner Losh
1970e72fd46aSWarner LoshIf you find this document useful, and you want to, you may buy the
1971e72fd46aSWarner Loshauthor a beer.
1972e72fd46aSWarner Losh
197322306abcSWarner LoshContact Warner Losh if you have any questions about your use of
1974772730c7SWarner Loshthis document.
1975772730c7SWarner Losh
197697d92980SPeter Wemm$FreeBSD$
1977