xref: /freebsd/UPDATING (revision cfeb1f524d805624d183bf6c7c80b203d736abe0)
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
2685a8b887SKen Smith20041001:
2785a8b887SKen Smith	The following libraries had their version number bumped up:
2885a8b887SKen Smith		/lib/libm.so.2 -> libm.so.3
2985a8b887SKen Smith		/lib/libreadline.so.4 -> libreadline.so.5
3085a8b887SKen Smith		/usr/lib/libhistory.so.4 -> libhistory.so.5
3185a8b887SKen Smith		/usr/lib/libopie.so.2 -> libopie.so.3
3285a8b887SKen Smith		/usr/lib/libpcap.so.2 -> libpcap.so.3
3385a8b887SKen Smith	FreeBSD 4.10 versions of these libraries will be added to the
3485a8b887SKen Smith	compat4x collection.  If you expect to be able to run old 4.X
3585a8b887SKen Smith	executables you will need to remove the old versions of these
3685a8b887SKen Smith	libraries.  However note that any 5.X executables you have built
3785a8b887SKen Smith	will stop working once you remove those old libraries.  You should
3885a8b887SKen Smith	have all your ports/packages rebuilt before removing the old
3985a8b887SKen Smith	libraries.
4085a8b887SKen Smith
41893279a9SDag-Erling Smørgrav	As a temporary measure, if you do not have any 4.X executables,
42893279a9SDag-Erling Smørgrav	you can add the following lines to /etc/libmap.conf to force
43893279a9SDag-Erling Smørgrav	5.X executables to use the new libraries:
44893279a9SDag-Erling Smørgrav
45893279a9SDag-Erling Smørgrav		libhistory.so.4		libhistory.so.5
46893279a9SDag-Erling Smørgrav		libm.so.2		libm.so.3
47893279a9SDag-Erling Smørgrav		libopie.so.2		libopie.so.3
48893279a9SDag-Erling Smørgrav		libpcap.so.2		libpcap.so.3
49893279a9SDag-Erling Smørgrav		libreadline.so.4	libreadline.so.5
50893279a9SDag-Erling Smørgrav
51d6a8d588SMax Laier20040929:
52d6a8d588SMax Laier	The pfil API has gained an additional argument to pass an inpcb.
53d6a8d588SMax Laier	You should rebuild all pfil consuming modules: ipfw, ipfilter
54d6a8d588SMax Laier	and pf.
55d6a8d588SMax Laier
568f1bb389SDoug Barton20040928:
57cfeb1f52SDoug Barton	If named is enabled, the default is now to run it in a chroot
588f1bb389SDoug Barton	"sandbox." For users with existing configurations in
598f1bb389SDoug Barton	/etc/namedb the migration should be simple. Upgrade your
608f1bb389SDoug Barton	world as usual, then after installworld but before
618f1bb389SDoug Barton	mergemaster do the following:
628f1bb389SDoug Barton
638f1bb389SDoug Barton	If named is running: /etc/rc.d/named stop
648f1bb389SDoug Barton	cd /etc
658f1bb389SDoug Barton	mv namedb namedb.bak
668f1bb389SDoug Barton	mkdir -p /var/named/etc/namedb
678f1bb389SDoug Barton	cp -Rp namedb.bak/* /var/named/etc/namedb/
688f1bb389SDoug Barton	mergemaster (with your usual options)
698f1bb389SDoug Barton	If using the generated localhost* files:
708f1bb389SDoug Barton		cd /var/named/etc/namedb
718f1bb389SDoug Barton		/bin/sh make-localhost
728f1bb389SDoug Barton		rm -f localhost-v6.rev localhost.rev
73cfeb1f52SDoug Barton	/etc/rc.d/syslogd restart
748f1bb389SDoug Barton	/etc/rc.d/named start
758f1bb389SDoug Barton
768f1bb389SDoug Barton	If you are using a custom configuration, or if you have
778f1bb389SDoug Barton	customised the named_* variables in /etc/rc.conf[.local]
788f1bb389SDoug Barton	then you may have to adjust the instructions accordingly.
798f1bb389SDoug Barton	It is suggested that you carefully examine the new named
808f1bb389SDoug Barton	variables in /etc/defaults/rc.conf and the options in
818f1bb389SDoug Barton	/var/named/etc/namedb/named.conf to see if they might
828f1bb389SDoug Barton	now be more suitable.
838f1bb389SDoug Barton
845d36721aSDoug Barton20040925:
855d36721aSDoug Barton	BIND 9 has been imported into the base, and is now fully
865d36721aSDoug Barton	functional. BIND 8 has now been removed. There are numerous
875d36721aSDoug Barton	differences between BIND 8 and 9, and users with critical
885d36721aSDoug Barton	named installations should read the migration documentation
895d36721aSDoug Barton	in /usr/share/doc/bind9/misc/migration. There is also a
905d36721aSDoug Barton	new instruction manual in /usr/share/doc/bind9/arm.
915d36721aSDoug Barton
925d36721aSDoug Barton	The key differences that most users will experience are in
935d36721aSDoug Barton	how picky BIND 9 is about zone file format. If you are using
945d36721aSDoug Barton	named as a resolving (caching) name server, you will likely
955d36721aSDoug Barton	not have trouble.
965d36721aSDoug Barton
97f50b1bdbSDoug Barton	The following files are part of the old BIND 8 installation
98f50b1bdbSDoug Barton	and should be removed:
99f50b1bdbSDoug Barton	/usr/bin/dnskeygen /usr/bin/dnsquery /usr/libexec/named-xfer
100f50b1bdbSDoug Barton	/usr/sbin/named.restart /usr/sbin/ndc
101f50b1bdbSDoug Barton
102f50b1bdbSDoug Barton	The following files have moved to /usr/bin, and should be
103f50b1bdbSDoug Barton	removed from their old locations:
104f50b1bdbSDoug Barton	/usr/sbin/nslookup /usr/sbin/nsupdate
105f50b1bdbSDoug Barton
106f5ee5a8bSMax Laier20040914:
107f5ee5a8bSMax Laier	The format of the pflogd(8) logfile "/var/log/pflog" has changed for
108f5ee5a8bSMax Laier	architectures that have a 64 bit long type to make it compatible to
109f5ee5a8bSMax Laier	the standard pcap format. In order to prevent corruption move away
110f5ee5a8bSMax Laier	any old logfile before using a new pflogd(8).
111f5ee5a8bSMax Laier
112d698cdb3SJohn-Mark Gurney20040906:
113d698cdb3SJohn-Mark Gurney	debug.witness_* has been renamed to debug.witness.*.  There are
114d698cdb3SJohn-Mark Gurney	compatibility tunables left in for a few days.  Update loader.conf
115d698cdb3SJohn-Mark Gurney	as necessary.
116d698cdb3SJohn-Mark Gurney
1174ff62bd9SBrooks Davis20040902:
1184ff62bd9SBrooks Davis	The ifi_epoch change has been reverted because the ABI breakage
1194ff62bd9SBrooks Davis	was too extensive.  If you are running with a kernel/userland
1204ff62bd9SBrooks Davis	containing the initial change (20040830), you should heed the
1214ff62bd9SBrooks Davis	warning about ifconfig incompatibility when upgrading again.
1224ff62bd9SBrooks Davis	With this change, 5.3 and 6.0 ifconfigs and kernels are once
1234ff62bd9SBrooks Davis	again interoperable.
1244ff62bd9SBrooks Davis
1251fc4519bSBrooks Davis20040830:
1261fc4519bSBrooks Davis	A new variable, ifi_epoch, has been added to struct if_data
1271fc4519bSBrooks Davis	which is part if struct ifnet.  This means all network drivers
1281fc4519bSBrooks Davis	and network monitoring applications need to be recompiled.
1291fc4519bSBrooks Davis
1303789fb75SBrooks Davis        WARNING WARNING WARNING WARNING WARNING WARNING WARNING
1313789fb75SBrooks Davis
1323789fb75SBrooks Davis        This also breaks ifconfig compatibility.  An old ifconfig will
1333789fb75SBrooks Davis        not work with the new kernel and a new ifconfig will not work
1343789fb75SBrooks Davis        with the old.  It is strongly recommended that you make a copy
1353789fb75SBrooks Davis        of your old ifconfig before installworld.  If you are installing
1363789fb75SBrooks Davis        remotely, you must copy over a new ifconfig before rebooting in
1373789fb75SBrooks Davis        to the new kernel.
1383789fb75SBrooks Davis
139c1c94d5cSRobert Watson20040828:
140c1c94d5cSRobert Watson	The default configuration for the network stack has been changed
141c1c94d5cSRobert Watson	such that it now runs without the Giant lock unless configured
142c1c94d5cSRobert Watson	otherwise.  If you experience network-related instability, you
143c1c94d5cSRobert Watson	may wish to try setting "debug.mpsafenet=0" or compiling the
144c1c94d5cSRobert Watson	kernel with "options NET_WITH_GIANT".  Details on the netperf
145c1c94d5cSRobert Watson	project may be found at:
146c1c94d5cSRobert Watson
147c1c94d5cSRobert Watson	    http://www.watson.org/~robert/freebsd/netperf/
148c1c94d5cSRobert Watson
149c1c94d5cSRobert Watson	Including the 20040828 announcement of configuration change
150c1c94d5cSRobert Watson	details.
151c1c94d5cSRobert Watson
152c21fd232SAndre Oppermann20040827:
153c21fd232SAndre Oppermann	PFIL_HOOKS are a fixed part of the network stack now and do not
154c21fd232SAndre Oppermann	need to be specified in the kernel configuration file anymore.
155c21fd232SAndre Oppermann
156f036d408SJulian Elischer20040819:
157f036d408SJulian Elischer	Netgraph changed its message format slightly to align the data
158f036d408SJulian Elischer	portion well on 64 bit machines.
159f036d408SJulian Elischer	Netgraph using utilities (e.g. ngctl, nghook, ppp, mpd,
160f036d408SJulian Elischer	pppoed, bluetooth, ATM) should be recompiled when a new kernel
161f036d408SJulian Elischer	is installed.
162f036d408SJulian Elischer
163b067abfaSAndre Oppermann20040817:
1640ce70eb4SAndre Oppermann	IPFW has been converted to use PFIL_HOOKS.  This change is
165b067abfaSAndre Oppermann	transparent to userland and preserves the ipfw ABI.  The ipfw
166b067abfaSAndre Oppermann	core packet inspection and filtering functions have not been
167b067abfaSAndre Oppermann	changed, only how ipfw is invoked is different.  Note that
168b067abfaSAndre Oppermann	"option PFIL_HOOKS" is required to use IPFIREWALL compiled
169b067abfaSAndre Oppermann	into the kernel or as KLD.
170b067abfaSAndre Oppermann
171f13a7951SDavid Malone20040814:
172f13a7951SDavid Malone	The RANDOM_IP_ID option has been replaced by the sysctl
173f13a7951SDavid Malone	net.inet.ip.random_id. If you had RANDOM_IP_ID in your kernel then
174f13a7951SDavid Malone	you may want to add "net.inet.ip.random_id=1" to /etc/sysctl.conf.
175f13a7951SDavid Malone
1763a004637SMax Laier20040807:
1773a004637SMax Laier	The size of 'struct ifnet' has changed due to the addition of the
1783a004637SMax Laier	if_carp placeholder.  All kernel modules implementing network
1793a004637SMax Laier	interfaces must be recompiled as a result.
1803a004637SMax Laier
1814f34d8d1SJohn-Mark Gurney20040806:
1824f34d8d1SJohn-Mark Gurney	Module loading has been fixed.  Some older installations will
183ac41c814SRuslan Ermilov	drop proper module_path initialization and modules will fail to
1844f34d8d1SJohn-Mark Gurney	load properly.  If you have a line in /boot/loader.rc that says:
1854f34d8d1SJohn-Mark Gurney	"initialize drop", do (i386 only):
1864f34d8d1SJohn-Mark Gurney		cp /usr/src/sys/boot/i386/loader/loader.rc /boot/loader.rc
1874f34d8d1SJohn-Mark Gurney		chown root:wheel /boot/loader.rc
1884f34d8d1SJohn-Mark Gurney		chmod 444 /boot/loader.rc
1894f34d8d1SJohn-Mark Gurney
1908f075db4SMark Murray20040802:
1918f075db4SMark Murray	making /dev/(null|zero) into a module proved to be too unpopular,
1928f075db4SMark Murray	so this bit has been revoked from the previous (20040801) entry.
1938f075db4SMark Murray
194d064d6dbSMark Murray20040801:
195d064d6dbSMark Murray	The /dev/mem, /dev/io /dev/(null/zero) devices are now modules,
196d064d6dbSMark Murray	so you may wish to add them to your kernel config file. See
197d064d6dbSMark Murray	GENERIC for examples.
198d064d6dbSMark Murray
199b289983eSAlexander Kabaev20040728:
20054bd5271SAlexander Kabaev	System compiler has been upgraded to GCC 3.4.2-pre. As with any major
20154bd5271SAlexander Kabaev	compiler upgrade, there are several issues to be aware of. GCC 3.4.x
20254bd5271SAlexander Kabaev	has broken C++ ABI compatibility with previous releases yet again
20354bd5271SAlexander Kabaev	and users will have to rebuild all their C++ programs with the new
204d0e54ab4SDavid E. O'Brien	compiler. If you are getting run-time error such as
205d0e54ab4SDavid E. O'Brien	/libexec/ld-elf.so.1: Undefined symbol "_ZNSs20_S_empty_rep_storageE"
206d0e54ab4SDavid E. O'Brien	This entry does apply to you.
207d0e54ab4SDavid E. O'Brien
208d0e54ab4SDavid E. O'Brien	A new unit-at-a-time optimization mode, which is default in this
209d0e54ab4SDavid E. O'Brien	compiler release, is more aggressive in removing unused static
210d0e54ab4SDavid E. O'Brien	symbols. This is the likely cause of 'make buildworld' breakages
211cd5f061cSWarner Losh	with non-default CFLAGS where optimization level is set to -O2
212cd5f061cSWarner Losh	or higher.
21354bd5271SAlexander Kabaev
2146e1afae3SWarner Losh	With the upgrade of the system compiler, the kernel has been upgraded
2156e1afae3SWarner Losh	to match the new system compiler.  This makes it impossible to build
2166e1afae3SWarner Losh	a new kernel with the old compiler.  Upgrade your system via
2176e1afae3SWarner Losh	make buildworld and make kernel (see below) to fix this problem.
2186e1afae3SWarner Losh
21936ed21e6SRobert Watson20040727:
22036ed21e6SRobert Watson	The size of 'struct ifnet' has changed due to the addition of
22136ed21e6SRobert Watson	the IFF_NEEDSGIANT flag (and what it implies).  All kernel
22236ed21e6SRobert Watson	modules implementing network interfaces must be recompiled as
22336ed21e6SRobert Watson	a result.
22436ed21e6SRobert Watson
2256305ac24SSeigo Tanimura20040716:
2266305ac24SSeigo Tanimura	The sound device drivers are renamed.  `sound' is always required,
2276305ac24SSeigo Tanimura	while `snd_*' should be configured accordingly to your hardware.
2286305ac24SSeigo Tanimura	Refer to NOTES for the detail of the drivers.
2296305ac24SSeigo Tanimura
230e623dcb7SMarcel Moolenaar20040710:
231e623dcb7SMarcel Moolenaar	__FreeBSD_version bumped to 502122.
232e623dcb7SMarcel Moolenaar
233e623dcb7SMarcel Moolenaar20040710:
234e623dcb7SMarcel Moolenaar	The console initialization on Alpha has been reworked and is now
235e623dcb7SMarcel Moolenaar	identical to other platforms. This means that the hardcoding of
236e623dcb7SMarcel Moolenaar	the serial console and the debug port has been removed. As such,
237e623dcb7SMarcel Moolenaar	hints are now required for the sio(4) driver to become a console
238e623dcb7SMarcel Moolenaar	or debug port. The NO_SIO option has been decommissioned because
239e623dcb7SMarcel Moolenaar	of this.
240e623dcb7SMarcel Moolenaar
241e623dcb7SMarcel Moolenaar20040710:
242e623dcb7SMarcel Moolenaar	A revamp of the debugging code in the kernel with some visible
243e623dcb7SMarcel Moolenaar	changes beyond just the debugging experience:
244e623dcb7SMarcel Moolenaar	o  The DDB option is now specific to the DDB debugger backend
245e623dcb7SMarcel Moolenaar	   and should not be used any more for conditional compilation
246e623dcb7SMarcel Moolenaar	   of debugging code for when debugging is enabled. Use the KDB
247e623dcb7SMarcel Moolenaar	   option for this.
248e623dcb7SMarcel Moolenaar	o  The WITNESS_DDB, DDB_TRACE and DDB_UNATTENDED options have
249e623dcb7SMarcel Moolenaar	   been renamed to WITNESS_KDB, KDB_TRACE and KDB_UNATTENDED
250e623dcb7SMarcel Moolenaar	   respectively. This is in line with the first bullet.
251e623dcb7SMarcel Moolenaar	o  The remote GDB support has been untangled from DDB and needs
2525bd7ce0aSJens Schweikhardt	   to be enabled separately now. Use the GDB option for this.
253e623dcb7SMarcel Moolenaar	o  The GDB_REMOTE_CHAT option has been removed. Support for this
254e623dcb7SMarcel Moolenaar	   homegrown feature is discontinued. The GDB remote protocol
255e623dcb7SMarcel Moolenaar	   supports console output and it makes sense to use that.
256e623dcb7SMarcel Moolenaar	o  The DDB_NOKLDSYM option has been removed. The DDB debugger
257e623dcb7SMarcel Moolenaar	   now supports both direct symbol table lookups as well as KLD
258e623dcb7SMarcel Moolenaar	   symbol lookups through the linker.
259e623dcb7SMarcel Moolenaar
2606421d1dbSMaksim Yevmenkin20040708:
2616421d1dbSMaksim Yevmenkin	Bluetooth code has been marked as non-i386 specific.
2626421d1dbSMaksim Yevmenkin	__FreeBSD_version has been bumped to 502121 to mark this change.
2636421d1dbSMaksim Yevmenkin
26458af3216SWarner Losh20040702:
26558af3216SWarner Losh	The native preemption has been added to the kernel scheduler.
2665bd7ce0aSJens Schweikhardt	There is some report that the ULE scheduler was broken in some
2675bd7ce0aSJens Schweikhardt	machines and we encourage users using the ULE scheduler either
2685bd7ce0aSJens Schweikhardt	stick with a known good kernel, or temporarily switch to the 4BSD
26958af3216SWarner Losh	scheduler as a workaround.
27058af3216SWarner Losh
271c2dba668SNate Lawson20040630:
2728ed370fdSJulian Elischer	The netgraph ABI version number has been incremented to indicate
2738ed370fdSJulian Elischer	an incompatible change in the ABI. Old netgraph nodes will refuse
274a6c26e1cSBruce M Simpson	to attach until recompiled. Netgraph now uses mbuf tags to move
275a6c26e1cSBruce M Simpson	metadata and this commit removes its home-grown metadata facility.
276a6c26e1cSBruce M Simpson	Nodes should just recompile, unless they use metadata, in which
277a6c26e1cSBruce M Simpson	case the changes are simple; the file ng_ksocket.c serves as an
278a6c26e1cSBruce M Simpson	example of such changes.
2798ed370fdSJulian Elischer
28058af3216SWarner Losh	This also broke i4b, although the compile problem has been papered
28158af3216SWarner Losh	over.
28258af3216SWarner Losh
2838ed370fdSJulian Elischer20040630:
284c2dba668SNate Lawson	ACPI has been updated to disable known-bad BIOS revisions.  A message
2855bd7ce0aSJens Schweikhardt	will be printed on the console indicating that ACPI has been disabled
286c2dba668SNate Lawson	automatically and that the user should use a newer BIOS, if possible.
287c2dba668SNate Lawson	If you think ACPI does work on your system and want to override
288c2dba668SNate Lawson	this (i.e., for testing), set hint.acpi.0.disabled="0" at the
289c2dba668SNate Lawson	loader prompt.
290c2dba668SNate Lawson
2918ee2ac9eSMax Laier20040623:
2925bd7ce0aSJens Schweikhardt	pf was updated to OpenBSD-stable 3.5 and pflogd(8) is privilege
2938ee2ac9eSMax Laier	separated now. It uses the newly created "_pflogd" user/group
2948ee2ac9eSMax Laier	combination. If you plan to use pflogd(8) make sure to run
2958ee2ac9eSMax Laier	mergemaster -p or install the "_pflogd" user and group manually.
2968ee2ac9eSMax Laier
2973db5687dSBrooks Davis20040622:
2983db5687dSBrooks Davis	Network interface cloning has been overhauled.  This change will
2993db5687dSBrooks Davis	require a recompile of modules using cloning and modification of
3003db5687dSBrooks Davis	external ones to the new API.  __FreeBSD_version has been bumped
3013db5687dSBrooks Davis	to 502119 to mark this change.  Additionally, users creating
3023db5687dSBrooks Davis	stf(4) interfaces via "ifconfig stf" will need to update their
3033db5687dSBrooks Davis	scripts as this will create an interface named "stf" instead of
3043db5687dSBrooks Davis	"stf0" and ifconfig will not print "stf0" to stdout.
3053db5687dSBrooks Davis
306e0ae81f3SDag-Erling Smørgrav20040621:
307e0ae81f3SDag-Erling Smørgrav	On 20040524, the /etc/rc.d/nsswitch script was modified to
308e0ae81f3SDag-Erling Smørgrav	automatically create /etc/nsswitch.conf on startup if it did
309e0ae81f3SDag-Erling Smørgrav	not already exist.  Unfortunately, an error in the man page
310e0ae81f3SDag-Erling Smørgrav	was carried over to the script, resulting in incorrect
311e0ae81f3SDag-Erling Smørgrav	nsswitch settings.  The simplest remedy is to remove both
312e0ae81f3SDag-Erling Smørgrav	/etc/nsswitch.conf and /etc/host.conf; they will be recreated
313e0ae81f3SDag-Erling Smørgrav	during the next reboot.
314e0ae81f3SDag-Erling Smørgrav
3154717d22aSJohn Polstra20040614:
3164717d22aSJohn Polstra	The return value of sema_timedwait(9) has been changed to
3174717d22aSJohn Polstra	make it consistent with cv_timedwait(9).  Be sure to recompile
3184717d22aSJohn Polstra	the ips module and any third-party modules which call
3194717d22aSJohn Polstra	sema_timedwait.
3204717d22aSJohn Polstra
3216cb7a382SMax Laier20040613:
3226cb7a382SMax Laier	ALTQ is now linked to the build. This breaks ABI for struct ifnet.
3236cb7a382SMax Laier	Make sure to recompile modules and any userland that makes use of
324df843493SMax Laier	sizeof(struct ifnet). In order to get the altq headers in place
325df843493SMax Laier	please recompile and reinstall world.
3266cb7a382SMax Laier
3272454685eSJulian Elischer20040607:
3282454685eSJulian Elischer	Splitting kern_thread.c into 2 files (adding kern_kse.c)
3292454685eSJulian Elischer	requires that you re-run config after updating your tree.
3302454685eSJulian Elischer
33164fef830SSeigo Tanimura20040601:
33264fef830SSeigo Tanimura	The MIDI drivers have been removed. Until the new module-friendly
33364fef830SSeigo Tanimura	ones are merged, remove or comment out midi and seq from your
33464fef830SSeigo Tanimura	kernel configuration.
33564fef830SSeigo Tanimura
336bb4f06e7SAndre Oppermann20040423:
337bb4f06e7SAndre Oppermann	Due to a new option in ipfw (versrcreach) the ipfw(8) command
338bb4f06e7SAndre Oppermann	needs to be recompiled.  Normal accept/reject rules without
339bb4f06e7SAndre Oppermann	options are not affected but those with options may break until
340bb4f06e7SAndre Oppermann	ipfw(8) is recompiled.
341bb4f06e7SAndre Oppermann
34205641e82SColin Percival20040420:
34305641e82SColin Percival	Due to changes in the callout ABI, kernels compiled after this
34405641e82SColin Percival	date may be incompatible with kernel modules compiled prior to
34505641e82SColin Percival	20040406.
34605641e82SColin Percival
347d0dc9183SWarner Losh20040414:
348d0dc9183SWarner Losh	The PCI bus power state stuff has been turned on.  If this causes
349d0dc9183SWarner Losh	problems for your system, please disable it using the tunable
350d0dc9183SWarner Losh	hw.pci.do_powerstate=0.
351d0dc9183SWarner Losh
352d0dc9183SWarner Losh20040412:
353d0dc9183SWarner Losh	The bulk of the pci problems have been fixed, although the floppy
354d0dc9183SWarner Losh	drive is still broken.
355d0dc9183SWarner Losh
356d0dc9183SWarner Losh20040410:
357d0dc9183SWarner Losh	A substantial update to the pci bus resource and power management
358d0dc9183SWarner Losh	have been committed.  Expect a bumpy ride for a few days until
359d0dc9183SWarner Losh	the unanticipated problems have been resolved.
360d0dc9183SWarner Losh
3618633bbeaSBrooks Davis20040409:
3628633bbeaSBrooks Davis        Due to changes in the the Yarrow initialization process,
3638633bbeaSBrooks Davis        /dev/random needs to be fed before operations requiring
3648633bbeaSBrooks Davis        temp files can succeed in single user mode.  This includes
3658633bbeaSBrooks Davis        running "make installworld". /dev/random may be fed by running
36676c3e0f7SBrooks Davis        "/etc/rc.d/initrandom start" or with 20040415 source by running
3678633bbeaSBrooks Davis        "/etc/rc.d/preseedrandom".
3688633bbeaSBrooks Davis
369d40d033aSRobert Watson20040322:
370d40d033aSRobert Watson	The debug.mpsafenet tunable controls whether the kernel Giant
371d40d033aSRobert Watson	lock is held across the lower levels of the network stack, and
372d40d033aSRobert Watson	by default is turned off.  In the few days following 20040322,
373d40d033aSRobert Watson	the behavior of debug.mpsafenet will change such that this
374d40d033aSRobert Watson	tunable controls Giant over all levels of the network stack.
375d40d033aSRobert Watson	If you are currently setting debug.mpsafenet to 1, you should
376d40d033aSRobert Watson	set it back to 0 (the default) again during the change-over.
377d40d033aSRobert Watson	An additional note will be added to UPDATING when sufficient
378d40d033aSRobert Watson	locking is merged to permit this to take place.
379d40d033aSRobert Watson
380ec9b318eSGarance A Drosehn20040310:
381ec9b318eSGarance A Drosehn	The FreeBSD/sparc64 platform is changing time_t from 32-bits to
382ec9b318eSGarance A Drosehn	64-bits.  This is a very major incompatible change, so people
383ec9b318eSGarance A Drosehn	using FreeBSD/sparc64 *must* read the UPDATING.64BTT file for
384ec9b318eSGarance A Drosehn	detailed instructions on how to make this upgrade.  People
385ec9b318eSGarance A Drosehn	upgrading FreeBSD on other platforms can ignore this event.
386ec9b318eSGarance A Drosehn
387fc28f1ffSMax Laier20040308:
388fc28f1ffSMax Laier	The packet filter (pf) is now installed with the base system. Make
389fc28f1ffSMax Laier	sure to run mergemaster -p before installworld to create required
3904c86458bSDavid E. O'Brien	user account ("proxy"). If you do not want to build pf with your
3914c86458bSDavid E. O'Brien	system you can use the NO_PF knob in make.conf.
392fc28f1ffSMax Laier	Also note that pf requires "options PFIL_HOOKS" in the kernel. The
393fc28f1ffSMax Laier	pf system consists of the following three devices:
394fc28f1ffSMax Laier	device		pf		# required
395fc28f1ffSMax Laier	device		pflog		# optional
396fc28f1ffSMax Laier	device		pfsync		# optional
397fc28f1ffSMax Laier
3983aff5d06SDag-Erling Smørgrav20040303:
3993aff5d06SDag-Erling Smørgrav	If you are having trouble with the libc_r -> libpthread transition
4003aff5d06SDag-Erling Smørgrav	(see the 20040130 entry), place the following lines at the top of
4013aff5d06SDag-Erling Smørgrav	/etc/libmap.conf:
4023aff5d06SDag-Erling Smørgrav
4033aff5d06SDag-Erling Smørgrav	libc_r.so.5		libpthread.so.1
4043aff5d06SDag-Erling Smørgrav	libc_r.so		libpthread.so
4053aff5d06SDag-Erling Smørgrav
4063aff5d06SDag-Erling Smørgrav	This will cause all programs and libraries linked against libc_r
4073aff5d06SDag-Erling Smørgrav	to use libpthread instead.
4083aff5d06SDag-Erling Smørgrav
409fd63c5b3SDag-Erling Smørgrav20040226:
4109d7f8c80SDag-Erling Smørgrav	Some sshd configuration defaults have changed: protocol version 1
411fd63c5b3SDag-Erling Smørgrav	is no longer enabled by default, and password authentication is
412fd63c5b3SDag-Erling Smørgrav	disabled by default if PAM is enabled (which it is by default).
413fd63c5b3SDag-Erling Smørgrav	OpenSSH clients should not be affected by this; other clients may
414fd63c5b3SDag-Erling Smørgrav	have to be reconfigured, upgraded or replaced.
415fd63c5b3SDag-Erling Smørgrav
416714ae42aSBruce M Simpson20040225:
417e07a40f3SBrian Feldman	The ABIs defined in <resolv.h> and <netdb.h> have been updated
418e07a40f3SBrian Feldman	to support improved reentrancy.  Multi-threaded programs that
419e07a40f3SBrian Feldman	reference the "_res" or "h_errno" symbols may experience some
420e07a40f3SBrian Feldman	problems if they are not recompiled.  Single-threaded programs
421e07a40f3SBrian Feldman	should remain unaffected.
422e07a40f3SBrian Feldman
423e07a40f3SBrian Feldman20040225:
424714ae42aSBruce M Simpson	routed has been updated in the base system from the vendor
425714ae42aSBruce M Simpson	sources, routed v2.27, from rhyolite.com. This change means that
426714ae42aSBruce M Simpson	for users who use RIP's MD5 authentication feature, FreeBSD
427714ae42aSBruce M Simpson	-CURRENT's routed is now incompatible with previous versions
428714ae42aSBruce M Simpson	of FreeBSD; however it is now compatible with implementations
429714ae42aSBruce M Simpson	from Sun, Cisco and other vendors.
430714ae42aSBruce M Simpson
431fbd2e692SAndre Oppermann20040224:
432fbd2e692SAndre Oppermann	The tcpcb structure has changed and makes a recompile of libkvm
4335bd7ce0aSJens Schweikhardt	and related userland network utilities necessary.
434fbd2e692SAndre Oppermann
435158b90daSWarner Losh20040222:
436158b90daSWarner Losh	The cdevsw structure has changed in two externally visible ways.
437158b90daSWarner Losh	First, the sense of the D_GIANT flag has changed to D_NEEDSGIANT.
438158b90daSWarner Losh	Second, the d_version field must be filled in with D_VERSION.
439158b90daSWarner Losh	Drivers outside the tree will need to be updated.
440158b90daSWarner Losh
441b7b1e150SMike Makonnen20040207:
442b7b1e150SMike Makonnen	The /etc/rc.d/ttys script has been removed. It is no longer
443b7b1e150SMike Makonnen	necessary since devfs has been mandatory for some time.
444b7b1e150SMike Makonnen
445aca89ee6SDaniel Eischen20040130:
446aca89ee6SDaniel Eischen	libkse has been renamed back to libpthread and is now the
447aca89ee6SDaniel Eischen	default threads library.  The gcc -pthread option has also
448aca89ee6SDaniel Eischen	been changed to link to libpthread instead of libc_r.  For
449aca89ee6SDaniel Eischen	alpha and sparc64 machines, libkse is not renamed and links
450aca89ee6SDaniel Eischen	are installed so that libpthread points to libc_r.  Until
451aca89ee6SDaniel Eischen	the ports system is updated to handle this change, it is
452aca89ee6SDaniel Eischen	recommended that folks install an /etc/libmap.conf(5) that
453aca89ee6SDaniel Eischen	maps libc_r to libpthread.  If you have any binaries or
454aca89ee6SDaniel Eischen	libraries linked to libkse, then it is also recommended
455aca89ee6SDaniel Eischen	that you map libkse to libpthread.  Anyone that is using
456aca89ee6SDaniel Eischen	nvidia supplied drivers and libraries should use a libmap.conf
457aca89ee6SDaniel Eischen	that maps libpthread to libc_r since their drivers/libraries
458aca89ee6SDaniel Eischen	do not work with libpthread.
459aca89ee6SDaniel Eischen
46068b7b3a9SAlex Dupre20040125:
46168b7b3a9SAlex Dupre	ULE has entered into its probationary period as the default scheduler
46268b7b3a9SAlex Dupre	in GENERIC.  For the average user, interactivity is reported to be
46368b7b3a9SAlex Dupre	better in many cases.  On SMP machines ULE will be able to make more
46468b7b3a9SAlex Dupre	efficient use of the available parallel resources.  If you are not
46568b7b3a9SAlex Dupre	running it now, please switch over, replacing the kernel option
46668b7b3a9SAlex Dupre	SCHED_4BSD with SCHED_ULE.
46768b7b3a9SAlex Dupre
468ff46e0deSWarner Losh20040125:
469ff46e0deSWarner Losh	Move LongRun support out of identcpu.c, where it hardly
470ff46e0deSWarner Losh	belongs, into its own file and make it opt-in, not mandatory,
471ff46e0deSWarner Losh	depending on CPU_ENABLE_LONGRUN config(8) option.
472ff46e0deSWarner Losh
473ce41f4bfSRobert Watson20031213:
474ce41f4bfSRobert Watson	src/lib/libc/gen/initgroups.c:1.8 now causes logins to fail
475ce41f4bfSRobert Watson	if the login process is unable to successfully set the
476ce41f4bfSRobert Watson	process credentials to include all groups defined for the
477ce41f4bfSRobert Watson	user.  The current kernel limit is 16 groups; administrators
478ce41f4bfSRobert Watson	may wish to check that users do not have over 16 groups
479ce41f4bfSRobert Watson	defined, or they will be unable to log in.
480ce41f4bfSRobert Watson
481c124fa05SJohn Baldwin20031203:
482c124fa05SJohn Baldwin	The ACPI module has been reactivated.  It is no longer required
483c124fa05SJohn Baldwin	to compile ACPI support into kernels statically.
484c124fa05SJohn Baldwin
4858ad1f5e4SHartmut Brandt20031112:
48630093b05SWarner Losh	The statfs structure has been updated with 64-bit fields to
48730093b05SWarner Losh	allow accurate reporting of multi-terabyte filesystem
48897209ca3SRobert Watson	sizes. You should build world, then build and boot the new kernel
48997209ca3SRobert Watson	BEFORE doing a `installworld' as the new kernel will know about
49097209ca3SRobert Watson	binaries using the old statfs structure, but an old kernel will
49197209ca3SRobert Watson	not know about the new system calls that support the new statfs
4923f631d52SMarcel Moolenaar	structure.
4933f631d52SMarcel Moolenaar	Note that the backwards compatibility is only present when the
4943f631d52SMarcel Moolenaar	kernel is configured with the COMPAT_FREEBSD4 option. Since
4953f631d52SMarcel Moolenaar	even /bin/sh will not run with a new kernel without said option
4963f631d52SMarcel Moolenaar	you're pretty much dead in the water without it. Make sure you
4973f631d52SMarcel Moolenaar	have COMPAT_FREEBSD4!
4983f631d52SMarcel Moolenaar	Running an old kernel after a `make world' will cause programs
4993f631d52SMarcel Moolenaar	such as `df' that do a statfs system call to fail with a bad
5003f631d52SMarcel Moolenaar	system call. Marco Wertejuk <wertejuk@mwcis.com> also reports
5013f631d52SMarcel Moolenaar	that cfsd (ports/security/cfs) needs to be recompiled after
5023f631d52SMarcel Moolenaar	these changes are installed.
50330093b05SWarner Losh
50430093b05SWarner Losh	****************************DANGER*******************************
50530093b05SWarner Losh
50630093b05SWarner Losh	DO NOT make installworld after the buildworld w/o building and
50730093b05SWarner Losh	installing a new kernel FIRST.  You will be unable to build a
50830093b05SWarner Losh	new kernel otherwise on a system with new binaries and an old
50930093b05SWarner Losh	kernel.
51064a18d6fSKirk McKusick
51164a18d6fSKirk McKusick20031112:
5128ad1f5e4SHartmut Brandt	Some netgraph string length constants have been changed. This
5138ad1f5e4SHartmut Brandt	change requires the netgraph kernel modules and all netgraph
5148ad1f5e4SHartmut Brandt	userland components to be in sync. Especially users who require
5158ad1f5e4SHartmut Brandt	netgraph to boot need to make sure to have world and kernel in
5168ad1f5e4SHartmut Brandt	sync before rebooting.
5178ad1f5e4SHartmut Brandt
518c53a5d8fSJohn Baldwin20031111:
519c53a5d8fSJohn Baldwin	Hyperthreading logical CPU's are no longer probed by default
520c53a5d8fSJohn Baldwin	when using the MP Table.  If ACPI is being used, then logical
521c53a5d8fSJohn Baldwin	CPUs will be probed if hyperthreading is enabled in the BIOS.
522c53a5d8fSJohn Baldwin	If ACPI is not being used and hyperthreading is enabled in the
523c53a5d8fSJohn Baldwin	BIOS, logical CPUs can be enabled by building a custom kernel
524c53a5d8fSJohn Baldwin	with the option MPTABLE_FORCE_HTT enabled.
525c53a5d8fSJohn Baldwin
5268bf455a5SJohn Baldwin20031103:
5278bf455a5SJohn Baldwin	The i386 APIC_IO kernel option has been replaced by
5288bf455a5SJohn Baldwin	'device apic'.  The ACPI module has also been temporarily
5292a2cfa95SCeri Davies	disabled, so ACPI must be statically compiled into your
5308bf455a5SJohn Baldwin	kernel using 'device acpi' if you wish to use the ACPI driver.
5318bf455a5SJohn Baldwin
5329bf40edeSBrooks Davis20031031:
5339bf40edeSBrooks Davis	The API and ABI of struct ifnet have been changed by removing
5349bf40edeSBrooks Davis	the if_name and if_unit members and replacing them with
5359bf40edeSBrooks Davis	if_xname, if_dname, and if_dunit.  All network drivers and most
5369bf40edeSBrooks Davis	userland programs which include net/if_var.h must be updated
5379bf40edeSBrooks Davis	and recompiled.  __FreeBSD_version has been bumped to 501113 to
5389bf40edeSBrooks Davis	reflect this change.
5399bf40edeSBrooks Davis
54047a42c7aSPoul-Henning Kamp20030928:
54147a42c7aSPoul-Henning Kamp	Changes to the cdevsw default functions have been made to remove
54247a42c7aSPoul-Henning Kamp	the need to specify nullopen() and nullclose() explicitly.
5435bd7ce0aSJens Schweikhardt	__FreeBSD_version bumped to 501110.
54447a42c7aSPoul-Henning Kamp
54507105342SMax Khon20030926:
54607105342SMax Khon	kiconv(3) has been added. mount_msdosfs(8), mount_ntfs(8) and
54707105342SMax Khon	mount_cd9660(8) need to be in sync with kernel.
54807105342SMax Khon
54917dcd026SSam Leffler20030925:
55017dcd026SSam Leffler	Configuring a system to use IPFILTER now requires that PFIL_HOOKS
55117dcd026SSam Leffler	also be explicitly configured.  Previously this dependency was
55217dcd026SSam Leffler	magically handled through some cruft in net/pfil.h; but that has
55317dcd026SSam Leffler	been removed.  Building a kernel with IPFILTER but not PFIL_HOOKS
55417dcd026SSam Leffler	will fail with obtuse errors in ip_fil.c.
55517dcd026SSam Leffler
556fedf1d01SBruce M Simpson20030923:
557fedf1d01SBruce M Simpson	Fix a bug in arplookup(), whereby a hostile party on a locally
558fedf1d01SBruce M Simpson	attached network could exhaust kernel memory, and cause a system
559fedf1d01SBruce M Simpson	panic, by sending a flood of spoofed ARP requests. See
560fedf1d01SBruce M Simpson	FreeBSD-SA-03:14.arp.
561fedf1d01SBruce M Simpson
562db38f9cbSJacques Vidrine20030915:
563db38f9cbSJacques Vidrine	A change to /etc/defaults/rc.conf now causes inetd to be started
564db38f9cbSJacques Vidrine	with `-C 60' if it is not overridden in /etc/rc.conf.  This
565db38f9cbSJacques Vidrine	causes inetd to stop accepting connections from an IP address
566db38f9cbSJacques Vidrine	that exceeds the rate of 60 connections per minute.
567db38f9cbSJacques Vidrine
568c09d2c2bSMike Makonnen20030829:
569c09d2c2bSMike Makonnen	The following rc.d scripts have been removed and should be
570c09d2c2bSMike Makonnen	deleted from your installation: atm2.sh atm3.sh devdb
571c09d2c2bSMike Makonnen	localdaemons network1 network2 network3. Depending on when
572c09d2c2bSMike Makonnen	you last updated world and used mergemaster(8) you may or
573c09d2c2bSMike Makonnen	may not have problems during the rc boot sequence. The simplest
574c09d2c2bSMike Makonnen	solution is an 'rm -rf /etc/rc.d/*' and then 'mergemaster -i'.
575c09d2c2bSMike Makonnen	The atm2.sh atm3.sh and devdb scripts were removed some time
576c09d2c2bSMike Makonnen	ago, so depending on when you installed -CURRENT these scripts
577c09d2c2bSMike Makonnen	may or may not exist on your system.
578c09d2c2bSMike Makonnen
57917c159dcSSøren Schmidt20030824:
58017c159dcSSøren Schmidt	ATAng has been committed. You need to build world as sys/ata.h
58117c159dcSSøren Schmidt	has changed, and userland atacontrol depends on it.
582f240812bSSøren Schmidt	If you use ATA SW raids you need "device ataraid" in your
583f240812bSSøren Schmidt	kernel config file, as it is no longer pulled in automatically.
58417c159dcSSøren Schmidt
585c1f61aa9SDavid E. O'Brien20030819:
586c1f61aa9SDavid E. O'Brien	The OFW_NEWPCI option has been turned on in the Sparc64 GENERIC kernel.
587c1f61aa9SDavid E. O'Brien	Among other things, this changes the device enumeration to be
588c1f61aa9SDavid E. O'Brien	closer to Solaris.  Be aware that, this can even cause the machine
589c1f61aa9SDavid E. O'Brien	to not boot without manual intervention before the fstab is adjusted.
59069f7bcf3SWarner Losh
59138c962e7SNate Lawson20030728:
59238c962e7SNate Lawson	All current USB and Firewire quirks in da(4) have been deprecated
59338c962e7SNate Lawson	and will be removed for 5.2.  If this causes failure for your
59438c962e7SNate Lawson	umass(4) devices, enable "options DA_OLD_QUIRKS" in your kernel
59538c962e7SNate Lawson	and send the output of "camcontrol inquiry da0" to scsi@freebsd.org
59638c962e7SNate Lawson	so the quirk can be re-enabled.
59738c962e7SNate Lawson
59874111097SWarner Losh20030724:
59974111097SWarner Losh	Problems with entry 20030714 have been corrected and no known issues
60074111097SWarner Losh	with /rescue and -j exist for host systems after this point in time.
60174111097SWarner Losh
602178cf4e9SWarner Losh20030722:
603178cf4e9SWarner Losh	FPU-less support has been removed from FreeBSD.  Chances are you won't
604178cf4e9SWarner Losh	notice.  386+387 support should still work after this change, but
605178cf4e9SWarner Losh	it is now a minimum requirement for the i386 port that you have real
606178cf4e9SWarner Losh	FPU hardware.
607178cf4e9SWarner Losh
608178cf4e9SWarner Losh20030714:
609178cf4e9SWarner Losh	Some people are having problems with changes related to /rescue.
610178cf4e9SWarner Losh	If you are building -j N, you will need to define NO_RESCUE.  Others
611178cf4e9SWarner Losh	will need to define it if /rescue has issues with their environment.
612178cf4e9SWarner Losh	People should report those issues to current@.
613178cf4e9SWarner Losh
614157c629aSWarner Losh20030711:
615157c629aSWarner Losh	gcc was upgraded to 3.3.  You are advised to not build -DNOCLEAN
6168b71efcaSCeri Davies	across this point.  Further, it might be a good idea to remove
61705538fa9SWarner Losh	/usr/obj.
618157c629aSWarner Losh
61974111097SWarner Losh20030610:
62074111097SWarner Losh	Remove deprecated locale names and transition period code
62174111097SWarner Losh	for them, finishing switching to the new scheme. Check your
62274111097SWarner Losh	LANG environment variable.
62374111097SWarner Losh
62474111097SWarner Losh20030609:
62574111097SWarner Losh	CCD has been changed to be a fully GEOMified class.  Kernel
62674111097SWarner Losh	and ccdconfig(8) needs to be in sync, this is particularly
62774111097SWarner Losh	important to remember beforehand if your source tree is on
62874111097SWarner Losh	a ccd device.  Consider making a copy of the old ccdconfig
62974111097SWarner Losh	into /boot/kernel.good or wherever you keep your backup
63074111097SWarner Losh	kernel.
63174111097SWarner Losh
63274111097SWarner Losh20030605:
6336cc6353fSMarcel Moolenaar	There was a small window in which sed(1) was broken.  If you
6346cc6353fSMarcel Moolenaar	happen to have sed(1) installed during that window, which is
6356cc6353fSMarcel Moolenaar	evidenced by an inability to build world with the failure
6366cc6353fSMarcel Moolenaar	given below, you need to manually build and install sed(1)
6376cc6353fSMarcel Moolenaar	(and only sed(1)) before doing anything else. This is a one-
6386cc6353fSMarcel Moolenaar	time snafu. Typical failure mode:
6396cc6353fSMarcel Moolenaar
6406cc6353fSMarcel Moolenaar	In file included from /usr/src/contrib/binutils/bfd/targets.c:1092:
6416cc6353fSMarcel Moolenaar	targmatch.h:7:1: null character(s) ignored
6426cc6353fSMarcel Moolenaar	targmatch.h:12:1: null character(s) ignored
6436cc6353fSMarcel Moolenaar	targmatch.h:16:1: null character(s) ignored
6446cc6353fSMarcel Moolenaar		:
6456cc6353fSMarcel Moolenaar
6466cc6353fSMarcel Moolenaar	The window of "sed(1)-uction" is from Wed Jun 4 15:31:55 2003 UTC
6476cc6353fSMarcel Moolenaar	to Thu Jun 5 12:10:19 2003 UTC (from rev 1.30 to rev 1.31 of
6486cc6353fSMarcel Moolenaar	usr.bin/sed/process.c).
6496cc6353fSMarcel Moolenaar
65052b47445SMark Murray20030505:
65152b47445SMark Murray	Kerberos 5 (Heimdal) is now built by default. Setting
65252b47445SMark Murray	MAKE_KERBEROS5 no longer has any effect. If you do NOT
65352b47445SMark Murray	want the "base" Kerberos 5, you need to set NO_KERBEROS.
65452b47445SMark Murray
655a26df538SWarner Losh20030502:
656a26df538SWarner Losh	groff has been updated.  If you try to do a buildworld and
657a26df538SWarner Losh	get an infinite loop in troff, update to May 4th or newer.  If you
658a26df538SWarner Losh	have a newer kernel than userland, you may need to set the OSRELDATE
659a26df538SWarner Losh	to 500110 in your environment before starting a buildworld.
660a26df538SWarner Losh
6614b065e2cSDoug Barton20030501:
6624b065e2cSDoug Barton	The old rc system has been removed.  Please report any problems
6634b065e2cSDoug Barton	to freebsd-rc@yahoogroups.com, and/or freebsd-current@freebsd.org.
6644b065e2cSDoug Barton	Your personal versions of these files will not be removed, so you can
6654b065e2cSDoug Barton	continue to use them. However, you should take great care when updating,
6664b065e2cSDoug Barton	especially when using mergemaster, since the compatibility code that
6674b065e2cSDoug Barton	utilizes these old scripts has also been removed.
6684b065e2cSDoug Barton
66981cda3d9SWarner Losh20030423:
67081cda3d9SWarner Losh	A bug has been fixed in /dev/devctl which would cause devd
67181cda3d9SWarner Losh	to hang on boot, were it not for a workaround in devd.  The
67281cda3d9SWarner Losh	work around in devd will be removed around 20030507.  You
67381cda3d9SWarner Losh	have until then to upgrade your kernel before updating
67481cda3d9SWarner Losh	userland.  In general, you should have a userland and
67581cda3d9SWarner Losh	kernel that's in sync with each other.  However, given the
67681cda3d9SWarner Losh	effects of this bug (hang on boot when starting devd), some
67781cda3d9SWarner Losh	allowances are made.
67881cda3d9SWarner Losh
67947a657d1SRuslan Ermilov20030329:
68047a657d1SRuslan Ermilov	Alphas with libc from between 20030312 and 20030329 exhibit
68147a657d1SRuslan Ermilov	floating point exceptions (FPEs), most notably in awk(1)
68247a657d1SRuslan Ermilov	while upgrading the system through a buildworld.
68347a657d1SRuslan Ermilov
68447a657d1SRuslan Ermilov	So, to successfully upgrade your Alpha, you must either
68547a657d1SRuslan Ermilov	downgrade your libc.so to a pre-20030312 version, or update
68647a657d1SRuslan Ermilov	/usr/share/mk/bsd.cpu.mk to revision 1.26 which adds -mieee
68747a657d1SRuslan Ermilov	to CFLAGS, then forcibly rebuild and install libc:
68847a657d1SRuslan Ermilov
68947a657d1SRuslan Ermilov	cd /usr/src/lib/libc && \
69047a657d1SRuslan Ermilov	    make cleandir && make obj && \
69147a657d1SRuslan Ermilov	    make -DNOMAN -DNOPROFILE all && \
69247a657d1SRuslan Ermilov	    make -DNOMAN -DNOPROFILE install
69347a657d1SRuslan Ermilov
6945d2af00cSGregory Neil Shapiro20030208:
6955d2af00cSGregory Neil Shapiro	sendmail 8.12.7 has been imported.  It has one important
6965d2af00cSGregory Neil Shapiro	change for IPv6 users.  The default submit.mc now uses
6975d2af00cSGregory Neil Shapiro	'[127.0.0.1]' instead of 'localhost' meaning only IPv4 is
6985d2af00cSGregory Neil Shapiro	used to connect to the MTA.  Users on IPv6-only machines
6995d2af00cSGregory Neil Shapiro	will need to edit /etc/mail/submit.mc appropriately.
7005d2af00cSGregory Neil Shapiro
7015d2af00cSGregory Neil Shapiro20030128:
7029db58771SPoul-Henning Kamp	NODEVFS option has been removed and DEVFS thereby made standard.
703ca22e652SJens Schweikhardt	This makes all references to MAKEDEV obsolete, and they should
7049db58771SPoul-Henning Kamp	be removed when convenient.
7059db58771SPoul-Henning Kamp
7068d9b3f57SJake Burkholder20030126:
7078d9b3f57SJake Burkholder	The name of the device for the ofw console has changed, sparc64 users
7088d9b3f57SJake Burkholder	must run mergemaster to update their installed /etc/ttys.
7098d9b3f57SJake Burkholder
7101c5efda5SJeff Roberson20030125:
7111c5efda5SJeff Roberson	The scheduler framework has grown a second scheduler and consequently
7121c5efda5SJeff Roberson	you must specify one and only one scheduler in your kernel config.
713ca22e652SJens Schweikhardt	The cvs config files have been updated to use the old scheduler
7141c5efda5SJeff Roberson	which may be selected via 'options SCHED_4BSD'.  If you would like
7151c5efda5SJeff Roberson	to try the new, much more experimental, scheduler please try
7161c5efda5SJeff Roberson	'options SCHED_ULE' and contribute to the arch@ discussion.
7171c5efda5SJeff Roberson
7189d1d64f5SWarner Losh20030115:
7199d1d64f5SWarner Losh	A new version of the wi driver has been imported into the tree.
7209d1d64f5SWarner Losh	One now must have device wlan in the config file for it to operate
7219d1d64f5SWarner Losh	properly.
7229d1d64f5SWarner Losh
723c9fdb80aSWarner Losh	In addition, there have been some changes to how wi devices are
724c9fdb80aSWarner Losh	configured for point to point links to bring it more in line
725c9fdb80aSWarner Losh	with the former way of doing things, as well as compatibility
726c9fdb80aSWarner Losh	with NetBSD.
727c9fdb80aSWarner Losh
728161dc364SAlexander Kabaev20021222:
729161dc364SAlexander Kabaev 	For a period after the GCC 3.2.1 import (from 12/04 to 12/22), GCC
730161dc364SAlexander Kabaev 	used an incompatible form of ABI for returning structures and unions
731161dc364SAlexander Kabaev 	which FreeBSD's GCC maintainers were not aware of relative to previous
732161dc364SAlexander Kabaev 	versions of FreeBSD.  We have gone back to the ABI for now, and any
733161dc364SAlexander Kabaev 	code compiled which is required to interoperate with other code (not
734161dc364SAlexander Kabaev 	built at the same time) returning structs or unions should be
73584cc83efSAlexander Kabaev	rebuilt.
736161dc364SAlexander Kabaev
737fb4c8061SMartin Blapp20021216:
738fb4c8061SMartin Blapp	A name change in /etc/netconfig has been reverted to stay
73989056245SJens Schweikhardt	compatible with suns TIRPC and also with NetBSD. You need
740fb4c8061SMartin Blapp	to run mergemaster after make world. A new libc does still work
7419d5abbddSJens Schweikhardt	with an outdated /etc/netconfig for some time, but you'll get
742fb4c8061SMartin Blapp	a warning. This warning will be removed in 20030301.
743fb4c8061SMartin Blapp
74417d47eb3SGiorgos Keramidas20021202:
74517d47eb3SGiorgos Keramidas	The recent binutils upgrade marks a kernel flag day on
74617d47eb3SGiorgos Keramidas	sparc64: modules built with the old binutils will not work
74717d47eb3SGiorgos Keramidas	with new kernels and vice versa. Mismatches will result in
74817d47eb3SGiorgos Keramidas	panics.  Make sure your kernel and modules are in sync.
74917d47eb3SGiorgos Keramidas
750a4459294SBill Fenner20021029:
751a4459294SBill Fenner	The value of IPPROTO_DIVERT has changed.  Make sure to keep
752a4459294SBill Fenner	your kernel, netstat, natd and any third-party DIVERT
753a4459294SBill Fenner	consumers in sync.
754a4459294SBill Fenner
755fc8c157fSWarner Losh20021024:
756c57404feSRuslan Ermilov	Old, compatibility slices have been removed in GEOM kernels.
757c57404feSRuslan Ermilov	This means that you will have to update your /etc/fstab to
758c57404feSRuslan Ermilov	not use disk devices of the form /dev/ad0a.  Instead, you
759c57404feSRuslan Ermilov	now must specify /dev/ad0s1a, or whatever slice your FreeBSD
760c57404feSRuslan Ermilov	partition really is on.  The old device names have gone
761c57404feSRuslan Ermilov	away, so if you use them anywhere else, you must also adjust
762c57404feSRuslan Ermilov	those uses.  (This doesn't affect the disks formatted in
763c57404feSRuslan Ermilov	the ``dangerously-dedicated'' mode.)
76469f7bcf3SWarner Losh
765fd9e8bdaSAndrew Gallatin20021023:
766fd9e8bdaSAndrew Gallatin	Alphas with kernels from between 20020830 and 20021023 and/or
767fd9e8bdaSAndrew Gallatin	rtld (ld-elf.so.1) older than 20021023 may experience problems
768fd9e8bdaSAndrew Gallatin	with groff while doing a buildworld (kernel: "out of memory",
769fd9e8bdaSAndrew Gallatin	fixed in rev 1.129 of kern/imgact_elf.c; rtld: "too few PT_LOAD
770fd9e8bdaSAndrew Gallatin	segments", fixed in rev 1.8 of libexec/rtld-elf/map_object.c).
771fd9e8bdaSAndrew Gallatin
772fd9e8bdaSAndrew Gallatin	So, to successfully upgrade your Alpha, you must either
773fd9e8bdaSAndrew Gallatin	upgrade your kernel and rtld first (which might be a bit
774fd9e8bdaSAndrew Gallatin	tricky), or avoid running the bootstrapped groff during the
775fd9e8bdaSAndrew Gallatin	"transitional" buildworld.  To avoid running groff during the
776fd9e8bdaSAndrew Gallatin	transitional upgrade run make buildworld with -DNOMAN,
777fd9e8bdaSAndrew Gallatin	-DNO_SHAREDOCS, and -DNO_LPR.
778fd9e8bdaSAndrew Gallatin
779f8a4c901SWarner Losh20020831:
780f8a4c901SWarner Losh	gcc has been upgraded to 3.2.  It is not all binary compatible
781f8a4c901SWarner Losh	with earlier versions of gcc for c++ programs.  All c++
782f8a4c901SWarner Losh	programs and libraries need to be recompiled.
783f8a4c901SWarner Losh
784f8a4c901SWarner Losh	Also, if you encounter g++ issues, rm /usr/include/g++/* before
785f8a4c901SWarner Losh	doing an installworld to make sure that stale files are removed.
786f8a4c901SWarner Losh
787c2248fa2SJens Schweikhardt20020827:
788c2248fa2SJens Schweikhardt	Our /etc/termcap now has all the entries from the XFree86 xterm
789c2248fa2SJens Schweikhardt	almost unchanged. This means xterm now supports color by default.
790c2248fa2SJens Schweikhardt	If you used TERM=xterm-color in the past you now should use
791c2248fa2SJens Schweikhardt	TERM=xterm. (xterm-color will lead to benign warnings).
792c2248fa2SJens Schweikhardt
7930d533e43SRuslan Ermilov20020815:
7940d533e43SRuslan Ermilov	A "bug" in gcc(1) that was hiding warning in system headers was
7950d533e43SRuslan Ermilov	fixed.  It's probably time to add -DNO_WERROR to your make line
7960d533e43SRuslan Ermilov	again.
7970d533e43SRuslan Ermilov
79833c1de7dSRuslan Ermilov20020729:
79933c1de7dSRuslan Ermilov	COPY is being deprecated.  The 20010530 change was reverted, as
80033c1de7dSRuslan Ermilov	it causes far more pain than was expected, and to always compare
80133c1de7dSRuslan Ermilov	before installing, please use INSTALL="install -C" again.  The
80233c1de7dSRuslan Ermilov	-C option is now silently ignored when used with the -d option.
80333c1de7dSRuslan Ermilov
8042b877facSJulian Elischer20020702:
8052b877facSJulian Elischer	Problems with libc_r clients like KDE and GNOME have been resolved.
8062b877facSJulian Elischer	There are still some minor problems with some signals but the
8072b877facSJulian Elischer	system is stable enough for general use again. SMP is less so than UP
8082b877facSJulian Elischer	but each can successfully complete multiple buildworlds.
8092b877facSJulian Elischer	Libkvm needs to be recompiled due to KSE.
8102b877facSJulian Elischer
81106596d37SWarner Losh20020701:
81206596d37SWarner Losh	Now would be a bad time to upgrade.  Something in or near the
81306596d37SWarner Losh	KSE commit totally broke programs using libc_r like KDE and
81406596d37SWarner Losh	GNOME.
81506596d37SWarner Losh
81695ba4330SJacques Vidrine20020511:
81795ba4330SJacques Vidrine	The k5su utility installed as part of Kerberos 5 is no longer
81895ba4330SJacques Vidrine	installed with the set-user-ID bit set by default.  Add
81995ba4330SJacques Vidrine	ENABLE_SUID_K5SU=yes to /etc/make.conf to have it installed
82095ba4330SJacques Vidrine	with the set-user-ID bit set.
82195ba4330SJacques Vidrine
822a81da3c9SDavid E. O'Brien20020510:
823f50caf6fSDavid E. O'Brien	Gcc 3.1 debugging format (cc -g) has changed from STABS to DWARF2.
824f50caf6fSDavid E. O'Brien	Unfortunately our native GDB (at version 4.18) does not understand
8254b683fb2SRobert Watson	the DWARF2 debugging format.  Thus you must use `gcc -gstabs+' to
826f50caf6fSDavid E. O'Brien	generated debugging information for our native GDB.
827f50caf6fSDavid E. O'Brien
828f50caf6fSDavid E. O'Brien20020510:
829a81da3c9SDavid E. O'Brien	Due to the way CVS works, it may not properly update src/contrib/gcc
830a81da3c9SDavid E. O'Brien	to the 3.1 sources.  The easiest fix is to `rm -rf' src/contrib/gcc
831a81da3c9SDavid E. O'Brien	and then do a cvs update.
832a81da3c9SDavid E. O'Brien
833528a0ef5SJacques Vidrine20020421:
834528a0ef5SJacques Vidrine	When exec'ing set[ug]id executables, the kernel now ensures that the
835528a0ef5SJacques Vidrine	stdio file descriptors (0..2) are open.  See FreeBSD-SA-02:23.stdio.
836528a0ef5SJacques Vidrine
83785aa5a2eSGregory Neil Shapiro20020404:
83885aa5a2eSGregory Neil Shapiro	New sendmail startup scripts have been installed to make it
83985aa5a2eSGregory Neil Shapiro	easier to use alternative MTAs with FreeBSD.  Setting the rc.conf
84085aa5a2eSGregory Neil Shapiro	variable sendmail_enable to "NO" no longer prevents any sendmail
84185aa5a2eSGregory Neil Shapiro	daemons from starting.  Instead, either set sendmail_enable to
84285aa5a2eSGregory Neil Shapiro	"NONE" or change mta_start_script to a script for starting
84385aa5a2eSGregory Neil Shapiro	an alternative MTA.  Setting mta_start_script to "" will
84485aa5a2eSGregory Neil Shapiro	also prevent any MTA from being started at boot.
84585aa5a2eSGregory Neil Shapiro
8468f1e4358SRuslan Ermilov20020403:
8478f1e4358SRuslan Ermilov	UCONSOLE is no longer a valid kernel option.
8488f1e4358SRuslan Ermilov
8492292c02eSWarner Losh20020315:
8502292c02eSWarner Losh	FreeBSD 5.0 DP-1 was basically branched today.
8512292c02eSWarner Losh
85269f7bcf3SWarner Losh20020225:
85369f7bcf3SWarner Losh	Warnings are now errors in the kernel.  Unless you are a developer,
85469f7bcf3SWarner Losh	you should add -DNO_WERROR to your make line.
85569f7bcf3SWarner Losh
8568f35c493SWarner Losh20020217:
8578f35c493SWarner Losh	sendmail 8.12.2 has been imported.  The sendmail binary is no
8588f35c493SWarner Losh	longer a set-user-ID root binary and the infrastructure to support
8598f35c493SWarner Losh	command line mail submission has changed.  Be sure to run
8608f35c493SWarner Losh	mergemaster (especially for updating /etc/rc, /etc/defaults/rc.conf,
8618f35c493SWarner Losh	and /etc/mail) and read /etc/mail/README for more details.
8628f35c493SWarner Losh
863835284beSWarner Losh	Due to the import of sendmail 8.12.2, a new user and group are
864835284beSWarner Losh	required in order for sendmail to run as a set-group-ID
865835284beSWarner Losh	binary.  A 'make installworld' will use the new user and group
866835284beSWarner Losh	to set the owner and group of /var/spool/clientmqueue and will
867835284beSWarner Losh	fail if the new user and group do not exist.  The 'smmsp' user
868835284beSWarner Losh	and group must be merged from src/etc/group and
869835284beSWarner Losh	src/etc/master.passwd before using 'make installworld'.
870835284beSWarner Losh	'mergemaster -p' will do this.  You may need to install
871835284beSWarner Losh	mergemaster before this will work if you are updating from a
872835284beSWarner Losh	very old version of current.  The updating recipe has changed
873835284beSWarner Losh	as of this date.
874835284beSWarner Losh
875fa9401c1SWarner Losh20020112:
876fa9401c1SWarner Losh	The preferred configuration method for PAM is now /etc/pam.d/
877fa9401c1SWarner Losh	rather than /etc/pam.conf.  If you have an unmodified
878fa9401c1SWarner Losh	pam.conf, just delete it after your next mergemaster run.  If
879fa9401c1SWarner Losh	you have local modifications, you can use
880fa9401c1SWarner Losh	/usr/src/etc/pam.d/convert.pl to incorporate them into your
881fa9401c1SWarner Losh	/etc/pam.d.
882fa9401c1SWarner Losh
883fa9401c1SWarner Losh	Please see the following url for more details:
884fa9401c1SWarner Loshhttp://www.freebsd.org/cgi/mid.cgi?db=mid&id=<xzp6667fyoa.fsf@flood.ping.uio.no>
88547d0d01fSWarner Losh20011229:
88647d0d01fSWarner Losh	If anyone here is already using the new rc.conf(5) variable
88747d0d01fSWarner Losh	networkfs_types, please note that it has changed
88847d0d01fSWarner Loshhttp://www.freebsd.org/cgi/mid.cgi?db=mid&id=<9744.1009655556@axl.seasidesoftware.co.za>
88947d0d01fSWarner Losh
890514318a8SWarner Losh20011220:
891514318a8SWarner Losh	sys/i4b/driver/i4b_ispppsubr.c has been retired.  This file
892514318a8SWarner Losh	started out its life in the ISDN4BSD project as an offspring
893514318a8SWarner Losh	from sys/net/if_spppsubr.c, which eventually got a life of its
894514318a8SWarner Losh	own.  All the accumulated features and bug fixes of the i4b
895514318a8SWarner Losh	version have now been merged back into the base system's
896514318a8SWarner Losh	version now.  The only user-visible change resulting from this
897514318a8SWarner Losh	is that i4b's sppp(4) interfaces are to be managed with
898514318a8SWarner Losh	spppcontrol(8) again, since ispppcontrol(8) has been retired
899514318a8SWarner Losh	as well.  (There has never been rc file support for
900514318a8SWarner Losh	ispppcontrol in -current, but only in -stable.  That will be
901514318a8SWarner Losh	reverted by the time the changes are MFCed.)
902514318a8SWarner Losh
903514318a8SWarner Losh20011215:
904514318a8SWarner Losh	The fdc(4) driver has been updated and now automatically
905514318a8SWarner Losh	recognizes media in `standard' formats (like 1440 KB and
906514318a8SWarner Losh	720 KB for a 3.5" high-density drive) when accessing the
907514318a8SWarner Losh	default device node (e. g. /dev/fd0).  The old variety of
908514318a8SWarner Losh	floppy device nodes /dev/fd*.* is no longer present by
909514318a8SWarner Losh	default, devices can be created (in DEVFS) on demand.  They
910514318a8SWarner Losh	will need to be customized then for `odd' densities using
911514318a8SWarner Losh	fdcontrol(8).
912514318a8SWarner Losh
9132d22e2bfSWarner Losh20011209:
9142d22e2bfSWarner Losh	The bugs in procfs' debugging support code have been fixed,
9152d22e2bfSWarner Losh	and truss(1) now works again.
9162d22e2bfSWarner Losh
9179e0428e2SWarner Losh20011207:
9189e0428e2SWarner Losh	Daily security checks have been split out to use the periodic(8)
9199e0428e2SWarner Losh	scripts.  Some change in configuration may be necessary.  Please
9209e0428e2SWarner Losh	see
9219e0428e2SWarner Loshhttp://www.freebsd.org/cgi/mid.cgi?db=mid&id=<20011207155805.R8975@blossom.cjclark.org>
9229e0428e2SWarner Losh	for details.
9239e0428e2SWarner Losh
9249bab8c59SWarner Losh20011204:
9259bab8c59SWarner Losh	sos added VCD/SVCD support to ata driver and that needs the
9269bab8c59SWarner Losh	kernel and burncd to be in sync.
9279bab8c59SWarner Losh
928e57d8b01SWarner Losh20011203:
929e57d8b01SWarner Losh	The procfs pseudo-filesystem has now been converted to use the
930e57d8b01SWarner Losh	pseudofs framework.  If you have 'options PROCFS' in your
931e57d8b01SWarner Losh	kernel config, you'll need to add 'options PSEUDOFS' if it's
932e57d8b01SWarner Losh	not there already.
933e57d8b01SWarner Losh
934e57d8b01SWarner Losh	This change temporarily breaks truss(1); use ktrace(1) instead
935e57d8b01SWarner Losh	until the issue has been resolved.
936e57d8b01SWarner Losh
937b001d36fSJacques Vidrine20011202:
938b001d36fSJacques Vidrine	A security hole in OpenSSH involving `UseLogin yes' has been
939b001d36fSJacques Vidrine	patched.
940b001d36fSJacques Vidrine
9414b676ec1SWarner Losh20011126:
9424b676ec1SWarner Losh	You need to remove /usr/obj/.../usr.bin/tip before rebuilding
9435ebbf43eSWarner Losh	after this date.  You need to do this only once.
9444b676ec1SWarner Losh
945d961e462SWarner Losh20011103:
946d961e462SWarner Losh	Most of the awk issues have been resolved.  Some rough
947d961e462SWarner Losh	edges may be left, but for the most part things should be
9484b676ec1SWarner Losh	back to "normal." For CURRENT's usual definition of "normal."
949d961e462SWarner Losh
950d961e462SWarner Losh20011030:
951d961e462SWarner Losh	Awk has been upgraded to the one true awk from bell labs.  Expect
952d961e462SWarner Losh	choppy waves in the upgrade process.
953d961e462SWarner Losh
9541fe003b6SWarner Losh20011030:
955a4b6fda0SWarner Losh	The asr driver problem has been resolved.
9561fe003b6SWarner Losh
9571fe003b6SWarner Losh20011027:
9581fe003b6SWarner Losh	Due to changes in other parts of the system, the asr driver
9591fe003b6SWarner Losh	now causes the system to panic on boot.  Do not use it pending
9601fe003b6SWarner Losh	correction.  Comment it out of any kernel config file that you
9611fe003b6SWarner Losh	try to use from this date forward.
9621fe003b6SWarner Losh
9631fe003b6SWarner Losh20011025:
9641fe003b6SWarner Losh	When crossbuilding, use TARGET=xxx where you used to use
9651fe003b6SWarner Losh	MACHINE=xxx.  You don't need to set TARGET_ARCH and TARGET,
9661fe003b6SWarner Losh	unless you are changing both of them.  To cross build pc98 on
9671fe003b6SWarner Losh	an alpha, for example, you need to set TARGET=pc98 and
9681fe003b6SWarner Losh	TARGET_ARCH=i386.
9691fe003b6SWarner Losh
970d05f9643SWarner Losh20011001:
971d05f9643SWarner Losh	The kernel interface that burncd depends on has changed.
972d05f9643SWarner Losh	You must recompile both the kernel and userland applications
973d05f9643SWarner Losh	at the same time.
974d05f9643SWarner Losh
97558970f85SWarner Losh20010929:
97658970f85SWarner Losh	When crossbuilding, please set TARGET_ARCH rather than
97758970f85SWarner Losh	MACHINE_ARCH to indicate the target.  In the future, one will
97858970f85SWarner Losh	set TARGET_MACHINE where you set MACHINE now.  At the moment,
97958970f85SWarner Losh	setting MACHINE alone for same MACHINE_ARCH machines works
9809d5abbddSJens Schweikhardt	(eg, you can build pc98 on an i386 machine and vice versa).
98158970f85SWarner Losh
98258970f85SWarner Losh20010927:
98358970f85SWarner Losh	Some weird problems result from using ACPI on some machines.
98458970f85SWarner Losh	To disable ACPI you can add
98566ff0e67SMax Khon		hint.acpi.0.disabled="1"
98658970f85SWarner Losh	to /boot/loader.conf (or by putting set X=Y at the boot
98758970f85SWarner Losh	loader "ok" prompt).
98858970f85SWarner Losh
98958970f85SWarner Losh	Alternatively, you can remove it from /boot/kernel/acpi.ko
99058970f85SWarner Losh	or use the MODULES_OVERRIDE function in your kernel config
99158970f85SWarner Losh	file and not list acpi in that list.
992378f4486SAlfred Perlstein
9935119d237SWarner Losh20010924:
9945119d237SWarner Losh	The buildworld has been fixed.  You may need to install
9955119d237SWarner Losh	the 4.x compatibility libraries for some old binaries
9968b039fffSWarner Losh	to work.  Add COMPAT4X=true to your /etc/make.conf to
9978b039fffSWarner Losh	get them installed on every installworld, or execute the
9988b039fffSWarner Losh	following to get them installed only once:
9998b039fffSWarner Losh		cd src/lib/compat/compat4x.<arch>
100058970f85SWarner Losh		make all install
10018b039fffSWarner Losh	You will see ``__stdoutp undefined'' until you do this.
10025119d237SWarner Losh
10033c293725SWarner Losh20010919:
10043c293725SWarner Losh	There's a bug in the world build process.  The cross-tools
10053c293725SWarner Losh	are build with the NEW headers, but the OLD libc.a.  This
10063c293725SWarner Losh	leads to all kinds of problems with the new libc.  A temporary
1007772730c7SWarner Losh	workaround is to add
10083c293725SWarner Losh		CFLAGS="-O -pipe -D_OLD_STDIO"
10093c293725SWarner Losh	before building world when upgrading from 4.x to current.  This
10103c293725SWarner Losh	can be removed afterwards.
10113c293725SWarner Losh
10123c293725SWarner Losh	A proper fix to the buildworld target is needed.
10133c293725SWarner Losh
10143c293725SWarner Losh20010918:
10153c293725SWarner Losh	Peter has committed his new kthread nfs client/server code.
10163c293725SWarner Losh	NFS may be unstable after this date.
10173c293725SWarner Losh
10183c293725SWarner Losh20010912:
10193c293725SWarner Losh	KSE has hit the tree.  Lots of things are now different in
10203c293725SWarner Losh	the kernel.  While a few problems were introduced in the
10213c293725SWarner Losh	initial commit, most of the major ones have been found and
10223c293725SWarner Losh	corrected.
10233c293725SWarner Losh
10243c293725SWarner Losh20010901:
10253c293725SWarner Losh	In OLDCARD, CardBus bridges appear to be stable.  The work
10263c293725SWarner Losh	arounds described in the 20010604 entry are now no longer
10273c293725SWarner Losh	necessary and will be ignored.  Most insert/remove problems
10283c293725SWarner Losh	have been rectified around this date.
10293c293725SWarner Losh
103098b17b95SWarner Losh20010823:
103198b17b95SWarner Losh 	named now runs as user bind and group bind rather than as
103298b17b95SWarner Losh 	root.  If named_enable is set to YES in /etc/rc.conf, ensure
103398b17b95SWarner Losh 	that user bind is available in /etc/passwd (using vipw(8))
103498b17b95SWarner Losh 	and that group bind is available in /etc/group.  Also make
103598b17b95SWarner Losh 	sure that user or group bind has read (and not write)
103698b17b95SWarner Losh 	permission for your name server configuration and that it
103798b17b95SWarner Losh 	has read and write permission for your slave zone files and
103898b17b95SWarner Losh 	directory.
103998b17b95SWarner Losh
104098b17b95SWarner Losh 	If you wish to continue to run named as root (a less secure
104198b17b95SWarner Losh 	alternative), add a line to /etc/rc.conf saying
104298b17b95SWarner Losh
104398b17b95SWarner Losh 		named_flags=
104498b17b95SWarner Losh
10457b9786edSMark Murray20010709:
10467b9786edSMark Murray	The PAM libraries have had an API upgrade that is beyond
10477b9786edSMark Murray	the ability of the shared library major number to handle.
10487b9786edSMark Murray	It is manifested by PAM-using ports dumping core. The
10497b9786edSMark Murray	solution is to rebuild those ports.
10507b9786edSMark Murray
10511d28950eSWarner Losh20010628:
10521d28950eSWarner Losh	The kernel compile module has moved from src/sys/compile/FOO
10531d28950eSWarner Losh	to src/sys/${MACHINE}/compile/FOO.
10541d28950eSWarner Losh
1055e72fd46aSWarner Losh20010625:
105698b17b95SWarner Losh	The pccard modem issue from 20010613 has been corrected.
105798b17b95SWarner Losh	OLDCARD support is still a little weak in -current.  slot 1 is
105898b17b95SWarner Losh	known not to work on some TI based cardbus bridges.  Some
105998b17b95SWarner Losh	cardbus bridges do not properly detect insert/removal events.
106098b17b95SWarner Losh	IRQ configuration needs more safety belts.
106116de1a07SWarner Losh
10620d415dffSWarner Losh20010617:
1063e72fd46aSWarner Losh	Softupdates problems have been corrected.
10640d415dffSWarner Losh
10650d415dffSWarner Losh20010614:
10660d415dffSWarner Losh	Peter ripped out the linkerset support.  You must, as always,
10670d415dffSWarner Losh	rerun config after you cvsup if you are using the traditional
10680d415dffSWarner Losh	kernel building methods.
10690d415dffSWarner Losh
10708b9959adSWarner Losh20010613:
10718b9959adSWarner Losh	pccard modems may not work with current after 20010604 date.  Some
10728b9959adSWarner Losh	do, others result in panics.  *MAKE*SURE* that you update your
1073e72fd46aSWarner Losh	config and /etc/rc.conf ala the 20010604 entry, or you will have
1074e72fd46aSWarner Losh	problems (this issue will be fixed, it just hasn't been yet).
10758b9959adSWarner Losh
1076e72fd46aSWarner Losh20010613:
10778b9959adSWarner Losh	SOFTUPDATES seem to be broken since the middle of May or so.  Do not
1078e72fd46aSWarner Losh	use them in current.  You can disable softupdates on all mounted
1079e72fd46aSWarner Losh	partitions, or remove SOFTUPDATES the kernel config file.
10808b9959adSWarner Losh
10810d415dffSWarner Losh20010612:
10820d415dffSWarner Losh	After Peter's commits to the hints code, people have been noticing
10830d415dffSWarner Losh	that certain devices are attached (or try to) twice.  This is due
10840d415dffSWarner Losh	to having both static hints as well as a /boot/device.hints.  To
10850d415dffSWarner Losh	work around this issue, please use only one or the other mechanism
10860d415dffSWarner Losh	until this bug is fixed.
10870d415dffSWarner Losh
1088e72fd46aSWarner Losh	Please note that a feature of config is that if you have config
1089e72fd46aSWarner Losh	file FOO and FOO.hints, it automatically adds FOO.hints to the
1090ca22e652SJens Schweikhardt	hints.c file, whether you want it to or not.
1091e72fd46aSWarner Losh
10920d415dffSWarner Losh20010610:
10930d415dffSWarner Losh	Locale names have changed to match other systems better.
10940d415dffSWarner Losh
10956ccdb5e4SWarner Losh20010604:
10966ccdb5e4SWarner Losh	pccard support for pci cards has been committed.  You must change
10976ccdb5e4SWarner Losh	your /etc/pccard.conf irq lines.  It must match the irq used by
10986ccdb5e4SWarner Losh	pcic device.  Interrupt storms may result if you fail to do this.
10993590182eSWarner Losh	Interrupt storms look a lot like a hang.
11003590182eSWarner Losh
11013590182eSWarner Losh	You must also install a new pccardd, otherwise you will get an
11023590182eSWarner Losh	interrupt storm at card reset time (just after it tells you what
11033590182eSWarner Losh	it is).
11043590182eSWarner Losh
11053590182eSWarner Losh	pccardd_flags="-I" is necessary for the time being.  It tells pccardd
11063590182eSWarner Losh	not to ask the kernel if the interrupt is really free or not before
11073590182eSWarner Losh	using it.  You can either change the /etc/pccard.conf irq lines to
11083590182eSWarner Losh	match pcic, or add "-i X" to the pccardd_flags.
11096ccdb5e4SWarner Losh
11100bc62786SWarner Losh20010530:
11110bc62786SWarner Losh	INSTALL=install -C is being deprecated.  If you want to do this,
11120bc62786SWarner Losh	use COPY=-C instead.  The former method will be supported for only
11130bc62786SWarner Losh	a limited time.  If you see
11140bc62786SWarner Losh
11150bc62786SWarner Loshinstall: warning: the -d and -C options may not be specified together
11160bc62786SWarner Losh
11170bc62786SWarner Losh	in your makeworld, then you need to migrate towards using
11180bc62786SWarner Losh	COPY=-C.
11190bc62786SWarner Losh
112068a38c6cSWarner Losh20010525:
1121b6609bbbSWarner Losh	It appears that vm is now stable enough to use again.  However,
1122c4f4a728SWarner Losh	there may be other problems, so caution is still urged.  alpha
1123c4f4a728SWarner Losh	definitely is in bad shape.
112468a38c6cSWarner Losh
1125ed0f29caSWarner Losh20010521:
1126ca22e652SJens Schweikhardt	Minor repo damage has happened.  This may cause problems
1127ed0f29caSWarner Losh	with cvsup of ports.  If you get errors, please see
1128ed0f29caSWarner Losh	http://www.FreeBSD.org/cgi/query-pr.cgi?pr=27495
1129ed0f29caSWarner Losh	at the bottom for details on a workaround.  The error message
1130ed0f29caSWarner Losh	is
1131ed0f29caSWarner LoshUpdater failed: Cannot delete "/usr/ports/www/jakarta-tomcat/files": Directory not empty
1132ed0f29caSWarner Losh
113380c16af9SWarner Losh20010520:
113468a38c6cSWarner Losh	Vm and/or swapping are busted on -current.  Please be patient.
113580c16af9SWarner Losh
113680c16af9SWarner Losh20010519:
113780c16af9SWarner Losh	pccard has had much reorganizational work done to it over
113880c16af9SWarner Losh	the past few days.  Everything should still work, but if
113980c16af9SWarner Losh	not, please contact imp@freebsd.org.
114080c16af9SWarner Losh
1141a45f2d05SWarner Losh20010517:
1142a45f2d05SWarner Losh	ata ioctl changed.  Make sure to recompile both kernel and
1143a45f2d05SWarner Losh	userland at the same time.
1144a45f2d05SWarner Losh
1145a45f2d05SWarner Losh20010517:
1146a45f2d05SWarner Losh	New ncurses imported.
1147a45f2d05SWarner Losh
11482988afcaSWarner Losh20010512:
11492988afcaSWarner Losh	DEVFS is now opt out, not opt in.  Barring major problems, this
11502988afcaSWarner Losh	will be the only way to go starting July 1.
11512988afcaSWarner Losh
11521a33dba7SWarner Losh20010504:
11531a33dba7SWarner Losh	OpenSSH has been updated to 2.9.  Some defaults are different,
11541a33dba7SWarner Losh	including RhostsRSAAuthentication, which changes from yes to no.
11551a33dba7SWarner Losh
115609946a51SWarner Losh20010502:
115709946a51SWarner Losh	Perl breakage in 20010501 was corrected at 14:18:33 PDT.
115809946a51SWarner Losh
115909946a51SWarner Losh20010501:
116009946a51SWarner Losh	Building perl was broken at 02:25:25 PDT.
116109946a51SWarner Losh
116209946a51SWarner Losh20010430:
1163a70a79adSWarner Losh	The bug in 20010429 was corrected at 07:35:37 PDT.  It is safe to
116409946a51SWarner Losh	go back in the water.
116509946a51SWarner Losh
116609946a51SWarner Losh20010429:
116709946a51SWarner Losh	A bad bug was committed at 04:48:42 PDT.  Don't use kernels after
116809946a51SWarner Losh	this date, but before the correction date.
116909946a51SWarner Losh
117091dd3b53SWarner Losh20010423:
117191dd3b53SWarner Losh	old fsck and new kernel interactions appear to have been fixed.
117291dd3b53SWarner Losh
117391dd3b53SWarner Losh20010411:
117491dd3b53SWarner Losh	fsck and the kernel were changed to handle some optimizations
117591dd3b53SWarner Losh	to directory layout.  This breaks backward compatibility.
117691dd3b53SWarner Losh	Update only if you understand that you must not use the old
117791dd3b53SWarner Losh	fsck with the new kernel ever.
117891dd3b53SWarner Losh
1179933b3269SWarner Losh20010330:
1180933b3269SWarner Losh	fsck has changed the meaning of the pass column in /etc/fstab.
1181c4e215d3SWarner Losh	Please see the cvs commit to fsck.8 or the fsck.8 man page for
1182933b3269SWarner Losh	details.  It is unclear if changes to /etc/fstab are necessary.
1183933b3269SWarner Losh
1184933b3269SWarner Losh20010319:
1185933b3269SWarner Losh	portmap had changed name to rpcbind for maximum POLA in your
1186933b3269SWarner Losh	current world.  /etc/hosts.{allow,deny} needs changes.  nfs and
1187933b3269SWarner Losh	other rpc based programs that rely on portmapper will not work
1188f34a9421SWarner Losh	without updates to /etc/hosts.{allow,deny} and /etc/netconfig.
118909946a51SWarner Losh
119009946a51SWarner Losh20010315:
119109946a51SWarner Losh	ata subsystem changes.  ATA_ENABLE_ATAPI_DMA, ATA_ENABLE_WC
1192ca22e652SJens Schweikhardt	and ATA_ENABLE_TAGS are no longer kernel options.  They have
119309946a51SWarner Losh	been replaced by tunables.  See ata.4 for details.
1194933b3269SWarner Losh
1195933b3269SWarner Losh20010312:
1196933b3269SWarner Losh	The fxp driver was converted to use miibus.  If you compile
1197933b3269SWarner Losh	fxp into your kernel statically, you will need to add miibus.
1198933b3269SWarner Losh
1199933b3269SWarner Losh20010312:
1200933b3269SWarner Losh	The wi device now defaults to BSS (infrastructure) mode
1201933b3269SWarner Losh	instead of ad-hoc.
1202933b3269SWarner Losh
1203933b3269SWarner Losh20010310:
1204f5260d32SWarner Losh	/dev/urandom should be a symbolic link to /dev/random now.
1205933b3269SWarner Losh	Users of current not using DEVFS need to run MAKEDEV std.
1206933b3269SWarner Losh	ssh might not work if you don't.
1207933b3269SWarner Losh
120862353691SWarner Losh20010303:
120962353691SWarner Losh	The ed driver has been updated.  It now allows mii attachments,
121062353691SWarner Losh	which means that you must include the miibus in your kernel if
121162353691SWarner Losh	you use the ed driver.
121262353691SWarner Losh
1213d325cf65SWarner Losh20010220:
1214d325cf65SWarner Losh	The problems with libc have been corrected.  It is now mostly
1215d325cf65SWarner Losh	safe to go back into the water.
1216d325cf65SWarner Losh
1217024daae6SWarner Losh20010211:
1218024daae6SWarner Losh	The size of FILE was changed.  This breaks upgrading.  If
1219024daae6SWarner Losh	you must upgrade, be prepared for pain.  It also breaks almost
1220024daae6SWarner Losh	all binaries that you've compiled on -current.  You are warned
1221024daae6SWarner Losh	that before upgrading would be a good time to do a level 0
1222024daae6SWarner Losh	dump of your system.  No, really, I mean it this time.
1223024daae6SWarner Losh
1224024daae6SWarner Losh	To get to the new system, you'll need to use the following
1225024daae6SWarner Losh	workaround.  Hopefully this can be sorted out so that we
1226024daae6SWarner Losh	don't have to move this to the updating section.
1227024daae6SWarner Losh
1228024daae6SWarner Losh	To get around the installworld problem, do:
1229024daae6SWarner Losh		# cd /usr/src/usr.bin/sed
1230024daae6SWarner Losh		# make install
1231024daae6SWarner Losh		# cd /usr/src
1232024daae6SWarner Losh		# make installworld
1233024daae6SWarner Losh	If that doesn't work, then try:
1234024daae6SWarner Losh		# make -k installworld
1235024daae6SWarner Losh		# make installworld
1236024daae6SWarner Losh
1237024daae6SWarner Losh20010207:
1238024daae6SWarner Losh	DEVFS is now the default.  If you use vinum, make sure that you
1239024daae6SWarner Losh	do not include devfs in your kernel as problems result.
1240024daae6SWarner Losh
1241024daae6SWarner Losh20010205:
12427595222aSWarner Losh	FFS_ROOT and CD9660_ROOT have been removed or deprecated.
1243024daae6SWarner Losh	Remove them from your config.
1244024daae6SWarner Losh
12451e159248SWarner Losh20010122:
12461e159248SWarner Losh	****************************** WARNING ******************************
12471e159248SWarner Losh			buildkernel has been changed slightly
12481e159248SWarner Losh	****************************** WARNING ******************************
12491e159248SWarner Losh	KERNCONF replaces the variable KERNEL for buildkernel.  You
12501e159248SWarner Losh	should update your scripts and make.conf accordingly.
12511e159248SWarner Losh
12521e159248SWarner Losh20010119:
12531e159248SWarner Losh	config has changed to allow DEV_FOO as a replacement for NFOO.
12541e159248SWarner Losh	This requires a new config to build correctly.
12551e159248SWarner Losh
1256aac7dfeaSWarner Losh20010116:
1257ca22e652SJens Schweikhardt	The kernel option I386_CPU is now mutually exclusive with the
1258aac7dfeaSWarner Losh	other cpu types. If you have an i386 system, be sure that it
1259aac7dfeaSWarner Losh	only had this line.  Remove it for all other configurations.
1260aac7dfeaSWarner Losh
1261aac7dfeaSWarner Losh20010110:
1262aac7dfeaSWarner Losh	Changes to the kernel require it and burncd be in sync.
1263aac7dfeaSWarner Losh
1264aac7dfeaSWarner Losh20010102:
1265aac7dfeaSWarner Losh	Everyone who has hw.sndunit set to something in
1266aac7dfeaSWarner Losh	/etc/sysctl.conf, it is now hw.snd.unit.
1267aac7dfeaSWarner Losh
126863c90c9eSWarner Losh20010101:
126963c90c9eSWarner Losh	ex and vi were broken by some changes to sys/queue.h.  If you
127063c90c9eSWarner Losh	have a bad vi, you will see make buildworld fail with a core
12715fd2a895SWarner Losh	dump while building termcap.  You can work around this problem
127263c90c9eSWarner Losh	by adding -k to your make buildworld.  This will cause the
127363c90c9eSWarner Losh	build to complete and install a new vi.  Once that's done, you
127463c90c9eSWarner Losh	can rebuild again without the -k to pick up anything that
127563c90c9eSWarner Losh	might have been ignored by the -k option.
127663c90c9eSWarner Losh
12775fd2a895SWarner Losh	Others have suggested that you can just rebuild libc if your
12785fd2a895SWarner Losh	vi/ex is dynamically linked, but I've not received any reports
12795fd2a895SWarner Losh	of this working.
12805fd2a895SWarner Losh
1281aac7dfeaSWarner Losh20001228:
1282aac7dfeaSWarner Losh	There have been some changes to libcrypt in -current.  The
1283ca22e652SJens Schweikhardt	libscrypt/libdescrypt symlink silliness is gone and the installed
1284aac7dfeaSWarner Losh	libcrypt is fully functional.  Be aware of this.
1285aac7dfeaSWarner Losh
1286de2bcc63SWarner Losh20001218:
1287de2bcc63SWarner Losh	Linksys Fast Ethernet PCCARD cards supported by the ed driver
1288de2bcc63SWarner Losh	now require the addition of flag 0x80000 to their config line
1289de2bcc63SWarner Losh	in pccard.conf(5).  This flag is not optional.  These Linksys
1290de2bcc63SWarner Losh	cards will not be recognized without it.
1291de2bcc63SWarner Losh
1292960773f7SWarner Losh20001205:
1293960773f7SWarner Losh	Important new FreeBSD-version stuff: PAM support has been worked
1294960773f7SWarner Losh	in, partially from the "Unix" OpenSSH version.  This requires
1295960773f7SWarner Losh	adding the following in pam.conf:
1296960773f7SWarner Losh
1297960773f7SWarner Losh	sshd    auth    sufficient      pam_skey.so
1298960773f7SWarner Losh	sshd    auth    required        pam_unix.so         try_first_pass
1299960773f7SWarner Losh	sshd    session required        pam_permit.so
1300960773f7SWarner Losh
13010acc635eSWarner Losh20001031:
13020acc635eSWarner Losh	cvs updated to 1.11.
13030acc635eSWarner Losh
13040acc635eSWarner Losh20001020:
13050acc635eSWarner Losh	The random device needs more entropy, so you need to make sure
13060acc635eSWarner Losh	that you've run mergemaster to get a /etc/rc which will seed
13070acc635eSWarner Losh	/dev/random.  If you don't and the system hangs after ldconfig,
13080acc635eSWarner Losh	then banging on the keyboard randomly until it unhangs is one
13090acc635eSWarner Losh	workaround.
13100acc635eSWarner Losh
13110acc635eSWarner Losh20001010:
13120acc635eSWarner Losh	****************************** WARNING ******************************
13130acc635eSWarner Losh				Sendmail has been updated.
13140acc635eSWarner Losh	****************************** WARNING ******************************
13150acc635eSWarner Losh	o mail.local(8) is no longer installed as a set-user-id binary.
13160acc635eSWarner Losh	o sendmail(8) is now built with STARTTLS support unless NO_OPENSSL
13170acc635eSWarner Losh	  is set.
13180acc635eSWarner Losh	o The default /etc/mail/sendmail.cf disables the SMTP EXPN and VRFY
13190acc635eSWarner Losh	  commands.
13200acc635eSWarner Losh	o Now using sendmail's version of vacation(1).
13210acc635eSWarner Losh	o The sendmail cf building tools (contrib/sendmail/cf) are installed
13220acc635eSWarner Losh	  in /usr/share/sendmail/cf.
13230acc635eSWarner Losh	o sendmail.cw changed to local-host-names
13240acc635eSWarner Losh
13250acc635eSWarner Losh	More details can be found at
13260acc635eSWarner Losh		http://people.freebsd.org/~imp/UPDATING/sendmail-20001010
13270acc635eSWarner Losh
13286e98a146SWarner Losh20001009:
13296e98a146SWarner Losh	The ports tree's new layout is in place.  Be sure to update
13306e98a146SWarner Losh	your entire ports tree, or you will have problems.
13316e98a146SWarner Losh
13326e98a146SWarner Losh20001006:
1333685294e7SMark Ovens	The perl build procedure no longer installs miniperl, nor uses
13346e98a146SWarner Losh	the installed miniperl.  It is recommended that you delete
13356e98a146SWarner Losh	/usr/bin/miniperl.
13366e98a146SWarner Losh
1337073113a4SWarner Losh20001005:
1338073113a4SWarner Losh	This weekend the ports tree will be updated to a new layout.
1339685294e7SMark Ovens	It will be in an inconsistent state until noted in the UPDATING
1340073113a4SWarner Losh	file, or with asami-san's message to the relevant mailing
1341073113a4SWarner Losh	lists.  With this new layout, you'll need to update the whole
1342073113a4SWarner Losh	tree for anything to work.
1343073113a4SWarner Losh
13440acc635eSWarner Losh20000928:
13450acc635eSWarner Losh	There was a change in the passwd format.  Need more information.
13460acc635eSWarner Losh
1347be3885b3SWarner Losh20000916:
1348be3885b3SWarner Losh	/boot/kernel/kernel.ko -> /boot/kernel/kernel change has taken
1349be3885b3SWarner Losh	place.  Please update boot loader (not the boot blocks) at the
1350be3885b3SWarner Losh	same time as your kernel.
1351be3885b3SWarner Losh
135276ec9675SWarner Losh20000914:
135376ec9675SWarner Losh	The new pmtimer device is necessary for laptops.  Failure to
135476ec9675SWarner Losh	include the device will cause suspended laptops losing time
135576ec9675SWarner Losh	when they resume.  Include
135676ec9675SWarner Losh		device		pmtimer
135776ec9675SWarner Losh	in your config file and
135801b9a434SWarner Losh		hint.pmtimer.0.at="isa"
135976ec9675SWarner Losh	to your /boot/device.hints file.
136076ec9675SWarner Losh
1361f4865386SMark Murray20000911:
1362f4865386SMark Murray	The random device has been turned into a (pseudo-)device,
1363f4865386SMark Murray	rather than an option. The supplied kernel config files have
1364f4865386SMark Murray	been updated. You will need to do something similar in your
1365f4865386SMark Murray	own kernel config file.
1366f4865386SMark Murray	Remove:
1367f4865386SMark Murray		options		RANDOMDEV
1368f4865386SMark Murray	Add:
1369f4865386SMark Murray		device		random
1370f4865386SMark Murray	If you prefer to load the loadable module, you need to do
1371f4865386SMark Murray	nothing.
1372f4865386SMark Murray
1373d594498fSWarner Losh20000909:
1374d594498fSWarner Losh	The random device module has been renamed from randomdev.ko to
1375d594498fSWarner Losh	random.ko. You will need to edit your /boot/loader.conf to
1376d594498fSWarner Losh	reflect this if you load this module at boot time.
1377d594498fSWarner Losh	The line should read:
1378d594498fSWarner Losh		random_load="YES"
1379d594498fSWarner Losh
13800deb7ddcSWarner Losh20000907:
13810deb7ddcSWarner Losh	The SMPNG commit has happened.  It should work, but if it
138216eb772dSWarner Losh	doesn't, fallback to the PRE_SMPNG CVS tag.  There are likely
138316eb772dSWarner Losh	to be a variety of minor issues.  Please see 20000905 to make
138416eb772dSWarner Losh	sure you don't have model loading problems which might at
138516eb772dSWarner Losh	first blush appear related to SMP.
138652bf24e7SWarner Losh
13875a01880bSWarner Losh20000906:
13885a01880bSWarner Losh	nsswitch has been imported from NetBSD.  Among other things,
13895a01880bSWarner Losh	this means that /etc/host.conf is no longer used.  See
13905a01880bSWarner Losh	nsswitch.conf(5) instead.  Note that at boot time rc.network
13915a01880bSWarner Losh	will attempt to produce a new nsswitch.conf file for you if you
13925a01880bSWarner Losh	don't have one, and you have host.conf.
13935a01880bSWarner Losh
13942b41163cSWarner Losh20000905:
139538d6ecd2SWarner Losh	The ucred structure changed size.  This breaks the interface
139638d6ecd2SWarner Losh	that mountd uses.  Trying to use an older mountd with a newer
139738d6ecd2SWarner Losh	kernel guarantees a panic.  This means that you need to use
139838d6ecd2SWarner Losh	kernels newer than today only with matching mountd, but you
139938d6ecd2SWarner Losh	needed to do that anyway with the boot loader changes.
140038d6ecd2SWarner Losh
140138d6ecd2SWarner Losh20000905:
14028aab4bc7SWarner Losh	The boot loader has been updated.  The new default kernel is
14038aab4bc7SWarner Losh	now /boot/kernel/kernel.ko.  The new default module location
14048aab4bc7SWarner Losh	is /boot/kernel.
14058aab4bc7SWarner Losh
14068aab4bc7SWarner Losh	You *MUST* upgrade your boot loader and kernel at the same time.
140738d6ecd2SWarner Losh	The easiest way to do this is to do the buildworld/buildkernel/
140838d6ecd2SWarner Losh	installkernel/installworld dance.
14092b41163cSWarner Losh
1410d594498fSWarner Losh	Furthermore, you are urged to delete your old /modules directory
1411d594498fSWarner Losh	before booting the new kernel, since kldload will find stale
1412d594498fSWarner Losh	modules in that directory instead of finding them in the correct
1413d594498fSWarner Losh	path, /boot/kernel.  The most common complaint that this cures
1414d594498fSWarner Losh	is that the linux module crashes your machine after the update.
1415d594498fSWarner Losh
1416d594498fSWarner Losh	if [ ! -d /boot/kernel.old ]; then
1417d594498fSWarner Losh		mv /modules.old /boot/kernel.old
1418d594498fSWarner Losh		chflags noschg /kernel.old
1419d594498fSWarner Losh		mv /kernel.old /boot/kernel.old/kernel.ko
1420d594498fSWarner Losh		chflags schg /boot/kernel.old/kernel.ko
1421d594498fSWarner Losh	fi
1422d594498fSWarner Losh
1423c22a309cSWarner Losh20000904:
1424c22a309cSWarner Losh	A new issue with the sendmail upgrade has come to light.
1425c22a309cSWarner Losh	/etc/aliases has moved to /etc/mail/aliases.  Mergemaster will
1426c22a309cSWarner Losh	incorrectly install the default aliases in /etc/mail rather than
1427c22a309cSWarner Losh	move the old one from /etc.  So you'll need to manually move the
1428c22a309cSWarner Losh	file, create a symbolic link, remove the old /etc/aliases.db and
1429c22a309cSWarner Losh	run newaliases.  For safety sake, you should stop sendmail
1430c22a309cSWarner Losh	while doing this and run the upgrade when locally sourced email
1431c22a309cSWarner Losh	is not likely to be generated.
1432c22a309cSWarner Losh
1433fdb9f54dSWarner Losh20000825:
1434fdb9f54dSWarner Losh	/boot/device.hints is now required for installkernel to
14359c1a7444SWarner Losh	succeed.  You should copy GENERIC.hints for your architecture
14369c1a7444SWarner Losh	into /boot/device.hints.  If and only if you compile hints
14379c1a7444SWarner Losh	into your kernel, then this file may be empty.  Please note,
14389c1a7444SWarner Losh	if you have an empty or missing /boot/device.hints file and
14399c1a7444SWarner Losh	you neglected to compile hints into your kernel, no boot
14409c1a7444SWarner Losh	messages will appear after the boot loader tries to start the
14419c1a7444SWarner Losh	kernel.
14429c1a7444SWarner Losh
14439c1a7444SWarner Losh20000821:
14449c1a7444SWarner Losh	If you do NOT have ``options RANDOMDEV'' in your kernel and
14459c1a7444SWarner Losh	you DO want the random device then add randomdev_load="YES" to
14469c1a7444SWarner Losh	/boot/loader.conf.
1447fdb9f54dSWarner Losh
14488f250aa7SWarner Losh20000812:
14495da0d091SWarner Losh	suidperl is now always built and installed on the system, but
14505da0d091SWarner Losh	with permissions of 511.  If you have applications that use
14515da0d091SWarner Losh	this program, you are now required to add ENABLE_SUIDPERL=true
14525da0d091SWarner Losh	to /etc/make.conf.  If you forget to do this,
14535da0d091SWarner Losh		chmod 4511 /usr/bin/suidperl
14545da0d091SWarner Losh	will fix this until the next build.
14555da0d091SWarner Losh
14565da0d091SWarner Losh20000812:
14578f250aa7SWarner Losh	sendmail has been updated from 8.9.3 to 8.11.0.  Some of the more
14588f250aa7SWarner Losh	visible changes that may immediately affect your configuration
14598f250aa7SWarner Losh	include:
14608f250aa7SWarner Losh	- New default file locations from src/contrib/sendmail/cf/README
14618f250aa7SWarner Losh	- newaliases limited to root and trusted users
14628f250aa7SWarner Losh	- MSA port (587) turned on by default
14638f250aa7SWarner Losh	- New queue file naming system so can't go from 8.11 -> 8.9
14648f250aa7SWarner Losh	- FEATURE(`rbl') renamed to FEATURE(`dnsbl')
14658f250aa7SWarner Losh	- FEATURE(`nullclient') is more full featured
14668f250aa7SWarner Losh	- FEATURE(`nouucp') requires an argument: `reject' or `nospecial'
14678f250aa7SWarner Losh	- mail.local FreeBSD-only -b option changed to -B
14688f250aa7SWarner Losh	- See src/contrib/sendmail/RELEASE_NOTES for more info
14698f250aa7SWarner Losh
147071c38472SWarner Losh20000810:
147171c38472SWarner Losh	suidperl (aka sperl) is no longer build by default.  You must
147271c38472SWarner Losh	specifically define BUILD_SUIDPERL to "true" for it to be build.
147371c38472SWarner Losh	Furthermore, we recommend that you remove /usr/bin/sperl* and
147471c38472SWarner Losh	/usr/bin/suidperl files from your system unless you have a
147571c38472SWarner Losh	specific use for it.
147671c38472SWarner Losh
147771c38472SWarner Losh20000729:
147871c38472SWarner Losh	Networking defaults have been tightened.  Anybody upgrading
147971c38472SWarner Losh	/etc/defaults/rc.conf needs to add the following lines to
148071c38472SWarner Losh	/etc/rc.conf if they want to have the same setup
148171c38472SWarner Losh	afterwards (unless the variables already are set, of course):
148271c38472SWarner Losh		# Enable network daemons for user convenience.
148371c38472SWarner Losh		inetd_enable="YES"
148471c38472SWarner Losh		portmap_enable="YES"
148571c38472SWarner Losh		sendmail_enable="YES"
148671c38472SWarner Losh
148771c38472SWarner Losh20000728:
148871c38472SWarner Losh	If you have null_load="YES" in your /boot/loader.conf, you
148971c38472SWarner Losh	will need to change that to nullfs_load="YES".
149071c38472SWarner Losh
14911dece4a9SWarner Losh20000728:
14921dece4a9SWarner Losh	The "installkernel" target has changed slightly. Now even if
14931dece4a9SWarner Losh	you override KERNEL e.g. 'make installkernel KERNEL=MYKERNEL'
14941dece4a9SWarner Losh	it will install the MYKERNEL file (built with the buildkernel
14951dece4a9SWarner Losh	target) as /kernel rather than /MYKERNEL. Those who have
14961dece4a9SWarner Losh	updated their /boot/loader.conf files to point to /MYKERNEL
14971dece4a9SWarner Losh	should remove that entry or perform manual rename of /kernel
14981dece4a9SWarner Losh	to /MYKERNEL.
14991dece4a9SWarner Losh
1500409e887cSWarner Losh20000711:
1501409e887cSWarner Losh	If you use CVSUP or CTM to get CVS trees, AND you used to get
1502409e887cSWarner Losh	the old crypto files from internat.freebsd.org AND you check
1503409e887cSWarner Losh	out files from the CVS tree with the cvs command, please read
1504409e887cSWarner Losh		http://people.freebsd.org/~imp/internat.txt
1505409e887cSWarner Losh	for details on potential problems that you might have and how
1506409e887cSWarner Losh	to get around them.
1507409e887cSWarner Losh
1508409e887cSWarner Losh	If you are merely a mirror, or don't answer yes to each of the
1509409e887cSWarner Losh	clauses above, you needn't worry.
1510409e887cSWarner Losh
1511409e887cSWarner Losh20000711:
1512409e887cSWarner Losh	/etc/security has been updated to print the inode number of
1513409e887cSWarner Losh	setuid programs that have changed.  You will see a large spike
1514409e887cSWarner Losh	in the number of changed programs the first time when you run
1515409e887cSWarner Losh	mergemaster to get a new /etc/security.
1516409e887cSWarner Losh
1517673d13f2SWarner Losh20000710:
1518673d13f2SWarner Losh	/dev/random now has good entropy collection (from the keyboard
1519673d13f2SWarner Losh	and sysmouse drivers). Please ensure that either `options
1520673d13f2SWarner Losh	RANDOMDEV' is present in your kernel config file or that
1521673d13f2SWarner Losh	`randomdev_load="YES"' is in your /boot/loader.conf. If you do
1522673d13f2SWarner Losh	not have the /dev/random driver, OpenSSL (and consequently
1523673d13f2SWarner Losh	lots of crypto tools (like SSH)) will fail with strange
1524673d13f2SWarner Losh	errors. (see below, 20000624).
1525673d13f2SWarner Losh
1526bed5c5ffSWarner Losh	FreeBSD-current is safe again to run Crypto.
15271dece4a9SWarner Losh
1528673d13f2SWarner Losh20000709:
1529c6dd1430SWarner Losh	phk made the malloc default options AJ.  This may slow things
1530c6dd1430SWarner Losh	down and uncover other latent bugs in the code.  If you need to
1531c6dd1430SWarner Losh	run at full speed, you can disable this by doing the following:
1532673d13f2SWarner Losh		ln -s aj /etc/malloc.conf
1533673d13f2SWarner Losh
1534e98e26cdSWarner Losh20000706:
1535e98e26cdSWarner Losh	libftpio's version was accidentally bumped a few days ago.  This
1536e98e26cdSWarner Losh	has been corrected.  You may need to remove /usr/lib/libftpio.so.6
1537e98e26cdSWarner Losh	before doing your next buildworld/installworld pair.  It certainly
1538f699bbbbSMark Ovens	won't hurt to remove it before the update procedure.  It will
1539e98e26cdSWarner Losh	break fetch until a new one is built, but ftp can be used in the
15402c021c6cSMark Ovens	interim if needed.
1541e98e26cdSWarner Losh
1542e98e26cdSWarner Losh20000705:
1543e98e26cdSWarner Losh	The crypto packages have changed for the cvsup.  This has been done
1544e98e26cdSWarner Losh	in a backward compatible way, but the old packages will go away at
1545e98e26cdSWarner Losh	some point in the future.  Look at /usr/share/examples/cvsup for
1546e98e26cdSWarner Losh	details.
1547e98e26cdSWarner Losh
1548c373950eSWarner Losh20000704:
15492f961bc8SWarner Losh	With the new sys/modules/sound/drivers/*, you will need to
15502f961bc8SWarner Losh	set SYSDIR until you do an installworld after July 7th.
15512f961bc8SWarner Losh
15522f961bc8SWarner Losh20000704:
1553c373950eSWarner Losh	rc.shutdown and rc will now call the rc.d scripts with start
1554c373950eSWarner Losh	or stop.  This may cause some harmless warnings from older
1555c373950eSWarner Losh	rc.d scripts that haven't been updated.
1556c373950eSWarner Losh
155727dc3a2bSWarner Losh20000630:
155827dc3a2bSWarner Losh	The libfetch based version of fetch has gone into the tree.
155927dc3a2bSWarner Losh	Minor problems may result on some of the less popular sites,
156027dc3a2bSWarner Losh	which should be reported to des@freebsd.org.
156127dc3a2bSWarner Losh
1562b8c215acSWarner Losh20000625:
1563b8c215acSWarner Losh	From approximately this date forward, one must have the crypto
156427dc3a2bSWarner Losh	system installed in order to build the system and kernel.
156527dc3a2bSWarner Losh	While not technically strictly true, one should treat it as
156627dc3a2bSWarner Losh	required and grab the crypto bits.  If you are grabbing CVS
156727dc3a2bSWarner Losh	trees, src-all and cvs-crypto should be treated as if they
156827dc3a2bSWarner Losh	were required.  You should check with the latest collections
156927dc3a2bSWarner Losh	to make sure that these haven't changed.
1570b8c215acSWarner Losh
15717b990719SWarner Losh20000624:
15727b990719SWarner Losh	Mark Murray just committed the first parts of a cleanup of
15737b990719SWarner Losh	/dev/zero, et al.  This is also cleaning up /dev/random.
15747b990719SWarner Losh	The entropy is disconnected, so DO NOT USE VERSIONS OF FREEBSD
15751a33dba7SWarner Losh	-CURRENT FROM THIS POINT to 2000710 for cryptographic services
15767b990719SWarner Losh	until Mark can merge in the fixes to this work in progress.
15777b990719SWarner Losh	openssh and openssl should not be used to generate keys from this
15787b990719SWarner Losh	date to the completion of the work.
15797b990719SWarner Losh
158027dc3a2bSWarner Losh	If you must operate at this reduced level of security, add '
158127dc3a2bSWarner Losh	options RANDOMDEV' to your kernel or modload the randomdev
158227dc3a2bSWarner Losh	module.  You may also need to copy a new MAKEDEV to /dev and
158327dc3a2bSWarner Losh	recreate the random and urandom devices.
158427dc3a2bSWarner Losh
158581e54c50SWarner Losh20000622:
158681e54c50SWarner Losh	The license on the softupdates is now a standard 2 clause
158781e54c50SWarner Losh	BSD license.  You may need to remove your symbolic links
158881e54c50SWarner Losh	that used to be required when updating.
158981e54c50SWarner Losh
159039943833SWarner Losh20000621:
15912c021c6cSMark Ovens	Scott Flatman <sf@aracnet.com> sent in a decent write-up on
15922a2f33fbSDaniel Baker	the config file update procedure.
15932a2f33fbSDaniel Baker		http://people.freebsd.org/~imp/config-upd.html
1594c373950eSWarner Losh	NOTE: LINT is gone.  It has been replaced with NOTES.  NOTES
159559df1173SDavid E. O'Brien	isn't buildable.  However, you can generate a LINT file:
159659df1173SDavid E. O'Brien		cd /sys/<ARCH>/conf && make LINT
159739943833SWarner Losh
1598290f9ad8SWarner Losh20000620:
1599290f9ad8SWarner Losh	Binutils 2.10 have hit the tree, or will shortly.  As soon
1600290f9ad8SWarner Losh	as they do, the problem noted in 20000522 will be resolved and
1601290f9ad8SWarner Losh	that workaround will no longer be required.
1602290f9ad8SWarner Losh
160390fb6346SWarner Losh20000615:
160490fb6346SWarner Losh	phk removed the compatibility creation of wd devices in the
160590fb6346SWarner Losh	ad driver.  If you haven't done so already, you must update
160690fb6346SWarner Losh	your fstab, etc to use the ad devices instead of the wd
160790fb6346SWarner Losh	devices.
160890fb6346SWarner Losh
1609f75f65bbSWarner Losh	In addition, you'll need to update your boot blocks to a
1610f75f65bbSWarner Losh	more modern version, if you haven't already done so.  Modern
1611f75f65bbSWarner Losh	here means 4.0 release or newer (although older releases
1612f75f65bbSWarner Losh	may work).
1613f75f65bbSWarner Losh
1614ba26da8eSWarner Losh20000612:
1615ba26da8eSWarner Losh	Peter took an axe to config(8).  Be sure that you read his mail
1616290f9ad8SWarner Losh	on the topic before even thinking about updating.  You will
1617c6dd1430SWarner Losh	need to create a /boot/device.hints or add a hints directive
1618290f9ad8SWarner Losh	to your config file to compile them in statically.  The format
1619f54a3542SWarner Losh	of the config file has changed as well.  Please see GENERIC or
1620f54a3542SWarner Losh	NEWCARD for examples of the new format.
1621290f9ad8SWarner Losh
16229698f2c0SWarner Losh	Indirectly, this also breaks USERCONFIG.  Unless a newer entry
16239698f2c0SWarner Losh	says that it has been fixed, assume that must use the hints mechanism
16249698f2c0SWarner Losh	in the loader if you need to use a machine with very old ISA cards
16259698f2c0SWarner Losh	in it.
1626bbcc5149SWarner Losh
1627d65850ebSWarner Losh20000522:
1628ba26da8eSWarner Losh	A new set of binutils went into the tree today.  Anybody
1629d65850ebSWarner Losh	building a kernel after this point is advised that they need
1630d65850ebSWarner Losh	to rebuild their binutils (or better yet do a
1631d65850ebSWarner Losh	buildworld/installworld) before building a new kernel.
1632d65850ebSWarner Losh
1633d9583a00SWarner Losh	Due to bugs in binutils, using malloc options (eg /etc/malloc.conf
1634d9583a00SWarner Losh	or MALLOC_OPTIONS env var) J will cause ld to dump core.  It
1635d9583a00SWarner Losh	is recommended that you don't set this option until the problem
1636d9583a00SWarner Losh	is resolved.
1637d9583a00SWarner Losh
16388039cedeSWarner Losh20000513:
16398039cedeSWarner Losh	The ethernet drivers were all updated to clean up the BPF handling.
16408039cedeSWarner Losh
1641d65850ebSWarner Losh20000510:
16428039cedeSWarner Losh	The problems with boot blocks on the alphas have been corrected.
16438039cedeSWarner Losh	This will require some care in updating alphas.  A new libstand
16448039cedeSWarner Losh	is requires for the boot blocks to build properly.
16458039cedeSWarner Losh
16468039cedeSWarner Losh20000503:
16478039cedeSWarner Losh	Recompile all kld modules.  Proper version dependency info
16488039cedeSWarner Losh	is now available.
16498039cedeSWarner Losh
1650d65850ebSWarner Losh20000502:
1651d65850ebSWarner Losh	Modules have been disconnected from the buildworld tree and
1652d65850ebSWarner Losh	connected to the kernel building instead.
1653d65850ebSWarner Losh
1654be149406SNik Clayton20000427:
16558039cedeSWarner Losh	You may need to build gperf
16568039cedeSWarner Losh		cd /usr/src/gnu/usr.bin/gperf && make depend all install
16578039cedeSWarner Losh	when upgrading from 4.0 -> current.  The build system now uses
16588039cedeSWarner Losh	an option only in -current.
16598039cedeSWarner Losh
16602b8dd5f4SWarner Losh20000417:
16612b8dd5f4SWarner Losh	The method that we brand ELF binaries has changed to be more
1662f699bbbbSMark Ovens	acceptable to the binutils maintainers.  You will need to
16632b8dd5f4SWarner Losh	rebrand your ELF binaries that aren't native.  One problem
16642b8dd5f4SWarner Losh	binary is the Linux ldconfig.  After your make world, but
16652c021c6cSMark Ovens	before you reboot, you'll need to issue:
16662b8dd5f4SWarner Losh		brandelf -t Linux /compat/linux/sbin/ldconfig
16672b8dd5f4SWarner Losh	if you have Linux compatibility enabled on your machine.
16682b8dd5f4SWarner Losh
16698d9f1945SWarner Losh20000320:
16702b8dd5f4SWarner Losh	If you have really bad/marginal IDE drives, you may find they
16712b8dd5f4SWarner Losh	don't work well.  Use pio mode instead.  The easiest way to
16722b8dd5f4SWarner Losh	cope if you have a problem combination is to add:
1673ae20a1b8SDima Dorfman		/sbin/sysctl hw.ata.ata_dma=0
16742b8dd5f4SWarner Losh	to the start of /etc/rc.conf.
16758d9f1945SWarner Losh
1676f8ab1dd6SWarner Losh20000319:
1677f699bbbbSMark Ovens	The ISA and PCI compatibility shims have been connected to the
1678f8ab1dd6SWarner Losh	options COMPAT_OLDISA and COMPAT_OLDPCI.  If you are using old
1679f8ab1dd6SWarner Losh	style PCI or ISA drivers (i.e. tx, voxware, etc.) you must
1680f8ab1dd6SWarner Losh	include the appropriate option in your kernel config.  Drivers
1681f8ab1dd6SWarner Losh	using the shims should be updated or they won't ship with
1682f8ab1dd6SWarner Losh	5.0-RELEASE, targeted for 2001.
1683f8ab1dd6SWarner Losh
168419cada77SWarner Losh20000318:
1685f699bbbbSMark Ovens	We've entered the traditional post release dumping party.
168619cada77SWarner Losh	Large kernel changes are being committed and are in the
168719cada77SWarner Losh	works.  It is important to keep the systems' klds and kernel
168819cada77SWarner Losh	in sync as kernel interfaces and structures are changing.
168919cada77SWarner Losh	Before reporting kernel panics, make sure that all modules
169019cada77SWarner Losh	that you are loading are up to date.
1691ba228352SWarner Losh
169219cada77SWarner Losh20000315:
16936d23c382SWarner Losh	If you are upgrading from an older version of FreeBSD, you
16946d23c382SWarner Losh	need to update your boot blocks as well.  'disklabel -B ad0'
16956d23c382SWarner Losh	will do the trick.  This isn't critical until you remove your
16966d23c382SWarner Losh	wd device entries in /dev, at which point your system will not
16976d23c382SWarner Losh	boot.
16986d23c382SWarner Losh
16996d23c382SWarner Losh20000315:
170019cada77SWarner Losh	4.0 RELEASE shipped.  Please see the 4.0 UPDATING file for how
170119cada77SWarner Losh	to upgrade to 4.0 from 3.x.
170257199806SWarner Losh
1703dc0dbf5cSWarner LoshCOMMON ITEMS:
1704dc0dbf5cSWarner Losh
1705cd5f061cSWarner Losh	# NOTE: 5.x below applies to 6.0-currrent as well, for the
1706cd5f061cSWarner Losh	# momemnt.  4.any -> 5.any upgrade support will remain in
1707cd5f061cSWarner Losh	# place for 6.0 current, but after 5.3 RELEASE, the 4.any ->
1708cd5f061cSWarner Losh	# 6.0-current upgrade path will require moving through 5.3
1709cd5f061cSWarner Losh	# RELEASE or newer.
1710cd5f061cSWarner Losh
1711a24eff53SWarner Losh	General Notes
1712a24eff53SWarner Losh	-------------
1713a24eff53SWarner Losh	Avoid using make -j when upgrading.  From time to time in the
1714a24eff53SWarner Losh	past there have been problems using -j with buildworld and/or
1715a24eff53SWarner Losh	installworld.  This is especially true when upgrading between
1716a24eff53SWarner Losh	"distant" versions (eg one that cross a major release boundary
1717a24eff53SWarner Losh	or several minor releases, or when several months have passed
1718a24eff53SWarner Losh	on the -current branch).
1719a24eff53SWarner Losh
17205780f3baSWarner Losh	Sometimes, obscure build problems are the result of environment
17215780f3baSWarner Losh	poisoning.  This can happen because the make utility reads its
17225780f3baSWarner Losh	environment when searching for values for global variables.
17235780f3baSWarner Losh	To run your build attempts in an "environmental clean room",
17245780f3baSWarner Losh	prefix all make commands with 'env -i '.  See the env(1) manual
17255780f3baSWarner Losh	page for more details.
17265780f3baSWarner Losh
1727dc0dbf5cSWarner Losh	To build a kernel
1728dc0dbf5cSWarner Losh	-----------------
1729ba01eb20SWarner Losh	If you are updating from a prior version of FreeBSD (even one just
1730f699bbbbSMark Ovens	a few days old), you should follow this procedure. With a
1731ba01eb20SWarner Losh	/usr/obj tree with a fresh buildworld,
1732282e0f01SRuslan Ermilov	make -DALWAYS_CHECK_MAKE buildkernel KERNCONF=YOUR_KERNEL_HERE
1733282e0f01SRuslan Ermilov	make -DALWAYS_CHECK_MAKE installkernel KERNCONF=YOUR_KERNEL_HERE
1734dc0dbf5cSWarner Losh
1735ba01eb20SWarner Losh	To just build a kernel when you know that it won't mess you up
1736ba01eb20SWarner Losh	--------------------------------------------------------------
17370fbd2da9SKen Smith	This assumes you are already running a 5.X system.  Replace
17380fbd2da9SKen Smith	${arch} with the architecture of your machine (e.g. "i386",
17390fbd2da9SKen Smith	"alpha", "amd64", "ia64", "pc98", "sparc64", etc).
17400fbd2da9SKen Smith
17410fbd2da9SKen Smith	cd src/sys/${arch}/conf
174247d0d01fSWarner Losh	config KERNEL_NAME_HERE
17430fbd2da9SKen Smith	cd ../compile/KERNEL_NAME_HERE
1744ba01eb20SWarner Losh	make depend
1745ba01eb20SWarner Losh	make
1746ba01eb20SWarner Losh	make install
1747ba01eb20SWarner Losh
1748ba01eb20SWarner Losh	If this fails, go to the "To build a kernel" section.
1749ba01eb20SWarner Losh
1750ba01eb20SWarner Losh	To rebuild everything and install it on the current system.
1751ba01eb20SWarner Losh	-----------------------------------------------------------
175263cb445eSWarner Losh	# Note: sometimes if you are running current you gotta do more than
175363cb445eSWarner Losh	# is listed here if you are upgrading from a really old current.
175463cb445eSWarner Losh
1755f643de42SWarner Losh	<make sure you have good level 0 dumps>
175663cb445eSWarner Losh	<maybe fix /etc/fstab>				[7]
175763cb445eSWarner Losh	make buildworld
17586586253aSWarner Losh	make kernel KERNCONF=YOUR_KERNEL_HERE
175963cb445eSWarner Losh							[1]
176063cb445eSWarner Losh	<reboot in single user>				[3]
17616586253aSWarner Losh	src/etc/rc.d/preseedrandom			[10]
176263cb445eSWarner Losh	mergemaster -p					[5]
176363cb445eSWarner Losh	make installworld
176463cb445eSWarner Losh	mergemaster					[4]
176563cb445eSWarner Losh	<reboot>
176663cb445eSWarner Losh
1767759f0aefSWarner Losh
1768f27b1fceSJoseph Koshy	To cross-install current onto a separate partition
1769f27b1fceSJoseph Koshy	--------------------------------------------------
1770f27b1fceSJoseph Koshy	# In this approach we use a separate partition to hold
1771f27b1fceSJoseph Koshy	# current's root, 'usr', and 'var' directories.   A partition
1772f27b1fceSJoseph Koshy	# holding "/", "/usr" and "/var" should be about 2GB in
1773f27b1fceSJoseph Koshy	# size.
1774f27b1fceSJoseph Koshy
1775f27b1fceSJoseph Koshy	<make sure you have good level 0 dumps>
1776f27b1fceSJoseph Koshy	<boot into -stable>
1777f27b1fceSJoseph Koshy	make buildworld
1778f27b1fceSJoseph Koshy	<maybe newfs current's root partition>
1779f27b1fceSJoseph Koshy	<mount current's root partition on directory ${CURRENT_ROOT}>
1780f27b1fceSJoseph Koshy	make installworld DESTDIR=${CURRENT_ROOT}
1781f27b1fceSJoseph Koshy	make buildkernel KERNCONF=YOUR_KERNEL_HERE
17826586253aSWarner Losh	cp src/sys/${ARCH}/conf/GENERIC.hints \
1783f27b1fceSJoseph Koshy		${CURRENT_ROOT}/boot/device.hints	# as needed
1784f27b1fceSJoseph Koshy	make installkernel KERNCONF=YOUR_KERNEL_HERE DESTDIR=${CURRENT_ROOT}
17856586253aSWarner Losh	cd src/etc; make distribution DESTDIR=${CURRENT_ROOT} # if newfs'd
1786f27b1fceSJoseph Koshy	cp /etc/fstab ${CURRENT_ROOT}/etc/fstab 		   # if newfs'd
1787f27b1fceSJoseph Koshy	<edit ${CURRENT_ROOT}/etc/fstab to mount "/" from the correct partition>
1788f27b1fceSJoseph Koshy	<reboot into current>
1789f27b1fceSJoseph Koshy	<do a "native" rebuild/install as described in the previous section>
17906586253aSWarner Losh	<maybe install compatibility libraries from src/lib/compat>
1791f27b1fceSJoseph Koshy 	<reboot>
1792f27b1fceSJoseph Koshy
1793f27b1fceSJoseph Koshy
1794f27b1fceSJoseph Koshy	To upgrade in-place from 4.x-stable to current
1795f27b1fceSJoseph Koshy	----------------------------------------------
17965c195f59SWarner Losh	# 5.x uses more space than 4.x.  Also, the location of kernel
1797e5dc5f61SWarner Losh	# modules has changed.  If you are installing 5.x onto a 4.x
17985c195f59SWarner Losh	# system, you'll need about 30MB of free disk space on your /
17995c195f59SWarner Losh	# partition.  If you have less than this, you may encounter difficult
1800ca22e652SJens Schweikhardt	# to back out of problems with this procedure.  If /tmp is on
1801f643de42SWarner Losh	# the / partition, you may want to completely remove all its content
1802f643de42SWarner Losh	# before upgrading, as this can be a common source of shortage of
1803f643de42SWarner Losh	# space on /.
1804f643de42SWarner Losh
1805f643de42SWarner Losh	<make sure you have good level 0 dumps>
1806fc8c157fSWarner Losh	<maybe fix /etc/fstab>				[7]
180721c075eaSWarner Losh	make buildworld					[9]
1808802fc49dSBrian Feldman	cp sys/${MACHINE}/conf/GENERIC.hints /boot/device.hints [2]
1809e5dc5f61SWarner Losh	make kernel KERNCONF=YOUR_KERNEL_HERE		[8]
1810802fc49dSBrian Feldman	cd sys/boot ; make STRIP="" install		[6]
1811fc8c157fSWarner Losh							[1]
1812fc8c157fSWarner Losh	<reboot in single user>				[3]
18136586253aSWarner Losh	src/etc/rc.d/preseedrandom			[10]
1814835284beSWarner Losh	mergemaster -p					[5]
1815f8a4c901SWarner Losh	rm -rf /usr/include/g++
1816ba26da8eSWarner Losh	make installworld
1817802fc49dSBrian Feldman	mergemaster -i					[4]
1818ba26da8eSWarner Losh	<reboot>
1819ba26da8eSWarner Losh
1820fdb9f54dSWarner Losh	Make sure that you've read the UPDATING file to understand the
1821fdb9f54dSWarner Losh	tweaks to various things you need.  At this point in the life
1822fdb9f54dSWarner Losh	cycle of current, things change often and you are on your own
1823fdb9f54dSWarner Losh	to cope.  The defaults can also change, so please read ALL of
1824fdb9f54dSWarner Losh	the UPDATING entries.
1825ba26da8eSWarner Losh
18261dece4a9SWarner Losh	Also, if you are tracking -current, you must be subscribed to
18271dece4a9SWarner Losh	freebsd-current@freebsd.org.  Make sure that before you update
18281dece4a9SWarner Losh	your sources that you have read and understood all the recent
18291dece4a9SWarner Losh	messages there.  If in doubt, please track -stable which has
18301dece4a9SWarner Losh	much fewer pitfalls.
18311dece4a9SWarner Losh
1832134d2e86SWarner Losh	[1] If you have third party modules, such as vmware, you
1833134d2e86SWarner Losh	should disable them at this point so they don't crash your
1834134d2e86SWarner Losh	system on reboot.
1835134d2e86SWarner Losh
18369c1a7444SWarner Losh	[2] If you have legacy ISA devices, you may need to create
18379c1a7444SWarner Losh	your own device.hints to reflect your unique hardware
18389c1a7444SWarner Losh	configuration.
18399c1a7444SWarner Losh
1840ee6e1fc3SWarner Losh	[3] From the bootblocks, boot -s, and then do
1841ee6e1fc3SWarner Losh		fsck -p
1842ee6e1fc3SWarner Losh		mount -u /
1843ee6e1fc3SWarner Losh		mount -a
18446586253aSWarner Losh		cd src
184547d0d01fSWarner Losh		adjkerntz -i		# if CMOS is wall time
1846f6a0ef01SWarner Losh	Also, when doing a major release upgrade, it is required that
1847f6a0ef01SWarner Losh	you boot into single user mode to do the installworld.
184866986952SRuslan Ermilov	For the 4.x -> 5.x upgrade, you will also see many messages about
1849b705ae10SWarner Losh	needing to recompile your userland.  These are harmless and can
1850b705ae10SWarner Losh	be ignored while you proceed to the next step.
1851ee6e1fc3SWarner Losh
1852a6cd4f9dSWarner Losh	[4] Note: This step is non-optional.  Failure to do this step
1853a6cd4f9dSWarner Losh	can result in a significant reduction in the functionality of the
1854a6cd4f9dSWarner Losh	system.  Attempting to do it by hand is not recommended and those
1855a6cd4f9dSWarner Losh	that pursue this avenue should read this file carefully, as well
1856a6cd4f9dSWarner Losh	as the archives of freebsd-current and freebsd-hackers mailing lists
1857a6cd4f9dSWarner Losh	for potential gotchas.
1858a6cd4f9dSWarner Losh
1859835284beSWarner Losh	[5] Usually this step is a noop.  However, from time to time
1860835284beSWarner Losh	you may need to do this if you get unknown user in the following
1861835284beSWarner Losh	step.  It never hurts to do it all the time.  You may need to
1862835284beSWarner Losh	install a new mergemaster (cd src/usr.sbin/mergemaster && make
1863835284beSWarner Losh	install) after the buildworld before this step if you last updated
1864835284beSWarner Losh	from current before 20020224 or from -stable before 20020408.
1865835284beSWarner Losh
1866bd79cf40SWarner Losh	[6] 4.x boot loader can be used to boot a 5.x system, however
1867bd79cf40SWarner Losh	it is difficult to do that at best.  If you wish to try, then
1868bd79cf40SWarner Losh	you should interrupt the boot and at the ok prompt type:
1869bd79cf40SWarner Losh		ok unload
1870bd79cf40SWarner Losh		ok boot /boot/kernel/kernel
1871bd79cf40SWarner Losh	If this fails to work, you must install a new boot loader as
1872bd79cf40SWarner Losh	described here.
1873fc8c157fSWarner Losh
1874fc8c157fSWarner Losh	[7] Before you upgrade, please make sure that you are not using
1875e5dc5f61SWarner Losh	compatibility slices.  These are device names of the form /dev/ad0a
1876e5dc5f61SWarner Losh	without the actual slice name.  These will break with 5.x and newer.
1877fc8c157fSWarner Losh	You generally must update these entries to use the post FreeBSD
1878e5dc5f61SWarner Losh	2.x form of /dev/ad0s1a. i386 and pc98 are affected, while alpha
1879e5dc5f61SWarner Losh	is not.
1880fc8c157fSWarner Losh
1881c74fe6afSWarner Losh	[8] In order to have a kernel that can run the 4.x binaries
1882c74fe6afSWarner Losh	needed to do an installworld, you must include the COMPAT_FREEBSD4
1883c74fe6afSWarner Losh	option in your kernel.  Failure to do so may leave you with a system
1884c74fe6afSWarner Losh	that is hard to boot to recover.
1885c74fe6afSWarner Losh
1886e5dc5f61SWarner Losh	Make sure that you merge any new devices from GENERIC since the
1887e5dc5f61SWarner Losh	last time you updated your kernel config file.
1888e5dc5f61SWarner Losh
188921c075eaSWarner Losh	[9] When checking out sources, you must include the -P flag to have
1890e5dc5f61SWarner Losh	cvs prune empty directories.
1891e5dc5f61SWarner Losh
1892e5dc5f61SWarner Losh	If CPUTYPE is defined in your /etc/make.conf, make sure to use the
1893e5dc5f61SWarner Losh	"?=" instead of the "=" assignment operator, so that buildworld can
1894e5dc5f61SWarner Losh	override the CPUTYPE if it needs to.
1895e5dc5f61SWarner Losh
1896e5dc5f61SWarner Losh	MAKEOBJDIRPREFIX must be defined in an environment variable, and
1897e5dc5f61SWarner Losh	not on the command line, or in /etc/make.conf.  buildworld will
1898e5dc5f61SWarner Losh	warn if it is improperly defined.
1899e5dc5f61SWarner Losh
1900802fc49dSBrian Feldman	In case you would like to avoid installing new packages of everything,
1901802fc49dSBrian Feldman	you might want to uncomment the "COMPAT4X=	YES" entry, so that 4.x
190266986952SRuslan Ermilov	compatibility libraries are built which should allow you to continue
1903e5dc5f61SWarner Losh	using your existing software for a while.  Alternatively, you can
1904e5dc5f61SWarner Losh	install the misc/compat4x port.
19058633bbeaSBrooks Davis
19068633bbeaSBrooks Davis	[10] In order to create temporary files, /dev/random must be
19076586253aSWarner Losh	initialized by feeding data into it.  src/etc/rc.d/preseedrandom
19088633bbeaSBrooks Davis	takes care of this.
1909dc0dbf5cSWarner LoshFORMAT:
1910dc0dbf5cSWarner Losh
1911f699bbbbSMark OvensThis file contains a list, in reverse chronological order, of major
19121fc1a0dcSWarner Loshbreakages in tracking -current.  Not all things will be listed here,
1913f8ab1dd6SWarner Loshand it only starts on March 15, 2000.  Updating files can found in
1914f8ab1dd6SWarner Loshprevious releases if your system is older than this.
19151fc1a0dcSWarner Losh
1916e72fd46aSWarner LoshCopyright information:
1917e72fd46aSWarner Losh
1918e5dc5f61SWarner LoshCopyright 1998-2004 M. Warner Losh.  All Rights Reserved.
1919e72fd46aSWarner Losh
1920772730c7SWarner LoshRedistribution, publication, translation and use, with or without
1921772730c7SWarner Loshmodification, in full or in part, in any form or format of this
19229698f2c0SWarner Loshdocument are permitted without further permission from the author.
1923e72fd46aSWarner Losh
1924e72fd46aSWarner LoshTHIS DOCUMENT IS PROVIDED BY WARNER LOSH ``AS IS'' AND ANY EXPRESS OR
1925e72fd46aSWarner LoshIMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
1926e72fd46aSWarner LoshWARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
1927e72fd46aSWarner LoshDISCLAIMED.  IN NO EVENT SHALL WARNER LOSH BE LIABLE FOR ANY DIRECT,
1928e72fd46aSWarner LoshINDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
1929e72fd46aSWarner Losh(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
1930e72fd46aSWarner LoshSERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
1931e72fd46aSWarner LoshHOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
1932e72fd46aSWarner LoshSTRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
1933e72fd46aSWarner LoshIN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
1934e72fd46aSWarner LoshPOSSIBILITY OF SUCH DAMAGE.
1935e72fd46aSWarner Losh
1936e72fd46aSWarner LoshIf you find this document useful, and you want to, you may buy the
1937e72fd46aSWarner Loshauthor a beer.
1938e72fd46aSWarner Losh
193922306abcSWarner LoshContact Warner Losh if you have any questions about your use of
1940772730c7SWarner Loshthis document.
1941772730c7SWarner Losh
194297d92980SPeter Wemm$FreeBSD$
1943