xref: /freebsd/UPDATING (revision 85a8b887df7fb76ad780c9f909b6ec3ceb76b52a)
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
41d6a8d588SMax Laier20040929:
42d6a8d588SMax Laier	The pfil API has gained an additional argument to pass an inpcb.
43d6a8d588SMax Laier	You should rebuild all pfil consuming modules: ipfw, ipfilter
44d6a8d588SMax Laier	and pf.
45d6a8d588SMax Laier
468f1bb389SDoug Barton20040928:
478f1bb389SDoug Barton	If enabled, the default is now to run named in a chroot
488f1bb389SDoug Barton	"sandbox." For users with existing configurations in
498f1bb389SDoug Barton	/etc/namedb the migration should be simple. Upgrade your
508f1bb389SDoug Barton	world as usual, then after installworld but before
518f1bb389SDoug Barton	mergemaster do the following:
528f1bb389SDoug Barton
53d6ec7d8cSDoug Barton	/etc/rc.d/syslogd stop
548f1bb389SDoug Barton	If named is running: /etc/rc.d/named stop
558f1bb389SDoug Barton	cd /etc
568f1bb389SDoug Barton	mv namedb namedb.bak
578f1bb389SDoug Barton	mkdir -p /var/named/etc/namedb
588f1bb389SDoug Barton	cp -Rp namedb.bak/* /var/named/etc/namedb/
598f1bb389SDoug Barton	mergemaster (with your usual options)
608f1bb389SDoug Barton	If using the generated localhost* files:
618f1bb389SDoug Barton		cd /var/named/etc/namedb
628f1bb389SDoug Barton		/bin/sh make-localhost
638f1bb389SDoug Barton		rm -f localhost-v6.rev localhost.rev
64d6ec7d8cSDoug Barton	/etc/rc.d/syslogd start
658f1bb389SDoug Barton	/etc/rc.d/named start
668f1bb389SDoug Barton
678f1bb389SDoug Barton	If you are using a custom configuration, or if you have
688f1bb389SDoug Barton	customised the named_* variables in /etc/rc.conf[.local]
698f1bb389SDoug Barton	then you may have to adjust the instructions accordingly.
708f1bb389SDoug Barton	It is suggested that you carefully examine the new named
718f1bb389SDoug Barton	variables in /etc/defaults/rc.conf and the options in
728f1bb389SDoug Barton	/var/named/etc/namedb/named.conf to see if they might
738f1bb389SDoug Barton	now be more suitable.
748f1bb389SDoug Barton
755d36721aSDoug Barton20040925:
765d36721aSDoug Barton	BIND 9 has been imported into the base, and is now fully
775d36721aSDoug Barton	functional. BIND 8 has now been removed. There are numerous
785d36721aSDoug Barton	differences between BIND 8 and 9, and users with critical
795d36721aSDoug Barton	named installations should read the migration documentation
805d36721aSDoug Barton	in /usr/share/doc/bind9/misc/migration. There is also a
815d36721aSDoug Barton	new instruction manual in /usr/share/doc/bind9/arm.
825d36721aSDoug Barton
835d36721aSDoug Barton	The key differences that most users will experience are in
845d36721aSDoug Barton	how picky BIND 9 is about zone file format. If you are using
855d36721aSDoug Barton	named as a resolving (caching) name server, you will likely
865d36721aSDoug Barton	not have trouble.
875d36721aSDoug Barton
88f50b1bdbSDoug Barton	The following files are part of the old BIND 8 installation
89f50b1bdbSDoug Barton	and should be removed:
90f50b1bdbSDoug Barton	/usr/bin/dnskeygen /usr/bin/dnsquery /usr/libexec/named-xfer
91f50b1bdbSDoug Barton	/usr/sbin/named.restart /usr/sbin/ndc
92f50b1bdbSDoug Barton
93f50b1bdbSDoug Barton	The following files have moved to /usr/bin, and should be
94f50b1bdbSDoug Barton	removed from their old locations:
95f50b1bdbSDoug Barton	/usr/sbin/nslookup /usr/sbin/nsupdate
96f50b1bdbSDoug Barton
97f5ee5a8bSMax Laier20040914:
98f5ee5a8bSMax Laier	The format of the pflogd(8) logfile "/var/log/pflog" has changed for
99f5ee5a8bSMax Laier	architectures that have a 64 bit long type to make it compatible to
100f5ee5a8bSMax Laier	the standard pcap format. In order to prevent corruption move away
101f5ee5a8bSMax Laier	any old logfile before using a new pflogd(8).
102f5ee5a8bSMax Laier
103d698cdb3SJohn-Mark Gurney20040906:
104d698cdb3SJohn-Mark Gurney	debug.witness_* has been renamed to debug.witness.*.  There are
105d698cdb3SJohn-Mark Gurney	compatibility tunables left in for a few days.  Update loader.conf
106d698cdb3SJohn-Mark Gurney	as necessary.
107d698cdb3SJohn-Mark Gurney
1084ff62bd9SBrooks Davis20040902:
1094ff62bd9SBrooks Davis	The ifi_epoch change has been reverted because the ABI breakage
1104ff62bd9SBrooks Davis	was too extensive.  If you are running with a kernel/userland
1114ff62bd9SBrooks Davis	containing the initial change (20040830), you should heed the
1124ff62bd9SBrooks Davis	warning about ifconfig incompatibility when upgrading again.
1134ff62bd9SBrooks Davis	With this change, 5.3 and 6.0 ifconfigs and kernels are once
1144ff62bd9SBrooks Davis	again interoperable.
1154ff62bd9SBrooks Davis
1161fc4519bSBrooks Davis20040830:
1171fc4519bSBrooks Davis	A new variable, ifi_epoch, has been added to struct if_data
1181fc4519bSBrooks Davis	which is part if struct ifnet.  This means all network drivers
1191fc4519bSBrooks Davis	and network monitoring applications need to be recompiled.
1201fc4519bSBrooks Davis
1213789fb75SBrooks Davis        WARNING WARNING WARNING WARNING WARNING WARNING WARNING
1223789fb75SBrooks Davis
1233789fb75SBrooks Davis        This also breaks ifconfig compatibility.  An old ifconfig will
1243789fb75SBrooks Davis        not work with the new kernel and a new ifconfig will not work
1253789fb75SBrooks Davis        with the old.  It is strongly recommended that you make a copy
1263789fb75SBrooks Davis        of your old ifconfig before installworld.  If you are installing
1273789fb75SBrooks Davis        remotely, you must copy over a new ifconfig before rebooting in
1283789fb75SBrooks Davis        to the new kernel.
1293789fb75SBrooks Davis
130c1c94d5cSRobert Watson20040828:
131c1c94d5cSRobert Watson	The default configuration for the network stack has been changed
132c1c94d5cSRobert Watson	such that it now runs without the Giant lock unless configured
133c1c94d5cSRobert Watson	otherwise.  If you experience network-related instability, you
134c1c94d5cSRobert Watson	may wish to try setting "debug.mpsafenet=0" or compiling the
135c1c94d5cSRobert Watson	kernel with "options NET_WITH_GIANT".  Details on the netperf
136c1c94d5cSRobert Watson	project may be found at:
137c1c94d5cSRobert Watson
138c1c94d5cSRobert Watson	    http://www.watson.org/~robert/freebsd/netperf/
139c1c94d5cSRobert Watson
140c1c94d5cSRobert Watson	Including the 20040828 announcement of configuration change
141c1c94d5cSRobert Watson	details.
142c1c94d5cSRobert Watson
143c21fd232SAndre Oppermann20040827:
144c21fd232SAndre Oppermann	PFIL_HOOKS are a fixed part of the network stack now and do not
145c21fd232SAndre Oppermann	need to be specified in the kernel configuration file anymore.
146c21fd232SAndre Oppermann
147f036d408SJulian Elischer20040819:
148f036d408SJulian Elischer	Netgraph changed its message format slightly to align the data
149f036d408SJulian Elischer	portion well on 64 bit machines.
150f036d408SJulian Elischer	Netgraph using utilities (e.g. ngctl, nghook, ppp, mpd,
151f036d408SJulian Elischer	pppoed, bluetooth, ATM) should be recompiled when a new kernel
152f036d408SJulian Elischer	is installed.
153f036d408SJulian Elischer
154b067abfaSAndre Oppermann20040817:
1550ce70eb4SAndre Oppermann	IPFW has been converted to use PFIL_HOOKS.  This change is
156b067abfaSAndre Oppermann	transparent to userland and preserves the ipfw ABI.  The ipfw
157b067abfaSAndre Oppermann	core packet inspection and filtering functions have not been
158b067abfaSAndre Oppermann	changed, only how ipfw is invoked is different.  Note that
159b067abfaSAndre Oppermann	"option PFIL_HOOKS" is required to use IPFIREWALL compiled
160b067abfaSAndre Oppermann	into the kernel or as KLD.
161b067abfaSAndre Oppermann
162f13a7951SDavid Malone20040814:
163f13a7951SDavid Malone	The RANDOM_IP_ID option has been replaced by the sysctl
164f13a7951SDavid Malone	net.inet.ip.random_id. If you had RANDOM_IP_ID in your kernel then
165f13a7951SDavid Malone	you may want to add "net.inet.ip.random_id=1" to /etc/sysctl.conf.
166f13a7951SDavid Malone
1673a004637SMax Laier20040807:
1683a004637SMax Laier	The size of 'struct ifnet' has changed due to the addition of the
1693a004637SMax Laier	if_carp placeholder.  All kernel modules implementing network
1703a004637SMax Laier	interfaces must be recompiled as a result.
1713a004637SMax Laier
1724f34d8d1SJohn-Mark Gurney20040806:
1734f34d8d1SJohn-Mark Gurney	Module loading has been fixed.  Some older installations will
174ac41c814SRuslan Ermilov	drop proper module_path initialization and modules will fail to
1754f34d8d1SJohn-Mark Gurney	load properly.  If you have a line in /boot/loader.rc that says:
1764f34d8d1SJohn-Mark Gurney	"initialize drop", do (i386 only):
1774f34d8d1SJohn-Mark Gurney		cp /usr/src/sys/boot/i386/loader/loader.rc /boot/loader.rc
1784f34d8d1SJohn-Mark Gurney		chown root:wheel /boot/loader.rc
1794f34d8d1SJohn-Mark Gurney		chmod 444 /boot/loader.rc
1804f34d8d1SJohn-Mark Gurney
1818f075db4SMark Murray20040802:
1828f075db4SMark Murray	making /dev/(null|zero) into a module proved to be too unpopular,
1838f075db4SMark Murray	so this bit has been revoked from the previous (20040801) entry.
1848f075db4SMark Murray
185d064d6dbSMark Murray20040801:
186d064d6dbSMark Murray	The /dev/mem, /dev/io /dev/(null/zero) devices are now modules,
187d064d6dbSMark Murray	so you may wish to add them to your kernel config file. See
188d064d6dbSMark Murray	GENERIC for examples.
189d064d6dbSMark Murray
190b289983eSAlexander Kabaev20040728:
19154bd5271SAlexander Kabaev	System compiler has been upgraded to GCC 3.4.2-pre. As with any major
19254bd5271SAlexander Kabaev	compiler upgrade, there are several issues to be aware of. GCC 3.4.x
19354bd5271SAlexander Kabaev	has broken C++ ABI compatibility with previous releases yet again
19454bd5271SAlexander Kabaev	and users will have to rebuild all their C++ programs with the new
195d0e54ab4SDavid E. O'Brien	compiler. If you are getting run-time error such as
196d0e54ab4SDavid E. O'Brien	/libexec/ld-elf.so.1: Undefined symbol "_ZNSs20_S_empty_rep_storageE"
197d0e54ab4SDavid E. O'Brien	This entry does apply to you.
198d0e54ab4SDavid E. O'Brien
199d0e54ab4SDavid E. O'Brien	A new unit-at-a-time optimization mode, which is default in this
200d0e54ab4SDavid E. O'Brien	compiler release, is more aggressive in removing unused static
201d0e54ab4SDavid E. O'Brien	symbols. This is the likely cause of 'make buildworld' breakages
202cd5f061cSWarner Losh	with non-default CFLAGS where optimization level is set to -O2
203cd5f061cSWarner Losh	or higher.
20454bd5271SAlexander Kabaev
2056e1afae3SWarner Losh	With the upgrade of the system compiler, the kernel has been upgraded
2066e1afae3SWarner Losh	to match the new system compiler.  This makes it impossible to build
2076e1afae3SWarner Losh	a new kernel with the old compiler.  Upgrade your system via
2086e1afae3SWarner Losh	make buildworld and make kernel (see below) to fix this problem.
2096e1afae3SWarner Losh
21036ed21e6SRobert Watson20040727:
21136ed21e6SRobert Watson	The size of 'struct ifnet' has changed due to the addition of
21236ed21e6SRobert Watson	the IFF_NEEDSGIANT flag (and what it implies).  All kernel
21336ed21e6SRobert Watson	modules implementing network interfaces must be recompiled as
21436ed21e6SRobert Watson	a result.
21536ed21e6SRobert Watson
2166305ac24SSeigo Tanimura20040716:
2176305ac24SSeigo Tanimura	The sound device drivers are renamed.  `sound' is always required,
2186305ac24SSeigo Tanimura	while `snd_*' should be configured accordingly to your hardware.
2196305ac24SSeigo Tanimura	Refer to NOTES for the detail of the drivers.
2206305ac24SSeigo Tanimura
221e623dcb7SMarcel Moolenaar20040710:
222e623dcb7SMarcel Moolenaar	__FreeBSD_version bumped to 502122.
223e623dcb7SMarcel Moolenaar
224e623dcb7SMarcel Moolenaar20040710:
225e623dcb7SMarcel Moolenaar	The console initialization on Alpha has been reworked and is now
226e623dcb7SMarcel Moolenaar	identical to other platforms. This means that the hardcoding of
227e623dcb7SMarcel Moolenaar	the serial console and the debug port has been removed. As such,
228e623dcb7SMarcel Moolenaar	hints are now required for the sio(4) driver to become a console
229e623dcb7SMarcel Moolenaar	or debug port. The NO_SIO option has been decommissioned because
230e623dcb7SMarcel Moolenaar	of this.
231e623dcb7SMarcel Moolenaar
232e623dcb7SMarcel Moolenaar20040710:
233e623dcb7SMarcel Moolenaar	A revamp of the debugging code in the kernel with some visible
234e623dcb7SMarcel Moolenaar	changes beyond just the debugging experience:
235e623dcb7SMarcel Moolenaar	o  The DDB option is now specific to the DDB debugger backend
236e623dcb7SMarcel Moolenaar	   and should not be used any more for conditional compilation
237e623dcb7SMarcel Moolenaar	   of debugging code for when debugging is enabled. Use the KDB
238e623dcb7SMarcel Moolenaar	   option for this.
239e623dcb7SMarcel Moolenaar	o  The WITNESS_DDB, DDB_TRACE and DDB_UNATTENDED options have
240e623dcb7SMarcel Moolenaar	   been renamed to WITNESS_KDB, KDB_TRACE and KDB_UNATTENDED
241e623dcb7SMarcel Moolenaar	   respectively. This is in line with the first bullet.
242e623dcb7SMarcel Moolenaar	o  The remote GDB support has been untangled from DDB and needs
2435bd7ce0aSJens Schweikhardt	   to be enabled separately now. Use the GDB option for this.
244e623dcb7SMarcel Moolenaar	o  The GDB_REMOTE_CHAT option has been removed. Support for this
245e623dcb7SMarcel Moolenaar	   homegrown feature is discontinued. The GDB remote protocol
246e623dcb7SMarcel Moolenaar	   supports console output and it makes sense to use that.
247e623dcb7SMarcel Moolenaar	o  The DDB_NOKLDSYM option has been removed. The DDB debugger
248e623dcb7SMarcel Moolenaar	   now supports both direct symbol table lookups as well as KLD
249e623dcb7SMarcel Moolenaar	   symbol lookups through the linker.
250e623dcb7SMarcel Moolenaar
2516421d1dbSMaksim Yevmenkin20040708:
2526421d1dbSMaksim Yevmenkin	Bluetooth code has been marked as non-i386 specific.
2536421d1dbSMaksim Yevmenkin	__FreeBSD_version has been bumped to 502121 to mark this change.
2546421d1dbSMaksim Yevmenkin
25558af3216SWarner Losh20040702:
25658af3216SWarner Losh	The native preemption has been added to the kernel scheduler.
2575bd7ce0aSJens Schweikhardt	There is some report that the ULE scheduler was broken in some
2585bd7ce0aSJens Schweikhardt	machines and we encourage users using the ULE scheduler either
2595bd7ce0aSJens Schweikhardt	stick with a known good kernel, or temporarily switch to the 4BSD
26058af3216SWarner Losh	scheduler as a workaround.
26158af3216SWarner Losh
262c2dba668SNate Lawson20040630:
2638ed370fdSJulian Elischer	The netgraph ABI version number has been incremented to indicate
2648ed370fdSJulian Elischer	an incompatible change in the ABI. Old netgraph nodes will refuse
265a6c26e1cSBruce M Simpson	to attach until recompiled. Netgraph now uses mbuf tags to move
266a6c26e1cSBruce M Simpson	metadata and this commit removes its home-grown metadata facility.
267a6c26e1cSBruce M Simpson	Nodes should just recompile, unless they use metadata, in which
268a6c26e1cSBruce M Simpson	case the changes are simple; the file ng_ksocket.c serves as an
269a6c26e1cSBruce M Simpson	example of such changes.
2708ed370fdSJulian Elischer
27158af3216SWarner Losh	This also broke i4b, although the compile problem has been papered
27258af3216SWarner Losh	over.
27358af3216SWarner Losh
2748ed370fdSJulian Elischer20040630:
275c2dba668SNate Lawson	ACPI has been updated to disable known-bad BIOS revisions.  A message
2765bd7ce0aSJens Schweikhardt	will be printed on the console indicating that ACPI has been disabled
277c2dba668SNate Lawson	automatically and that the user should use a newer BIOS, if possible.
278c2dba668SNate Lawson	If you think ACPI does work on your system and want to override
279c2dba668SNate Lawson	this (i.e., for testing), set hint.acpi.0.disabled="0" at the
280c2dba668SNate Lawson	loader prompt.
281c2dba668SNate Lawson
2828ee2ac9eSMax Laier20040623:
2835bd7ce0aSJens Schweikhardt	pf was updated to OpenBSD-stable 3.5 and pflogd(8) is privilege
2848ee2ac9eSMax Laier	separated now. It uses the newly created "_pflogd" user/group
2858ee2ac9eSMax Laier	combination. If you plan to use pflogd(8) make sure to run
2868ee2ac9eSMax Laier	mergemaster -p or install the "_pflogd" user and group manually.
2878ee2ac9eSMax Laier
2883db5687dSBrooks Davis20040622:
2893db5687dSBrooks Davis	Network interface cloning has been overhauled.  This change will
2903db5687dSBrooks Davis	require a recompile of modules using cloning and modification of
2913db5687dSBrooks Davis	external ones to the new API.  __FreeBSD_version has been bumped
2923db5687dSBrooks Davis	to 502119 to mark this change.  Additionally, users creating
2933db5687dSBrooks Davis	stf(4) interfaces via "ifconfig stf" will need to update their
2943db5687dSBrooks Davis	scripts as this will create an interface named "stf" instead of
2953db5687dSBrooks Davis	"stf0" and ifconfig will not print "stf0" to stdout.
2963db5687dSBrooks Davis
297e0ae81f3SDag-Erling Smørgrav20040621:
298e0ae81f3SDag-Erling Smørgrav	On 20040524, the /etc/rc.d/nsswitch script was modified to
299e0ae81f3SDag-Erling Smørgrav	automatically create /etc/nsswitch.conf on startup if it did
300e0ae81f3SDag-Erling Smørgrav	not already exist.  Unfortunately, an error in the man page
301e0ae81f3SDag-Erling Smørgrav	was carried over to the script, resulting in incorrect
302e0ae81f3SDag-Erling Smørgrav	nsswitch settings.  The simplest remedy is to remove both
303e0ae81f3SDag-Erling Smørgrav	/etc/nsswitch.conf and /etc/host.conf; they will be recreated
304e0ae81f3SDag-Erling Smørgrav	during the next reboot.
305e0ae81f3SDag-Erling Smørgrav
3064717d22aSJohn Polstra20040614:
3074717d22aSJohn Polstra	The return value of sema_timedwait(9) has been changed to
3084717d22aSJohn Polstra	make it consistent with cv_timedwait(9).  Be sure to recompile
3094717d22aSJohn Polstra	the ips module and any third-party modules which call
3104717d22aSJohn Polstra	sema_timedwait.
3114717d22aSJohn Polstra
3126cb7a382SMax Laier20040613:
3136cb7a382SMax Laier	ALTQ is now linked to the build. This breaks ABI for struct ifnet.
3146cb7a382SMax Laier	Make sure to recompile modules and any userland that makes use of
315df843493SMax Laier	sizeof(struct ifnet). In order to get the altq headers in place
316df843493SMax Laier	please recompile and reinstall world.
3176cb7a382SMax Laier
3182454685eSJulian Elischer20040607:
3192454685eSJulian Elischer	Splitting kern_thread.c into 2 files (adding kern_kse.c)
3202454685eSJulian Elischer	requires that you re-run config after updating your tree.
3212454685eSJulian Elischer
32264fef830SSeigo Tanimura20040601:
32364fef830SSeigo Tanimura	The MIDI drivers have been removed. Until the new module-friendly
32464fef830SSeigo Tanimura	ones are merged, remove or comment out midi and seq from your
32564fef830SSeigo Tanimura	kernel configuration.
32664fef830SSeigo Tanimura
327bb4f06e7SAndre Oppermann20040423:
328bb4f06e7SAndre Oppermann	Due to a new option in ipfw (versrcreach) the ipfw(8) command
329bb4f06e7SAndre Oppermann	needs to be recompiled.  Normal accept/reject rules without
330bb4f06e7SAndre Oppermann	options are not affected but those with options may break until
331bb4f06e7SAndre Oppermann	ipfw(8) is recompiled.
332bb4f06e7SAndre Oppermann
33305641e82SColin Percival20040420:
33405641e82SColin Percival	Due to changes in the callout ABI, kernels compiled after this
33505641e82SColin Percival	date may be incompatible with kernel modules compiled prior to
33605641e82SColin Percival	20040406.
33705641e82SColin Percival
338d0dc9183SWarner Losh20040414:
339d0dc9183SWarner Losh	The PCI bus power state stuff has been turned on.  If this causes
340d0dc9183SWarner Losh	problems for your system, please disable it using the tunable
341d0dc9183SWarner Losh	hw.pci.do_powerstate=0.
342d0dc9183SWarner Losh
343d0dc9183SWarner Losh20040412:
344d0dc9183SWarner Losh	The bulk of the pci problems have been fixed, although the floppy
345d0dc9183SWarner Losh	drive is still broken.
346d0dc9183SWarner Losh
347d0dc9183SWarner Losh20040410:
348d0dc9183SWarner Losh	A substantial update to the pci bus resource and power management
349d0dc9183SWarner Losh	have been committed.  Expect a bumpy ride for a few days until
350d0dc9183SWarner Losh	the unanticipated problems have been resolved.
351d0dc9183SWarner Losh
3528633bbeaSBrooks Davis20040409:
3538633bbeaSBrooks Davis        Due to changes in the the Yarrow initialization process,
3548633bbeaSBrooks Davis        /dev/random needs to be fed before operations requiring
3558633bbeaSBrooks Davis        temp files can succeed in single user mode.  This includes
3568633bbeaSBrooks Davis        running "make installworld". /dev/random may be fed by running
35776c3e0f7SBrooks Davis        "/etc/rc.d/initrandom start" or with 20040415 source by running
3588633bbeaSBrooks Davis        "/etc/rc.d/preseedrandom".
3598633bbeaSBrooks Davis
360d40d033aSRobert Watson20040322:
361d40d033aSRobert Watson	The debug.mpsafenet tunable controls whether the kernel Giant
362d40d033aSRobert Watson	lock is held across the lower levels of the network stack, and
363d40d033aSRobert Watson	by default is turned off.  In the few days following 20040322,
364d40d033aSRobert Watson	the behavior of debug.mpsafenet will change such that this
365d40d033aSRobert Watson	tunable controls Giant over all levels of the network stack.
366d40d033aSRobert Watson	If you are currently setting debug.mpsafenet to 1, you should
367d40d033aSRobert Watson	set it back to 0 (the default) again during the change-over.
368d40d033aSRobert Watson	An additional note will be added to UPDATING when sufficient
369d40d033aSRobert Watson	locking is merged to permit this to take place.
370d40d033aSRobert Watson
371ec9b318eSGarance A Drosehn20040310:
372ec9b318eSGarance A Drosehn	The FreeBSD/sparc64 platform is changing time_t from 32-bits to
373ec9b318eSGarance A Drosehn	64-bits.  This is a very major incompatible change, so people
374ec9b318eSGarance A Drosehn	using FreeBSD/sparc64 *must* read the UPDATING.64BTT file for
375ec9b318eSGarance A Drosehn	detailed instructions on how to make this upgrade.  People
376ec9b318eSGarance A Drosehn	upgrading FreeBSD on other platforms can ignore this event.
377ec9b318eSGarance A Drosehn
378fc28f1ffSMax Laier20040308:
379fc28f1ffSMax Laier	The packet filter (pf) is now installed with the base system. Make
380fc28f1ffSMax Laier	sure to run mergemaster -p before installworld to create required
3814c86458bSDavid E. O'Brien	user account ("proxy"). If you do not want to build pf with your
3824c86458bSDavid E. O'Brien	system you can use the NO_PF knob in make.conf.
383fc28f1ffSMax Laier	Also note that pf requires "options PFIL_HOOKS" in the kernel. The
384fc28f1ffSMax Laier	pf system consists of the following three devices:
385fc28f1ffSMax Laier	device		pf		# required
386fc28f1ffSMax Laier	device		pflog		# optional
387fc28f1ffSMax Laier	device		pfsync		# optional
388fc28f1ffSMax Laier
3893aff5d06SDag-Erling Smørgrav20040303:
3903aff5d06SDag-Erling Smørgrav	If you are having trouble with the libc_r -> libpthread transition
3913aff5d06SDag-Erling Smørgrav	(see the 20040130 entry), place the following lines at the top of
3923aff5d06SDag-Erling Smørgrav	/etc/libmap.conf:
3933aff5d06SDag-Erling Smørgrav
3943aff5d06SDag-Erling Smørgrav	libc_r.so.5		libpthread.so.1
3953aff5d06SDag-Erling Smørgrav	libc_r.so		libpthread.so
3963aff5d06SDag-Erling Smørgrav
3973aff5d06SDag-Erling Smørgrav	This will cause all programs and libraries linked against libc_r
3983aff5d06SDag-Erling Smørgrav	to use libpthread instead.
3993aff5d06SDag-Erling Smørgrav
400fd63c5b3SDag-Erling Smørgrav20040226:
4019d7f8c80SDag-Erling Smørgrav	Some sshd configuration defaults have changed: protocol version 1
402fd63c5b3SDag-Erling Smørgrav	is no longer enabled by default, and password authentication is
403fd63c5b3SDag-Erling Smørgrav	disabled by default if PAM is enabled (which it is by default).
404fd63c5b3SDag-Erling Smørgrav	OpenSSH clients should not be affected by this; other clients may
405fd63c5b3SDag-Erling Smørgrav	have to be reconfigured, upgraded or replaced.
406fd63c5b3SDag-Erling Smørgrav
407714ae42aSBruce M Simpson20040225:
408e07a40f3SBrian Feldman	The ABIs defined in <resolv.h> and <netdb.h> have been updated
409e07a40f3SBrian Feldman	to support improved reentrancy.  Multi-threaded programs that
410e07a40f3SBrian Feldman	reference the "_res" or "h_errno" symbols may experience some
411e07a40f3SBrian Feldman	problems if they are not recompiled.  Single-threaded programs
412e07a40f3SBrian Feldman	should remain unaffected.
413e07a40f3SBrian Feldman
414e07a40f3SBrian Feldman20040225:
415714ae42aSBruce M Simpson	routed has been updated in the base system from the vendor
416714ae42aSBruce M Simpson	sources, routed v2.27, from rhyolite.com. This change means that
417714ae42aSBruce M Simpson	for users who use RIP's MD5 authentication feature, FreeBSD
418714ae42aSBruce M Simpson	-CURRENT's routed is now incompatible with previous versions
419714ae42aSBruce M Simpson	of FreeBSD; however it is now compatible with implementations
420714ae42aSBruce M Simpson	from Sun, Cisco and other vendors.
421714ae42aSBruce M Simpson
422fbd2e692SAndre Oppermann20040224:
423fbd2e692SAndre Oppermann	The tcpcb structure has changed and makes a recompile of libkvm
4245bd7ce0aSJens Schweikhardt	and related userland network utilities necessary.
425fbd2e692SAndre Oppermann
426158b90daSWarner Losh20040222:
427158b90daSWarner Losh	The cdevsw structure has changed in two externally visible ways.
428158b90daSWarner Losh	First, the sense of the D_GIANT flag has changed to D_NEEDSGIANT.
429158b90daSWarner Losh	Second, the d_version field must be filled in with D_VERSION.
430158b90daSWarner Losh	Drivers outside the tree will need to be updated.
431158b90daSWarner Losh
432b7b1e150SMike Makonnen20040207:
433b7b1e150SMike Makonnen	The /etc/rc.d/ttys script has been removed. It is no longer
434b7b1e150SMike Makonnen	necessary since devfs has been mandatory for some time.
435b7b1e150SMike Makonnen
436aca89ee6SDaniel Eischen20040130:
437aca89ee6SDaniel Eischen	libkse has been renamed back to libpthread and is now the
438aca89ee6SDaniel Eischen	default threads library.  The gcc -pthread option has also
439aca89ee6SDaniel Eischen	been changed to link to libpthread instead of libc_r.  For
440aca89ee6SDaniel Eischen	alpha and sparc64 machines, libkse is not renamed and links
441aca89ee6SDaniel Eischen	are installed so that libpthread points to libc_r.  Until
442aca89ee6SDaniel Eischen	the ports system is updated to handle this change, it is
443aca89ee6SDaniel Eischen	recommended that folks install an /etc/libmap.conf(5) that
444aca89ee6SDaniel Eischen	maps libc_r to libpthread.  If you have any binaries or
445aca89ee6SDaniel Eischen	libraries linked to libkse, then it is also recommended
446aca89ee6SDaniel Eischen	that you map libkse to libpthread.  Anyone that is using
447aca89ee6SDaniel Eischen	nvidia supplied drivers and libraries should use a libmap.conf
448aca89ee6SDaniel Eischen	that maps libpthread to libc_r since their drivers/libraries
449aca89ee6SDaniel Eischen	do not work with libpthread.
450aca89ee6SDaniel Eischen
45168b7b3a9SAlex Dupre20040125:
45268b7b3a9SAlex Dupre	ULE has entered into its probationary period as the default scheduler
45368b7b3a9SAlex Dupre	in GENERIC.  For the average user, interactivity is reported to be
45468b7b3a9SAlex Dupre	better in many cases.  On SMP machines ULE will be able to make more
45568b7b3a9SAlex Dupre	efficient use of the available parallel resources.  If you are not
45668b7b3a9SAlex Dupre	running it now, please switch over, replacing the kernel option
45768b7b3a9SAlex Dupre	SCHED_4BSD with SCHED_ULE.
45868b7b3a9SAlex Dupre
459ff46e0deSWarner Losh20040125:
460ff46e0deSWarner Losh	Move LongRun support out of identcpu.c, where it hardly
461ff46e0deSWarner Losh	belongs, into its own file and make it opt-in, not mandatory,
462ff46e0deSWarner Losh	depending on CPU_ENABLE_LONGRUN config(8) option.
463ff46e0deSWarner Losh
464ce41f4bfSRobert Watson20031213:
465ce41f4bfSRobert Watson	src/lib/libc/gen/initgroups.c:1.8 now causes logins to fail
466ce41f4bfSRobert Watson	if the login process is unable to successfully set the
467ce41f4bfSRobert Watson	process credentials to include all groups defined for the
468ce41f4bfSRobert Watson	user.  The current kernel limit is 16 groups; administrators
469ce41f4bfSRobert Watson	may wish to check that users do not have over 16 groups
470ce41f4bfSRobert Watson	defined, or they will be unable to log in.
471ce41f4bfSRobert Watson
472c124fa05SJohn Baldwin20031203:
473c124fa05SJohn Baldwin	The ACPI module has been reactivated.  It is no longer required
474c124fa05SJohn Baldwin	to compile ACPI support into kernels statically.
475c124fa05SJohn Baldwin
4768ad1f5e4SHartmut Brandt20031112:
47730093b05SWarner Losh	The statfs structure has been updated with 64-bit fields to
47830093b05SWarner Losh	allow accurate reporting of multi-terabyte filesystem
47997209ca3SRobert Watson	sizes. You should build world, then build and boot the new kernel
48097209ca3SRobert Watson	BEFORE doing a `installworld' as the new kernel will know about
48197209ca3SRobert Watson	binaries using the old statfs structure, but an old kernel will
48297209ca3SRobert Watson	not know about the new system calls that support the new statfs
4833f631d52SMarcel Moolenaar	structure.
4843f631d52SMarcel Moolenaar	Note that the backwards compatibility is only present when the
4853f631d52SMarcel Moolenaar	kernel is configured with the COMPAT_FREEBSD4 option. Since
4863f631d52SMarcel Moolenaar	even /bin/sh will not run with a new kernel without said option
4873f631d52SMarcel Moolenaar	you're pretty much dead in the water without it. Make sure you
4883f631d52SMarcel Moolenaar	have COMPAT_FREEBSD4!
4893f631d52SMarcel Moolenaar	Running an old kernel after a `make world' will cause programs
4903f631d52SMarcel Moolenaar	such as `df' that do a statfs system call to fail with a bad
4913f631d52SMarcel Moolenaar	system call. Marco Wertejuk <wertejuk@mwcis.com> also reports
4923f631d52SMarcel Moolenaar	that cfsd (ports/security/cfs) needs to be recompiled after
4933f631d52SMarcel Moolenaar	these changes are installed.
49430093b05SWarner Losh
49530093b05SWarner Losh	****************************DANGER*******************************
49630093b05SWarner Losh
49730093b05SWarner Losh	DO NOT make installworld after the buildworld w/o building and
49830093b05SWarner Losh	installing a new kernel FIRST.  You will be unable to build a
49930093b05SWarner Losh	new kernel otherwise on a system with new binaries and an old
50030093b05SWarner Losh	kernel.
50164a18d6fSKirk McKusick
50264a18d6fSKirk McKusick20031112:
5038ad1f5e4SHartmut Brandt	Some netgraph string length constants have been changed. This
5048ad1f5e4SHartmut Brandt	change requires the netgraph kernel modules and all netgraph
5058ad1f5e4SHartmut Brandt	userland components to be in sync. Especially users who require
5068ad1f5e4SHartmut Brandt	netgraph to boot need to make sure to have world and kernel in
5078ad1f5e4SHartmut Brandt	sync before rebooting.
5088ad1f5e4SHartmut Brandt
509c53a5d8fSJohn Baldwin20031111:
510c53a5d8fSJohn Baldwin	Hyperthreading logical CPU's are no longer probed by default
511c53a5d8fSJohn Baldwin	when using the MP Table.  If ACPI is being used, then logical
512c53a5d8fSJohn Baldwin	CPUs will be probed if hyperthreading is enabled in the BIOS.
513c53a5d8fSJohn Baldwin	If ACPI is not being used and hyperthreading is enabled in the
514c53a5d8fSJohn Baldwin	BIOS, logical CPUs can be enabled by building a custom kernel
515c53a5d8fSJohn Baldwin	with the option MPTABLE_FORCE_HTT enabled.
516c53a5d8fSJohn Baldwin
5178bf455a5SJohn Baldwin20031103:
5188bf455a5SJohn Baldwin	The i386 APIC_IO kernel option has been replaced by
5198bf455a5SJohn Baldwin	'device apic'.  The ACPI module has also been temporarily
5202a2cfa95SCeri Davies	disabled, so ACPI must be statically compiled into your
5218bf455a5SJohn Baldwin	kernel using 'device acpi' if you wish to use the ACPI driver.
5228bf455a5SJohn Baldwin
5239bf40edeSBrooks Davis20031031:
5249bf40edeSBrooks Davis	The API and ABI of struct ifnet have been changed by removing
5259bf40edeSBrooks Davis	the if_name and if_unit members and replacing them with
5269bf40edeSBrooks Davis	if_xname, if_dname, and if_dunit.  All network drivers and most
5279bf40edeSBrooks Davis	userland programs which include net/if_var.h must be updated
5289bf40edeSBrooks Davis	and recompiled.  __FreeBSD_version has been bumped to 501113 to
5299bf40edeSBrooks Davis	reflect this change.
5309bf40edeSBrooks Davis
53147a42c7aSPoul-Henning Kamp20030928:
53247a42c7aSPoul-Henning Kamp	Changes to the cdevsw default functions have been made to remove
53347a42c7aSPoul-Henning Kamp	the need to specify nullopen() and nullclose() explicitly.
5345bd7ce0aSJens Schweikhardt	__FreeBSD_version bumped to 501110.
53547a42c7aSPoul-Henning Kamp
53607105342SMax Khon20030926:
53707105342SMax Khon	kiconv(3) has been added. mount_msdosfs(8), mount_ntfs(8) and
53807105342SMax Khon	mount_cd9660(8) need to be in sync with kernel.
53907105342SMax Khon
54017dcd026SSam Leffler20030925:
54117dcd026SSam Leffler	Configuring a system to use IPFILTER now requires that PFIL_HOOKS
54217dcd026SSam Leffler	also be explicitly configured.  Previously this dependency was
54317dcd026SSam Leffler	magically handled through some cruft in net/pfil.h; but that has
54417dcd026SSam Leffler	been removed.  Building a kernel with IPFILTER but not PFIL_HOOKS
54517dcd026SSam Leffler	will fail with obtuse errors in ip_fil.c.
54617dcd026SSam Leffler
547fedf1d01SBruce M Simpson20030923:
548fedf1d01SBruce M Simpson	Fix a bug in arplookup(), whereby a hostile party on a locally
549fedf1d01SBruce M Simpson	attached network could exhaust kernel memory, and cause a system
550fedf1d01SBruce M Simpson	panic, by sending a flood of spoofed ARP requests. See
551fedf1d01SBruce M Simpson	FreeBSD-SA-03:14.arp.
552fedf1d01SBruce M Simpson
553db38f9cbSJacques Vidrine20030915:
554db38f9cbSJacques Vidrine	A change to /etc/defaults/rc.conf now causes inetd to be started
555db38f9cbSJacques Vidrine	with `-C 60' if it is not overridden in /etc/rc.conf.  This
556db38f9cbSJacques Vidrine	causes inetd to stop accepting connections from an IP address
557db38f9cbSJacques Vidrine	that exceeds the rate of 60 connections per minute.
558db38f9cbSJacques Vidrine
559c09d2c2bSMike Makonnen20030829:
560c09d2c2bSMike Makonnen	The following rc.d scripts have been removed and should be
561c09d2c2bSMike Makonnen	deleted from your installation: atm2.sh atm3.sh devdb
562c09d2c2bSMike Makonnen	localdaemons network1 network2 network3. Depending on when
563c09d2c2bSMike Makonnen	you last updated world and used mergemaster(8) you may or
564c09d2c2bSMike Makonnen	may not have problems during the rc boot sequence. The simplest
565c09d2c2bSMike Makonnen	solution is an 'rm -rf /etc/rc.d/*' and then 'mergemaster -i'.
566c09d2c2bSMike Makonnen	The atm2.sh atm3.sh and devdb scripts were removed some time
567c09d2c2bSMike Makonnen	ago, so depending on when you installed -CURRENT these scripts
568c09d2c2bSMike Makonnen	may or may not exist on your system.
569c09d2c2bSMike Makonnen
57017c159dcSSøren Schmidt20030824:
57117c159dcSSøren Schmidt	ATAng has been committed. You need to build world as sys/ata.h
57217c159dcSSøren Schmidt	has changed, and userland atacontrol depends on it.
573f240812bSSøren Schmidt	If you use ATA SW raids you need "device ataraid" in your
574f240812bSSøren Schmidt	kernel config file, as it is no longer pulled in automatically.
57517c159dcSSøren Schmidt
576c1f61aa9SDavid E. O'Brien20030819:
577c1f61aa9SDavid E. O'Brien	The OFW_NEWPCI option has been turned on in the Sparc64 GENERIC kernel.
578c1f61aa9SDavid E. O'Brien	Among other things, this changes the device enumeration to be
579c1f61aa9SDavid E. O'Brien	closer to Solaris.  Be aware that, this can even cause the machine
580c1f61aa9SDavid E. O'Brien	to not boot without manual intervention before the fstab is adjusted.
58169f7bcf3SWarner Losh
58238c962e7SNate Lawson20030728:
58338c962e7SNate Lawson	All current USB and Firewire quirks in da(4) have been deprecated
58438c962e7SNate Lawson	and will be removed for 5.2.  If this causes failure for your
58538c962e7SNate Lawson	umass(4) devices, enable "options DA_OLD_QUIRKS" in your kernel
58638c962e7SNate Lawson	and send the output of "camcontrol inquiry da0" to scsi@freebsd.org
58738c962e7SNate Lawson	so the quirk can be re-enabled.
58838c962e7SNate Lawson
58974111097SWarner Losh20030724:
59074111097SWarner Losh	Problems with entry 20030714 have been corrected and no known issues
59174111097SWarner Losh	with /rescue and -j exist for host systems after this point in time.
59274111097SWarner Losh
593178cf4e9SWarner Losh20030722:
594178cf4e9SWarner Losh	FPU-less support has been removed from FreeBSD.  Chances are you won't
595178cf4e9SWarner Losh	notice.  386+387 support should still work after this change, but
596178cf4e9SWarner Losh	it is now a minimum requirement for the i386 port that you have real
597178cf4e9SWarner Losh	FPU hardware.
598178cf4e9SWarner Losh
599178cf4e9SWarner Losh20030714:
600178cf4e9SWarner Losh	Some people are having problems with changes related to /rescue.
601178cf4e9SWarner Losh	If you are building -j N, you will need to define NO_RESCUE.  Others
602178cf4e9SWarner Losh	will need to define it if /rescue has issues with their environment.
603178cf4e9SWarner Losh	People should report those issues to current@.
604178cf4e9SWarner Losh
605157c629aSWarner Losh20030711:
606157c629aSWarner Losh	gcc was upgraded to 3.3.  You are advised to not build -DNOCLEAN
6078b71efcaSCeri Davies	across this point.  Further, it might be a good idea to remove
60805538fa9SWarner Losh	/usr/obj.
609157c629aSWarner Losh
61074111097SWarner Losh20030610:
61174111097SWarner Losh	Remove deprecated locale names and transition period code
61274111097SWarner Losh	for them, finishing switching to the new scheme. Check your
61374111097SWarner Losh	LANG environment variable.
61474111097SWarner Losh
61574111097SWarner Losh20030609:
61674111097SWarner Losh	CCD has been changed to be a fully GEOMified class.  Kernel
61774111097SWarner Losh	and ccdconfig(8) needs to be in sync, this is particularly
61874111097SWarner Losh	important to remember beforehand if your source tree is on
61974111097SWarner Losh	a ccd device.  Consider making a copy of the old ccdconfig
62074111097SWarner Losh	into /boot/kernel.good or wherever you keep your backup
62174111097SWarner Losh	kernel.
62274111097SWarner Losh
62374111097SWarner Losh20030605:
6246cc6353fSMarcel Moolenaar	There was a small window in which sed(1) was broken.  If you
6256cc6353fSMarcel Moolenaar	happen to have sed(1) installed during that window, which is
6266cc6353fSMarcel Moolenaar	evidenced by an inability to build world with the failure
6276cc6353fSMarcel Moolenaar	given below, you need to manually build and install sed(1)
6286cc6353fSMarcel Moolenaar	(and only sed(1)) before doing anything else. This is a one-
6296cc6353fSMarcel Moolenaar	time snafu. Typical failure mode:
6306cc6353fSMarcel Moolenaar
6316cc6353fSMarcel Moolenaar	In file included from /usr/src/contrib/binutils/bfd/targets.c:1092:
6326cc6353fSMarcel Moolenaar	targmatch.h:7:1: null character(s) ignored
6336cc6353fSMarcel Moolenaar	targmatch.h:12:1: null character(s) ignored
6346cc6353fSMarcel Moolenaar	targmatch.h:16:1: null character(s) ignored
6356cc6353fSMarcel Moolenaar		:
6366cc6353fSMarcel Moolenaar
6376cc6353fSMarcel Moolenaar	The window of "sed(1)-uction" is from Wed Jun 4 15:31:55 2003 UTC
6386cc6353fSMarcel Moolenaar	to Thu Jun 5 12:10:19 2003 UTC (from rev 1.30 to rev 1.31 of
6396cc6353fSMarcel Moolenaar	usr.bin/sed/process.c).
6406cc6353fSMarcel Moolenaar
64152b47445SMark Murray20030505:
64252b47445SMark Murray	Kerberos 5 (Heimdal) is now built by default. Setting
64352b47445SMark Murray	MAKE_KERBEROS5 no longer has any effect. If you do NOT
64452b47445SMark Murray	want the "base" Kerberos 5, you need to set NO_KERBEROS.
64552b47445SMark Murray
646a26df538SWarner Losh20030502:
647a26df538SWarner Losh	groff has been updated.  If you try to do a buildworld and
648a26df538SWarner Losh	get an infinite loop in troff, update to May 4th or newer.  If you
649a26df538SWarner Losh	have a newer kernel than userland, you may need to set the OSRELDATE
650a26df538SWarner Losh	to 500110 in your environment before starting a buildworld.
651a26df538SWarner Losh
6524b065e2cSDoug Barton20030501:
6534b065e2cSDoug Barton	The old rc system has been removed.  Please report any problems
6544b065e2cSDoug Barton	to freebsd-rc@yahoogroups.com, and/or freebsd-current@freebsd.org.
6554b065e2cSDoug Barton	Your personal versions of these files will not be removed, so you can
6564b065e2cSDoug Barton	continue to use them. However, you should take great care when updating,
6574b065e2cSDoug Barton	especially when using mergemaster, since the compatibility code that
6584b065e2cSDoug Barton	utilizes these old scripts has also been removed.
6594b065e2cSDoug Barton
66081cda3d9SWarner Losh20030423:
66181cda3d9SWarner Losh	A bug has been fixed in /dev/devctl which would cause devd
66281cda3d9SWarner Losh	to hang on boot, were it not for a workaround in devd.  The
66381cda3d9SWarner Losh	work around in devd will be removed around 20030507.  You
66481cda3d9SWarner Losh	have until then to upgrade your kernel before updating
66581cda3d9SWarner Losh	userland.  In general, you should have a userland and
66681cda3d9SWarner Losh	kernel that's in sync with each other.  However, given the
66781cda3d9SWarner Losh	effects of this bug (hang on boot when starting devd), some
66881cda3d9SWarner Losh	allowances are made.
66981cda3d9SWarner Losh
67047a657d1SRuslan Ermilov20030329:
67147a657d1SRuslan Ermilov	Alphas with libc from between 20030312 and 20030329 exhibit
67247a657d1SRuslan Ermilov	floating point exceptions (FPEs), most notably in awk(1)
67347a657d1SRuslan Ermilov	while upgrading the system through a buildworld.
67447a657d1SRuslan Ermilov
67547a657d1SRuslan Ermilov	So, to successfully upgrade your Alpha, you must either
67647a657d1SRuslan Ermilov	downgrade your libc.so to a pre-20030312 version, or update
67747a657d1SRuslan Ermilov	/usr/share/mk/bsd.cpu.mk to revision 1.26 which adds -mieee
67847a657d1SRuslan Ermilov	to CFLAGS, then forcibly rebuild and install libc:
67947a657d1SRuslan Ermilov
68047a657d1SRuslan Ermilov	cd /usr/src/lib/libc && \
68147a657d1SRuslan Ermilov	    make cleandir && make obj && \
68247a657d1SRuslan Ermilov	    make -DNOMAN -DNOPROFILE all && \
68347a657d1SRuslan Ermilov	    make -DNOMAN -DNOPROFILE install
68447a657d1SRuslan Ermilov
6855d2af00cSGregory Neil Shapiro20030208:
6865d2af00cSGregory Neil Shapiro	sendmail 8.12.7 has been imported.  It has one important
6875d2af00cSGregory Neil Shapiro	change for IPv6 users.  The default submit.mc now uses
6885d2af00cSGregory Neil Shapiro	'[127.0.0.1]' instead of 'localhost' meaning only IPv4 is
6895d2af00cSGregory Neil Shapiro	used to connect to the MTA.  Users on IPv6-only machines
6905d2af00cSGregory Neil Shapiro	will need to edit /etc/mail/submit.mc appropriately.
6915d2af00cSGregory Neil Shapiro
6925d2af00cSGregory Neil Shapiro20030128:
6939db58771SPoul-Henning Kamp	NODEVFS option has been removed and DEVFS thereby made standard.
694ca22e652SJens Schweikhardt	This makes all references to MAKEDEV obsolete, and they should
6959db58771SPoul-Henning Kamp	be removed when convenient.
6969db58771SPoul-Henning Kamp
6978d9b3f57SJake Burkholder20030126:
6988d9b3f57SJake Burkholder	The name of the device for the ofw console has changed, sparc64 users
6998d9b3f57SJake Burkholder	must run mergemaster to update their installed /etc/ttys.
7008d9b3f57SJake Burkholder
7011c5efda5SJeff Roberson20030125:
7021c5efda5SJeff Roberson	The scheduler framework has grown a second scheduler and consequently
7031c5efda5SJeff Roberson	you must specify one and only one scheduler in your kernel config.
704ca22e652SJens Schweikhardt	The cvs config files have been updated to use the old scheduler
7051c5efda5SJeff Roberson	which may be selected via 'options SCHED_4BSD'.  If you would like
7061c5efda5SJeff Roberson	to try the new, much more experimental, scheduler please try
7071c5efda5SJeff Roberson	'options SCHED_ULE' and contribute to the arch@ discussion.
7081c5efda5SJeff Roberson
7099d1d64f5SWarner Losh20030115:
7109d1d64f5SWarner Losh	A new version of the wi driver has been imported into the tree.
7119d1d64f5SWarner Losh	One now must have device wlan in the config file for it to operate
7129d1d64f5SWarner Losh	properly.
7139d1d64f5SWarner Losh
714c9fdb80aSWarner Losh	In addition, there have been some changes to how wi devices are
715c9fdb80aSWarner Losh	configured for point to point links to bring it more in line
716c9fdb80aSWarner Losh	with the former way of doing things, as well as compatibility
717c9fdb80aSWarner Losh	with NetBSD.
718c9fdb80aSWarner Losh
719161dc364SAlexander Kabaev20021222:
720161dc364SAlexander Kabaev 	For a period after the GCC 3.2.1 import (from 12/04 to 12/22), GCC
721161dc364SAlexander Kabaev 	used an incompatible form of ABI for returning structures and unions
722161dc364SAlexander Kabaev 	which FreeBSD's GCC maintainers were not aware of relative to previous
723161dc364SAlexander Kabaev 	versions of FreeBSD.  We have gone back to the ABI for now, and any
724161dc364SAlexander Kabaev 	code compiled which is required to interoperate with other code (not
725161dc364SAlexander Kabaev 	built at the same time) returning structs or unions should be
72684cc83efSAlexander Kabaev	rebuilt.
727161dc364SAlexander Kabaev
728fb4c8061SMartin Blapp20021216:
729fb4c8061SMartin Blapp	A name change in /etc/netconfig has been reverted to stay
73089056245SJens Schweikhardt	compatible with suns TIRPC and also with NetBSD. You need
731fb4c8061SMartin Blapp	to run mergemaster after make world. A new libc does still work
7329d5abbddSJens Schweikhardt	with an outdated /etc/netconfig for some time, but you'll get
733fb4c8061SMartin Blapp	a warning. This warning will be removed in 20030301.
734fb4c8061SMartin Blapp
73517d47eb3SGiorgos Keramidas20021202:
73617d47eb3SGiorgos Keramidas	The recent binutils upgrade marks a kernel flag day on
73717d47eb3SGiorgos Keramidas	sparc64: modules built with the old binutils will not work
73817d47eb3SGiorgos Keramidas	with new kernels and vice versa. Mismatches will result in
73917d47eb3SGiorgos Keramidas	panics.  Make sure your kernel and modules are in sync.
74017d47eb3SGiorgos Keramidas
741a4459294SBill Fenner20021029:
742a4459294SBill Fenner	The value of IPPROTO_DIVERT has changed.  Make sure to keep
743a4459294SBill Fenner	your kernel, netstat, natd and any third-party DIVERT
744a4459294SBill Fenner	consumers in sync.
745a4459294SBill Fenner
746fc8c157fSWarner Losh20021024:
747c57404feSRuslan Ermilov	Old, compatibility slices have been removed in GEOM kernels.
748c57404feSRuslan Ermilov	This means that you will have to update your /etc/fstab to
749c57404feSRuslan Ermilov	not use disk devices of the form /dev/ad0a.  Instead, you
750c57404feSRuslan Ermilov	now must specify /dev/ad0s1a, or whatever slice your FreeBSD
751c57404feSRuslan Ermilov	partition really is on.  The old device names have gone
752c57404feSRuslan Ermilov	away, so if you use them anywhere else, you must also adjust
753c57404feSRuslan Ermilov	those uses.  (This doesn't affect the disks formatted in
754c57404feSRuslan Ermilov	the ``dangerously-dedicated'' mode.)
75569f7bcf3SWarner Losh
756fd9e8bdaSAndrew Gallatin20021023:
757fd9e8bdaSAndrew Gallatin	Alphas with kernels from between 20020830 and 20021023 and/or
758fd9e8bdaSAndrew Gallatin	rtld (ld-elf.so.1) older than 20021023 may experience problems
759fd9e8bdaSAndrew Gallatin	with groff while doing a buildworld (kernel: "out of memory",
760fd9e8bdaSAndrew Gallatin	fixed in rev 1.129 of kern/imgact_elf.c; rtld: "too few PT_LOAD
761fd9e8bdaSAndrew Gallatin	segments", fixed in rev 1.8 of libexec/rtld-elf/map_object.c).
762fd9e8bdaSAndrew Gallatin
763fd9e8bdaSAndrew Gallatin	So, to successfully upgrade your Alpha, you must either
764fd9e8bdaSAndrew Gallatin	upgrade your kernel and rtld first (which might be a bit
765fd9e8bdaSAndrew Gallatin	tricky), or avoid running the bootstrapped groff during the
766fd9e8bdaSAndrew Gallatin	"transitional" buildworld.  To avoid running groff during the
767fd9e8bdaSAndrew Gallatin	transitional upgrade run make buildworld with -DNOMAN,
768fd9e8bdaSAndrew Gallatin	-DNO_SHAREDOCS, and -DNO_LPR.
769fd9e8bdaSAndrew Gallatin
770f8a4c901SWarner Losh20020831:
771f8a4c901SWarner Losh	gcc has been upgraded to 3.2.  It is not all binary compatible
772f8a4c901SWarner Losh	with earlier versions of gcc for c++ programs.  All c++
773f8a4c901SWarner Losh	programs and libraries need to be recompiled.
774f8a4c901SWarner Losh
775f8a4c901SWarner Losh	Also, if you encounter g++ issues, rm /usr/include/g++/* before
776f8a4c901SWarner Losh	doing an installworld to make sure that stale files are removed.
777f8a4c901SWarner Losh
778c2248fa2SJens Schweikhardt20020827:
779c2248fa2SJens Schweikhardt	Our /etc/termcap now has all the entries from the XFree86 xterm
780c2248fa2SJens Schweikhardt	almost unchanged. This means xterm now supports color by default.
781c2248fa2SJens Schweikhardt	If you used TERM=xterm-color in the past you now should use
782c2248fa2SJens Schweikhardt	TERM=xterm. (xterm-color will lead to benign warnings).
783c2248fa2SJens Schweikhardt
7840d533e43SRuslan Ermilov20020815:
7850d533e43SRuslan Ermilov	A "bug" in gcc(1) that was hiding warning in system headers was
7860d533e43SRuslan Ermilov	fixed.  It's probably time to add -DNO_WERROR to your make line
7870d533e43SRuslan Ermilov	again.
7880d533e43SRuslan Ermilov
78933c1de7dSRuslan Ermilov20020729:
79033c1de7dSRuslan Ermilov	COPY is being deprecated.  The 20010530 change was reverted, as
79133c1de7dSRuslan Ermilov	it causes far more pain than was expected, and to always compare
79233c1de7dSRuslan Ermilov	before installing, please use INSTALL="install -C" again.  The
79333c1de7dSRuslan Ermilov	-C option is now silently ignored when used with the -d option.
79433c1de7dSRuslan Ermilov
7952b877facSJulian Elischer20020702:
7962b877facSJulian Elischer	Problems with libc_r clients like KDE and GNOME have been resolved.
7972b877facSJulian Elischer	There are still some minor problems with some signals but the
7982b877facSJulian Elischer	system is stable enough for general use again. SMP is less so than UP
7992b877facSJulian Elischer	but each can successfully complete multiple buildworlds.
8002b877facSJulian Elischer	Libkvm needs to be recompiled due to KSE.
8012b877facSJulian Elischer
80206596d37SWarner Losh20020701:
80306596d37SWarner Losh	Now would be a bad time to upgrade.  Something in or near the
80406596d37SWarner Losh	KSE commit totally broke programs using libc_r like KDE and
80506596d37SWarner Losh	GNOME.
80606596d37SWarner Losh
80795ba4330SJacques Vidrine20020511:
80895ba4330SJacques Vidrine	The k5su utility installed as part of Kerberos 5 is no longer
80995ba4330SJacques Vidrine	installed with the set-user-ID bit set by default.  Add
81095ba4330SJacques Vidrine	ENABLE_SUID_K5SU=yes to /etc/make.conf to have it installed
81195ba4330SJacques Vidrine	with the set-user-ID bit set.
81295ba4330SJacques Vidrine
813a81da3c9SDavid E. O'Brien20020510:
814f50caf6fSDavid E. O'Brien	Gcc 3.1 debugging format (cc -g) has changed from STABS to DWARF2.
815f50caf6fSDavid E. O'Brien	Unfortunately our native GDB (at version 4.18) does not understand
8164b683fb2SRobert Watson	the DWARF2 debugging format.  Thus you must use `gcc -gstabs+' to
817f50caf6fSDavid E. O'Brien	generated debugging information for our native GDB.
818f50caf6fSDavid E. O'Brien
819f50caf6fSDavid E. O'Brien20020510:
820a81da3c9SDavid E. O'Brien	Due to the way CVS works, it may not properly update src/contrib/gcc
821a81da3c9SDavid E. O'Brien	to the 3.1 sources.  The easiest fix is to `rm -rf' src/contrib/gcc
822a81da3c9SDavid E. O'Brien	and then do a cvs update.
823a81da3c9SDavid E. O'Brien
824528a0ef5SJacques Vidrine20020421:
825528a0ef5SJacques Vidrine	When exec'ing set[ug]id executables, the kernel now ensures that the
826528a0ef5SJacques Vidrine	stdio file descriptors (0..2) are open.  See FreeBSD-SA-02:23.stdio.
827528a0ef5SJacques Vidrine
82885aa5a2eSGregory Neil Shapiro20020404:
82985aa5a2eSGregory Neil Shapiro	New sendmail startup scripts have been installed to make it
83085aa5a2eSGregory Neil Shapiro	easier to use alternative MTAs with FreeBSD.  Setting the rc.conf
83185aa5a2eSGregory Neil Shapiro	variable sendmail_enable to "NO" no longer prevents any sendmail
83285aa5a2eSGregory Neil Shapiro	daemons from starting.  Instead, either set sendmail_enable to
83385aa5a2eSGregory Neil Shapiro	"NONE" or change mta_start_script to a script for starting
83485aa5a2eSGregory Neil Shapiro	an alternative MTA.  Setting mta_start_script to "" will
83585aa5a2eSGregory Neil Shapiro	also prevent any MTA from being started at boot.
83685aa5a2eSGregory Neil Shapiro
8378f1e4358SRuslan Ermilov20020403:
8388f1e4358SRuslan Ermilov	UCONSOLE is no longer a valid kernel option.
8398f1e4358SRuslan Ermilov
8402292c02eSWarner Losh20020315:
8412292c02eSWarner Losh	FreeBSD 5.0 DP-1 was basically branched today.
8422292c02eSWarner Losh
84369f7bcf3SWarner Losh20020225:
84469f7bcf3SWarner Losh	Warnings are now errors in the kernel.  Unless you are a developer,
84569f7bcf3SWarner Losh	you should add -DNO_WERROR to your make line.
84669f7bcf3SWarner Losh
8478f35c493SWarner Losh20020217:
8488f35c493SWarner Losh	sendmail 8.12.2 has been imported.  The sendmail binary is no
8498f35c493SWarner Losh	longer a set-user-ID root binary and the infrastructure to support
8508f35c493SWarner Losh	command line mail submission has changed.  Be sure to run
8518f35c493SWarner Losh	mergemaster (especially for updating /etc/rc, /etc/defaults/rc.conf,
8528f35c493SWarner Losh	and /etc/mail) and read /etc/mail/README for more details.
8538f35c493SWarner Losh
854835284beSWarner Losh	Due to the import of sendmail 8.12.2, a new user and group are
855835284beSWarner Losh	required in order for sendmail to run as a set-group-ID
856835284beSWarner Losh	binary.  A 'make installworld' will use the new user and group
857835284beSWarner Losh	to set the owner and group of /var/spool/clientmqueue and will
858835284beSWarner Losh	fail if the new user and group do not exist.  The 'smmsp' user
859835284beSWarner Losh	and group must be merged from src/etc/group and
860835284beSWarner Losh	src/etc/master.passwd before using 'make installworld'.
861835284beSWarner Losh	'mergemaster -p' will do this.  You may need to install
862835284beSWarner Losh	mergemaster before this will work if you are updating from a
863835284beSWarner Losh	very old version of current.  The updating recipe has changed
864835284beSWarner Losh	as of this date.
865835284beSWarner Losh
866fa9401c1SWarner Losh20020112:
867fa9401c1SWarner Losh	The preferred configuration method for PAM is now /etc/pam.d/
868fa9401c1SWarner Losh	rather than /etc/pam.conf.  If you have an unmodified
869fa9401c1SWarner Losh	pam.conf, just delete it after your next mergemaster run.  If
870fa9401c1SWarner Losh	you have local modifications, you can use
871fa9401c1SWarner Losh	/usr/src/etc/pam.d/convert.pl to incorporate them into your
872fa9401c1SWarner Losh	/etc/pam.d.
873fa9401c1SWarner Losh
874fa9401c1SWarner Losh	Please see the following url for more details:
875fa9401c1SWarner Loshhttp://www.freebsd.org/cgi/mid.cgi?db=mid&id=<xzp6667fyoa.fsf@flood.ping.uio.no>
87647d0d01fSWarner Losh20011229:
87747d0d01fSWarner Losh	If anyone here is already using the new rc.conf(5) variable
87847d0d01fSWarner Losh	networkfs_types, please note that it has changed
87947d0d01fSWarner Loshhttp://www.freebsd.org/cgi/mid.cgi?db=mid&id=<9744.1009655556@axl.seasidesoftware.co.za>
88047d0d01fSWarner Losh
881514318a8SWarner Losh20011220:
882514318a8SWarner Losh	sys/i4b/driver/i4b_ispppsubr.c has been retired.  This file
883514318a8SWarner Losh	started out its life in the ISDN4BSD project as an offspring
884514318a8SWarner Losh	from sys/net/if_spppsubr.c, which eventually got a life of its
885514318a8SWarner Losh	own.  All the accumulated features and bug fixes of the i4b
886514318a8SWarner Losh	version have now been merged back into the base system's
887514318a8SWarner Losh	version now.  The only user-visible change resulting from this
888514318a8SWarner Losh	is that i4b's sppp(4) interfaces are to be managed with
889514318a8SWarner Losh	spppcontrol(8) again, since ispppcontrol(8) has been retired
890514318a8SWarner Losh	as well.  (There has never been rc file support for
891514318a8SWarner Losh	ispppcontrol in -current, but only in -stable.  That will be
892514318a8SWarner Losh	reverted by the time the changes are MFCed.)
893514318a8SWarner Losh
894514318a8SWarner Losh20011215:
895514318a8SWarner Losh	The fdc(4) driver has been updated and now automatically
896514318a8SWarner Losh	recognizes media in `standard' formats (like 1440 KB and
897514318a8SWarner Losh	720 KB for a 3.5" high-density drive) when accessing the
898514318a8SWarner Losh	default device node (e. g. /dev/fd0).  The old variety of
899514318a8SWarner Losh	floppy device nodes /dev/fd*.* is no longer present by
900514318a8SWarner Losh	default, devices can be created (in DEVFS) on demand.  They
901514318a8SWarner Losh	will need to be customized then for `odd' densities using
902514318a8SWarner Losh	fdcontrol(8).
903514318a8SWarner Losh
9042d22e2bfSWarner Losh20011209:
9052d22e2bfSWarner Losh	The bugs in procfs' debugging support code have been fixed,
9062d22e2bfSWarner Losh	and truss(1) now works again.
9072d22e2bfSWarner Losh
9089e0428e2SWarner Losh20011207:
9099e0428e2SWarner Losh	Daily security checks have been split out to use the periodic(8)
9109e0428e2SWarner Losh	scripts.  Some change in configuration may be necessary.  Please
9119e0428e2SWarner Losh	see
9129e0428e2SWarner Loshhttp://www.freebsd.org/cgi/mid.cgi?db=mid&id=<20011207155805.R8975@blossom.cjclark.org>
9139e0428e2SWarner Losh	for details.
9149e0428e2SWarner Losh
9159bab8c59SWarner Losh20011204:
9169bab8c59SWarner Losh	sos added VCD/SVCD support to ata driver and that needs the
9179bab8c59SWarner Losh	kernel and burncd to be in sync.
9189bab8c59SWarner Losh
919e57d8b01SWarner Losh20011203:
920e57d8b01SWarner Losh	The procfs pseudo-filesystem has now been converted to use the
921e57d8b01SWarner Losh	pseudofs framework.  If you have 'options PROCFS' in your
922e57d8b01SWarner Losh	kernel config, you'll need to add 'options PSEUDOFS' if it's
923e57d8b01SWarner Losh	not there already.
924e57d8b01SWarner Losh
925e57d8b01SWarner Losh	This change temporarily breaks truss(1); use ktrace(1) instead
926e57d8b01SWarner Losh	until the issue has been resolved.
927e57d8b01SWarner Losh
928b001d36fSJacques Vidrine20011202:
929b001d36fSJacques Vidrine	A security hole in OpenSSH involving `UseLogin yes' has been
930b001d36fSJacques Vidrine	patched.
931b001d36fSJacques Vidrine
9324b676ec1SWarner Losh20011126:
9334b676ec1SWarner Losh	You need to remove /usr/obj/.../usr.bin/tip before rebuilding
9345ebbf43eSWarner Losh	after this date.  You need to do this only once.
9354b676ec1SWarner Losh
936d961e462SWarner Losh20011103:
937d961e462SWarner Losh	Most of the awk issues have been resolved.  Some rough
938d961e462SWarner Losh	edges may be left, but for the most part things should be
9394b676ec1SWarner Losh	back to "normal." For CURRENT's usual definition of "normal."
940d961e462SWarner Losh
941d961e462SWarner Losh20011030:
942d961e462SWarner Losh	Awk has been upgraded to the one true awk from bell labs.  Expect
943d961e462SWarner Losh	choppy waves in the upgrade process.
944d961e462SWarner Losh
9451fe003b6SWarner Losh20011030:
946a4b6fda0SWarner Losh	The asr driver problem has been resolved.
9471fe003b6SWarner Losh
9481fe003b6SWarner Losh20011027:
9491fe003b6SWarner Losh	Due to changes in other parts of the system, the asr driver
9501fe003b6SWarner Losh	now causes the system to panic on boot.  Do not use it pending
9511fe003b6SWarner Losh	correction.  Comment it out of any kernel config file that you
9521fe003b6SWarner Losh	try to use from this date forward.
9531fe003b6SWarner Losh
9541fe003b6SWarner Losh20011025:
9551fe003b6SWarner Losh	When crossbuilding, use TARGET=xxx where you used to use
9561fe003b6SWarner Losh	MACHINE=xxx.  You don't need to set TARGET_ARCH and TARGET,
9571fe003b6SWarner Losh	unless you are changing both of them.  To cross build pc98 on
9581fe003b6SWarner Losh	an alpha, for example, you need to set TARGET=pc98 and
9591fe003b6SWarner Losh	TARGET_ARCH=i386.
9601fe003b6SWarner Losh
961d05f9643SWarner Losh20011001:
962d05f9643SWarner Losh	The kernel interface that burncd depends on has changed.
963d05f9643SWarner Losh	You must recompile both the kernel and userland applications
964d05f9643SWarner Losh	at the same time.
965d05f9643SWarner Losh
96658970f85SWarner Losh20010929:
96758970f85SWarner Losh	When crossbuilding, please set TARGET_ARCH rather than
96858970f85SWarner Losh	MACHINE_ARCH to indicate the target.  In the future, one will
96958970f85SWarner Losh	set TARGET_MACHINE where you set MACHINE now.  At the moment,
97058970f85SWarner Losh	setting MACHINE alone for same MACHINE_ARCH machines works
9719d5abbddSJens Schweikhardt	(eg, you can build pc98 on an i386 machine and vice versa).
97258970f85SWarner Losh
97358970f85SWarner Losh20010927:
97458970f85SWarner Losh	Some weird problems result from using ACPI on some machines.
97558970f85SWarner Losh	To disable ACPI you can add
97666ff0e67SMax Khon		hint.acpi.0.disabled="1"
97758970f85SWarner Losh	to /boot/loader.conf (or by putting set X=Y at the boot
97858970f85SWarner Losh	loader "ok" prompt).
97958970f85SWarner Losh
98058970f85SWarner Losh	Alternatively, you can remove it from /boot/kernel/acpi.ko
98158970f85SWarner Losh	or use the MODULES_OVERRIDE function in your kernel config
98258970f85SWarner Losh	file and not list acpi in that list.
983378f4486SAlfred Perlstein
9845119d237SWarner Losh20010924:
9855119d237SWarner Losh	The buildworld has been fixed.  You may need to install
9865119d237SWarner Losh	the 4.x compatibility libraries for some old binaries
9878b039fffSWarner Losh	to work.  Add COMPAT4X=true to your /etc/make.conf to
9888b039fffSWarner Losh	get them installed on every installworld, or execute the
9898b039fffSWarner Losh	following to get them installed only once:
9908b039fffSWarner Losh		cd src/lib/compat/compat4x.<arch>
99158970f85SWarner Losh		make all install
9928b039fffSWarner Losh	You will see ``__stdoutp undefined'' until you do this.
9935119d237SWarner Losh
9943c293725SWarner Losh20010919:
9953c293725SWarner Losh	There's a bug in the world build process.  The cross-tools
9963c293725SWarner Losh	are build with the NEW headers, but the OLD libc.a.  This
9973c293725SWarner Losh	leads to all kinds of problems with the new libc.  A temporary
998772730c7SWarner Losh	workaround is to add
9993c293725SWarner Losh		CFLAGS="-O -pipe -D_OLD_STDIO"
10003c293725SWarner Losh	before building world when upgrading from 4.x to current.  This
10013c293725SWarner Losh	can be removed afterwards.
10023c293725SWarner Losh
10033c293725SWarner Losh	A proper fix to the buildworld target is needed.
10043c293725SWarner Losh
10053c293725SWarner Losh20010918:
10063c293725SWarner Losh	Peter has committed his new kthread nfs client/server code.
10073c293725SWarner Losh	NFS may be unstable after this date.
10083c293725SWarner Losh
10093c293725SWarner Losh20010912:
10103c293725SWarner Losh	KSE has hit the tree.  Lots of things are now different in
10113c293725SWarner Losh	the kernel.  While a few problems were introduced in the
10123c293725SWarner Losh	initial commit, most of the major ones have been found and
10133c293725SWarner Losh	corrected.
10143c293725SWarner Losh
10153c293725SWarner Losh20010901:
10163c293725SWarner Losh	In OLDCARD, CardBus bridges appear to be stable.  The work
10173c293725SWarner Losh	arounds described in the 20010604 entry are now no longer
10183c293725SWarner Losh	necessary and will be ignored.  Most insert/remove problems
10193c293725SWarner Losh	have been rectified around this date.
10203c293725SWarner Losh
102198b17b95SWarner Losh20010823:
102298b17b95SWarner Losh 	named now runs as user bind and group bind rather than as
102398b17b95SWarner Losh 	root.  If named_enable is set to YES in /etc/rc.conf, ensure
102498b17b95SWarner Losh 	that user bind is available in /etc/passwd (using vipw(8))
102598b17b95SWarner Losh 	and that group bind is available in /etc/group.  Also make
102698b17b95SWarner Losh 	sure that user or group bind has read (and not write)
102798b17b95SWarner Losh 	permission for your name server configuration and that it
102898b17b95SWarner Losh 	has read and write permission for your slave zone files and
102998b17b95SWarner Losh 	directory.
103098b17b95SWarner Losh
103198b17b95SWarner Losh 	If you wish to continue to run named as root (a less secure
103298b17b95SWarner Losh 	alternative), add a line to /etc/rc.conf saying
103398b17b95SWarner Losh
103498b17b95SWarner Losh 		named_flags=
103598b17b95SWarner Losh
10367b9786edSMark Murray20010709:
10377b9786edSMark Murray	The PAM libraries have had an API upgrade that is beyond
10387b9786edSMark Murray	the ability of the shared library major number to handle.
10397b9786edSMark Murray	It is manifested by PAM-using ports dumping core. The
10407b9786edSMark Murray	solution is to rebuild those ports.
10417b9786edSMark Murray
10421d28950eSWarner Losh20010628:
10431d28950eSWarner Losh	The kernel compile module has moved from src/sys/compile/FOO
10441d28950eSWarner Losh	to src/sys/${MACHINE}/compile/FOO.
10451d28950eSWarner Losh
1046e72fd46aSWarner Losh20010625:
104798b17b95SWarner Losh	The pccard modem issue from 20010613 has been corrected.
104898b17b95SWarner Losh	OLDCARD support is still a little weak in -current.  slot 1 is
104998b17b95SWarner Losh	known not to work on some TI based cardbus bridges.  Some
105098b17b95SWarner Losh	cardbus bridges do not properly detect insert/removal events.
105198b17b95SWarner Losh	IRQ configuration needs more safety belts.
105216de1a07SWarner Losh
10530d415dffSWarner Losh20010617:
1054e72fd46aSWarner Losh	Softupdates problems have been corrected.
10550d415dffSWarner Losh
10560d415dffSWarner Losh20010614:
10570d415dffSWarner Losh	Peter ripped out the linkerset support.  You must, as always,
10580d415dffSWarner Losh	rerun config after you cvsup if you are using the traditional
10590d415dffSWarner Losh	kernel building methods.
10600d415dffSWarner Losh
10618b9959adSWarner Losh20010613:
10628b9959adSWarner Losh	pccard modems may not work with current after 20010604 date.  Some
10638b9959adSWarner Losh	do, others result in panics.  *MAKE*SURE* that you update your
1064e72fd46aSWarner Losh	config and /etc/rc.conf ala the 20010604 entry, or you will have
1065e72fd46aSWarner Losh	problems (this issue will be fixed, it just hasn't been yet).
10668b9959adSWarner Losh
1067e72fd46aSWarner Losh20010613:
10688b9959adSWarner Losh	SOFTUPDATES seem to be broken since the middle of May or so.  Do not
1069e72fd46aSWarner Losh	use them in current.  You can disable softupdates on all mounted
1070e72fd46aSWarner Losh	partitions, or remove SOFTUPDATES the kernel config file.
10718b9959adSWarner Losh
10720d415dffSWarner Losh20010612:
10730d415dffSWarner Losh	After Peter's commits to the hints code, people have been noticing
10740d415dffSWarner Losh	that certain devices are attached (or try to) twice.  This is due
10750d415dffSWarner Losh	to having both static hints as well as a /boot/device.hints.  To
10760d415dffSWarner Losh	work around this issue, please use only one or the other mechanism
10770d415dffSWarner Losh	until this bug is fixed.
10780d415dffSWarner Losh
1079e72fd46aSWarner Losh	Please note that a feature of config is that if you have config
1080e72fd46aSWarner Losh	file FOO and FOO.hints, it automatically adds FOO.hints to the
1081ca22e652SJens Schweikhardt	hints.c file, whether you want it to or not.
1082e72fd46aSWarner Losh
10830d415dffSWarner Losh20010610:
10840d415dffSWarner Losh	Locale names have changed to match other systems better.
10850d415dffSWarner Losh
10866ccdb5e4SWarner Losh20010604:
10876ccdb5e4SWarner Losh	pccard support for pci cards has been committed.  You must change
10886ccdb5e4SWarner Losh	your /etc/pccard.conf irq lines.  It must match the irq used by
10896ccdb5e4SWarner Losh	pcic device.  Interrupt storms may result if you fail to do this.
10903590182eSWarner Losh	Interrupt storms look a lot like a hang.
10913590182eSWarner Losh
10923590182eSWarner Losh	You must also install a new pccardd, otherwise you will get an
10933590182eSWarner Losh	interrupt storm at card reset time (just after it tells you what
10943590182eSWarner Losh	it is).
10953590182eSWarner Losh
10963590182eSWarner Losh	pccardd_flags="-I" is necessary for the time being.  It tells pccardd
10973590182eSWarner Losh	not to ask the kernel if the interrupt is really free or not before
10983590182eSWarner Losh	using it.  You can either change the /etc/pccard.conf irq lines to
10993590182eSWarner Losh	match pcic, or add "-i X" to the pccardd_flags.
11006ccdb5e4SWarner Losh
11010bc62786SWarner Losh20010530:
11020bc62786SWarner Losh	INSTALL=install -C is being deprecated.  If you want to do this,
11030bc62786SWarner Losh	use COPY=-C instead.  The former method will be supported for only
11040bc62786SWarner Losh	a limited time.  If you see
11050bc62786SWarner Losh
11060bc62786SWarner Loshinstall: warning: the -d and -C options may not be specified together
11070bc62786SWarner Losh
11080bc62786SWarner Losh	in your makeworld, then you need to migrate towards using
11090bc62786SWarner Losh	COPY=-C.
11100bc62786SWarner Losh
111168a38c6cSWarner Losh20010525:
1112b6609bbbSWarner Losh	It appears that vm is now stable enough to use again.  However,
1113c4f4a728SWarner Losh	there may be other problems, so caution is still urged.  alpha
1114c4f4a728SWarner Losh	definitely is in bad shape.
111568a38c6cSWarner Losh
1116ed0f29caSWarner Losh20010521:
1117ca22e652SJens Schweikhardt	Minor repo damage has happened.  This may cause problems
1118ed0f29caSWarner Losh	with cvsup of ports.  If you get errors, please see
1119ed0f29caSWarner Losh	http://www.FreeBSD.org/cgi/query-pr.cgi?pr=27495
1120ed0f29caSWarner Losh	at the bottom for details on a workaround.  The error message
1121ed0f29caSWarner Losh	is
1122ed0f29caSWarner LoshUpdater failed: Cannot delete "/usr/ports/www/jakarta-tomcat/files": Directory not empty
1123ed0f29caSWarner Losh
112480c16af9SWarner Losh20010520:
112568a38c6cSWarner Losh	Vm and/or swapping are busted on -current.  Please be patient.
112680c16af9SWarner Losh
112780c16af9SWarner Losh20010519:
112880c16af9SWarner Losh	pccard has had much reorganizational work done to it over
112980c16af9SWarner Losh	the past few days.  Everything should still work, but if
113080c16af9SWarner Losh	not, please contact imp@freebsd.org.
113180c16af9SWarner Losh
1132a45f2d05SWarner Losh20010517:
1133a45f2d05SWarner Losh	ata ioctl changed.  Make sure to recompile both kernel and
1134a45f2d05SWarner Losh	userland at the same time.
1135a45f2d05SWarner Losh
1136a45f2d05SWarner Losh20010517:
1137a45f2d05SWarner Losh	New ncurses imported.
1138a45f2d05SWarner Losh
11392988afcaSWarner Losh20010512:
11402988afcaSWarner Losh	DEVFS is now opt out, not opt in.  Barring major problems, this
11412988afcaSWarner Losh	will be the only way to go starting July 1.
11422988afcaSWarner Losh
11431a33dba7SWarner Losh20010504:
11441a33dba7SWarner Losh	OpenSSH has been updated to 2.9.  Some defaults are different,
11451a33dba7SWarner Losh	including RhostsRSAAuthentication, which changes from yes to no.
11461a33dba7SWarner Losh
114709946a51SWarner Losh20010502:
114809946a51SWarner Losh	Perl breakage in 20010501 was corrected at 14:18:33 PDT.
114909946a51SWarner Losh
115009946a51SWarner Losh20010501:
115109946a51SWarner Losh	Building perl was broken at 02:25:25 PDT.
115209946a51SWarner Losh
115309946a51SWarner Losh20010430:
1154a70a79adSWarner Losh	The bug in 20010429 was corrected at 07:35:37 PDT.  It is safe to
115509946a51SWarner Losh	go back in the water.
115609946a51SWarner Losh
115709946a51SWarner Losh20010429:
115809946a51SWarner Losh	A bad bug was committed at 04:48:42 PDT.  Don't use kernels after
115909946a51SWarner Losh	this date, but before the correction date.
116009946a51SWarner Losh
116191dd3b53SWarner Losh20010423:
116291dd3b53SWarner Losh	old fsck and new kernel interactions appear to have been fixed.
116391dd3b53SWarner Losh
116491dd3b53SWarner Losh20010411:
116591dd3b53SWarner Losh	fsck and the kernel were changed to handle some optimizations
116691dd3b53SWarner Losh	to directory layout.  This breaks backward compatibility.
116791dd3b53SWarner Losh	Update only if you understand that you must not use the old
116891dd3b53SWarner Losh	fsck with the new kernel ever.
116991dd3b53SWarner Losh
1170933b3269SWarner Losh20010330:
1171933b3269SWarner Losh	fsck has changed the meaning of the pass column in /etc/fstab.
1172c4e215d3SWarner Losh	Please see the cvs commit to fsck.8 or the fsck.8 man page for
1173933b3269SWarner Losh	details.  It is unclear if changes to /etc/fstab are necessary.
1174933b3269SWarner Losh
1175933b3269SWarner Losh20010319:
1176933b3269SWarner Losh	portmap had changed name to rpcbind for maximum POLA in your
1177933b3269SWarner Losh	current world.  /etc/hosts.{allow,deny} needs changes.  nfs and
1178933b3269SWarner Losh	other rpc based programs that rely on portmapper will not work
1179f34a9421SWarner Losh	without updates to /etc/hosts.{allow,deny} and /etc/netconfig.
118009946a51SWarner Losh
118109946a51SWarner Losh20010315:
118209946a51SWarner Losh	ata subsystem changes.  ATA_ENABLE_ATAPI_DMA, ATA_ENABLE_WC
1183ca22e652SJens Schweikhardt	and ATA_ENABLE_TAGS are no longer kernel options.  They have
118409946a51SWarner Losh	been replaced by tunables.  See ata.4 for details.
1185933b3269SWarner Losh
1186933b3269SWarner Losh20010312:
1187933b3269SWarner Losh	The fxp driver was converted to use miibus.  If you compile
1188933b3269SWarner Losh	fxp into your kernel statically, you will need to add miibus.
1189933b3269SWarner Losh
1190933b3269SWarner Losh20010312:
1191933b3269SWarner Losh	The wi device now defaults to BSS (infrastructure) mode
1192933b3269SWarner Losh	instead of ad-hoc.
1193933b3269SWarner Losh
1194933b3269SWarner Losh20010310:
1195f5260d32SWarner Losh	/dev/urandom should be a symbolic link to /dev/random now.
1196933b3269SWarner Losh	Users of current not using DEVFS need to run MAKEDEV std.
1197933b3269SWarner Losh	ssh might not work if you don't.
1198933b3269SWarner Losh
119962353691SWarner Losh20010303:
120062353691SWarner Losh	The ed driver has been updated.  It now allows mii attachments,
120162353691SWarner Losh	which means that you must include the miibus in your kernel if
120262353691SWarner Losh	you use the ed driver.
120362353691SWarner Losh
1204d325cf65SWarner Losh20010220:
1205d325cf65SWarner Losh	The problems with libc have been corrected.  It is now mostly
1206d325cf65SWarner Losh	safe to go back into the water.
1207d325cf65SWarner Losh
1208024daae6SWarner Losh20010211:
1209024daae6SWarner Losh	The size of FILE was changed.  This breaks upgrading.  If
1210024daae6SWarner Losh	you must upgrade, be prepared for pain.  It also breaks almost
1211024daae6SWarner Losh	all binaries that you've compiled on -current.  You are warned
1212024daae6SWarner Losh	that before upgrading would be a good time to do a level 0
1213024daae6SWarner Losh	dump of your system.  No, really, I mean it this time.
1214024daae6SWarner Losh
1215024daae6SWarner Losh	To get to the new system, you'll need to use the following
1216024daae6SWarner Losh	workaround.  Hopefully this can be sorted out so that we
1217024daae6SWarner Losh	don't have to move this to the updating section.
1218024daae6SWarner Losh
1219024daae6SWarner Losh	To get around the installworld problem, do:
1220024daae6SWarner Losh		# cd /usr/src/usr.bin/sed
1221024daae6SWarner Losh		# make install
1222024daae6SWarner Losh		# cd /usr/src
1223024daae6SWarner Losh		# make installworld
1224024daae6SWarner Losh	If that doesn't work, then try:
1225024daae6SWarner Losh		# make -k installworld
1226024daae6SWarner Losh		# make installworld
1227024daae6SWarner Losh
1228024daae6SWarner Losh20010207:
1229024daae6SWarner Losh	DEVFS is now the default.  If you use vinum, make sure that you
1230024daae6SWarner Losh	do not include devfs in your kernel as problems result.
1231024daae6SWarner Losh
1232024daae6SWarner Losh20010205:
12337595222aSWarner Losh	FFS_ROOT and CD9660_ROOT have been removed or deprecated.
1234024daae6SWarner Losh	Remove them from your config.
1235024daae6SWarner Losh
12361e159248SWarner Losh20010122:
12371e159248SWarner Losh	****************************** WARNING ******************************
12381e159248SWarner Losh			buildkernel has been changed slightly
12391e159248SWarner Losh	****************************** WARNING ******************************
12401e159248SWarner Losh	KERNCONF replaces the variable KERNEL for buildkernel.  You
12411e159248SWarner Losh	should update your scripts and make.conf accordingly.
12421e159248SWarner Losh
12431e159248SWarner Losh20010119:
12441e159248SWarner Losh	config has changed to allow DEV_FOO as a replacement for NFOO.
12451e159248SWarner Losh	This requires a new config to build correctly.
12461e159248SWarner Losh
1247aac7dfeaSWarner Losh20010116:
1248ca22e652SJens Schweikhardt	The kernel option I386_CPU is now mutually exclusive with the
1249aac7dfeaSWarner Losh	other cpu types. If you have an i386 system, be sure that it
1250aac7dfeaSWarner Losh	only had this line.  Remove it for all other configurations.
1251aac7dfeaSWarner Losh
1252aac7dfeaSWarner Losh20010110:
1253aac7dfeaSWarner Losh	Changes to the kernel require it and burncd be in sync.
1254aac7dfeaSWarner Losh
1255aac7dfeaSWarner Losh20010102:
1256aac7dfeaSWarner Losh	Everyone who has hw.sndunit set to something in
1257aac7dfeaSWarner Losh	/etc/sysctl.conf, it is now hw.snd.unit.
1258aac7dfeaSWarner Losh
125963c90c9eSWarner Losh20010101:
126063c90c9eSWarner Losh	ex and vi were broken by some changes to sys/queue.h.  If you
126163c90c9eSWarner Losh	have a bad vi, you will see make buildworld fail with a core
12625fd2a895SWarner Losh	dump while building termcap.  You can work around this problem
126363c90c9eSWarner Losh	by adding -k to your make buildworld.  This will cause the
126463c90c9eSWarner Losh	build to complete and install a new vi.  Once that's done, you
126563c90c9eSWarner Losh	can rebuild again without the -k to pick up anything that
126663c90c9eSWarner Losh	might have been ignored by the -k option.
126763c90c9eSWarner Losh
12685fd2a895SWarner Losh	Others have suggested that you can just rebuild libc if your
12695fd2a895SWarner Losh	vi/ex is dynamically linked, but I've not received any reports
12705fd2a895SWarner Losh	of this working.
12715fd2a895SWarner Losh
1272aac7dfeaSWarner Losh20001228:
1273aac7dfeaSWarner Losh	There have been some changes to libcrypt in -current.  The
1274ca22e652SJens Schweikhardt	libscrypt/libdescrypt symlink silliness is gone and the installed
1275aac7dfeaSWarner Losh	libcrypt is fully functional.  Be aware of this.
1276aac7dfeaSWarner Losh
1277de2bcc63SWarner Losh20001218:
1278de2bcc63SWarner Losh	Linksys Fast Ethernet PCCARD cards supported by the ed driver
1279de2bcc63SWarner Losh	now require the addition of flag 0x80000 to their config line
1280de2bcc63SWarner Losh	in pccard.conf(5).  This flag is not optional.  These Linksys
1281de2bcc63SWarner Losh	cards will not be recognized without it.
1282de2bcc63SWarner Losh
1283960773f7SWarner Losh20001205:
1284960773f7SWarner Losh	Important new FreeBSD-version stuff: PAM support has been worked
1285960773f7SWarner Losh	in, partially from the "Unix" OpenSSH version.  This requires
1286960773f7SWarner Losh	adding the following in pam.conf:
1287960773f7SWarner Losh
1288960773f7SWarner Losh	sshd    auth    sufficient      pam_skey.so
1289960773f7SWarner Losh	sshd    auth    required        pam_unix.so         try_first_pass
1290960773f7SWarner Losh	sshd    session required        pam_permit.so
1291960773f7SWarner Losh
12920acc635eSWarner Losh20001031:
12930acc635eSWarner Losh	cvs updated to 1.11.
12940acc635eSWarner Losh
12950acc635eSWarner Losh20001020:
12960acc635eSWarner Losh	The random device needs more entropy, so you need to make sure
12970acc635eSWarner Losh	that you've run mergemaster to get a /etc/rc which will seed
12980acc635eSWarner Losh	/dev/random.  If you don't and the system hangs after ldconfig,
12990acc635eSWarner Losh	then banging on the keyboard randomly until it unhangs is one
13000acc635eSWarner Losh	workaround.
13010acc635eSWarner Losh
13020acc635eSWarner Losh20001010:
13030acc635eSWarner Losh	****************************** WARNING ******************************
13040acc635eSWarner Losh				Sendmail has been updated.
13050acc635eSWarner Losh	****************************** WARNING ******************************
13060acc635eSWarner Losh	o mail.local(8) is no longer installed as a set-user-id binary.
13070acc635eSWarner Losh	o sendmail(8) is now built with STARTTLS support unless NO_OPENSSL
13080acc635eSWarner Losh	  is set.
13090acc635eSWarner Losh	o The default /etc/mail/sendmail.cf disables the SMTP EXPN and VRFY
13100acc635eSWarner Losh	  commands.
13110acc635eSWarner Losh	o Now using sendmail's version of vacation(1).
13120acc635eSWarner Losh	o The sendmail cf building tools (contrib/sendmail/cf) are installed
13130acc635eSWarner Losh	  in /usr/share/sendmail/cf.
13140acc635eSWarner Losh	o sendmail.cw changed to local-host-names
13150acc635eSWarner Losh
13160acc635eSWarner Losh	More details can be found at
13170acc635eSWarner Losh		http://people.freebsd.org/~imp/UPDATING/sendmail-20001010
13180acc635eSWarner Losh
13196e98a146SWarner Losh20001009:
13206e98a146SWarner Losh	The ports tree's new layout is in place.  Be sure to update
13216e98a146SWarner Losh	your entire ports tree, or you will have problems.
13226e98a146SWarner Losh
13236e98a146SWarner Losh20001006:
1324685294e7SMark Ovens	The perl build procedure no longer installs miniperl, nor uses
13256e98a146SWarner Losh	the installed miniperl.  It is recommended that you delete
13266e98a146SWarner Losh	/usr/bin/miniperl.
13276e98a146SWarner Losh
1328073113a4SWarner Losh20001005:
1329073113a4SWarner Losh	This weekend the ports tree will be updated to a new layout.
1330685294e7SMark Ovens	It will be in an inconsistent state until noted in the UPDATING
1331073113a4SWarner Losh	file, or with asami-san's message to the relevant mailing
1332073113a4SWarner Losh	lists.  With this new layout, you'll need to update the whole
1333073113a4SWarner Losh	tree for anything to work.
1334073113a4SWarner Losh
13350acc635eSWarner Losh20000928:
13360acc635eSWarner Losh	There was a change in the passwd format.  Need more information.
13370acc635eSWarner Losh
1338be3885b3SWarner Losh20000916:
1339be3885b3SWarner Losh	/boot/kernel/kernel.ko -> /boot/kernel/kernel change has taken
1340be3885b3SWarner Losh	place.  Please update boot loader (not the boot blocks) at the
1341be3885b3SWarner Losh	same time as your kernel.
1342be3885b3SWarner Losh
134376ec9675SWarner Losh20000914:
134476ec9675SWarner Losh	The new pmtimer device is necessary for laptops.  Failure to
134576ec9675SWarner Losh	include the device will cause suspended laptops losing time
134676ec9675SWarner Losh	when they resume.  Include
134776ec9675SWarner Losh		device		pmtimer
134876ec9675SWarner Losh	in your config file and
134901b9a434SWarner Losh		hint.pmtimer.0.at="isa"
135076ec9675SWarner Losh	to your /boot/device.hints file.
135176ec9675SWarner Losh
1352f4865386SMark Murray20000911:
1353f4865386SMark Murray	The random device has been turned into a (pseudo-)device,
1354f4865386SMark Murray	rather than an option. The supplied kernel config files have
1355f4865386SMark Murray	been updated. You will need to do something similar in your
1356f4865386SMark Murray	own kernel config file.
1357f4865386SMark Murray	Remove:
1358f4865386SMark Murray		options		RANDOMDEV
1359f4865386SMark Murray	Add:
1360f4865386SMark Murray		device		random
1361f4865386SMark Murray	If you prefer to load the loadable module, you need to do
1362f4865386SMark Murray	nothing.
1363f4865386SMark Murray
1364d594498fSWarner Losh20000909:
1365d594498fSWarner Losh	The random device module has been renamed from randomdev.ko to
1366d594498fSWarner Losh	random.ko. You will need to edit your /boot/loader.conf to
1367d594498fSWarner Losh	reflect this if you load this module at boot time.
1368d594498fSWarner Losh	The line should read:
1369d594498fSWarner Losh		random_load="YES"
1370d594498fSWarner Losh
13710deb7ddcSWarner Losh20000907:
13720deb7ddcSWarner Losh	The SMPNG commit has happened.  It should work, but if it
137316eb772dSWarner Losh	doesn't, fallback to the PRE_SMPNG CVS tag.  There are likely
137416eb772dSWarner Losh	to be a variety of minor issues.  Please see 20000905 to make
137516eb772dSWarner Losh	sure you don't have model loading problems which might at
137616eb772dSWarner Losh	first blush appear related to SMP.
137752bf24e7SWarner Losh
13785a01880bSWarner Losh20000906:
13795a01880bSWarner Losh	nsswitch has been imported from NetBSD.  Among other things,
13805a01880bSWarner Losh	this means that /etc/host.conf is no longer used.  See
13815a01880bSWarner Losh	nsswitch.conf(5) instead.  Note that at boot time rc.network
13825a01880bSWarner Losh	will attempt to produce a new nsswitch.conf file for you if you
13835a01880bSWarner Losh	don't have one, and you have host.conf.
13845a01880bSWarner Losh
13852b41163cSWarner Losh20000905:
138638d6ecd2SWarner Losh	The ucred structure changed size.  This breaks the interface
138738d6ecd2SWarner Losh	that mountd uses.  Trying to use an older mountd with a newer
138838d6ecd2SWarner Losh	kernel guarantees a panic.  This means that you need to use
138938d6ecd2SWarner Losh	kernels newer than today only with matching mountd, but you
139038d6ecd2SWarner Losh	needed to do that anyway with the boot loader changes.
139138d6ecd2SWarner Losh
139238d6ecd2SWarner Losh20000905:
13938aab4bc7SWarner Losh	The boot loader has been updated.  The new default kernel is
13948aab4bc7SWarner Losh	now /boot/kernel/kernel.ko.  The new default module location
13958aab4bc7SWarner Losh	is /boot/kernel.
13968aab4bc7SWarner Losh
13978aab4bc7SWarner Losh	You *MUST* upgrade your boot loader and kernel at the same time.
139838d6ecd2SWarner Losh	The easiest way to do this is to do the buildworld/buildkernel/
139938d6ecd2SWarner Losh	installkernel/installworld dance.
14002b41163cSWarner Losh
1401d594498fSWarner Losh	Furthermore, you are urged to delete your old /modules directory
1402d594498fSWarner Losh	before booting the new kernel, since kldload will find stale
1403d594498fSWarner Losh	modules in that directory instead of finding them in the correct
1404d594498fSWarner Losh	path, /boot/kernel.  The most common complaint that this cures
1405d594498fSWarner Losh	is that the linux module crashes your machine after the update.
1406d594498fSWarner Losh
1407d594498fSWarner Losh	if [ ! -d /boot/kernel.old ]; then
1408d594498fSWarner Losh		mv /modules.old /boot/kernel.old
1409d594498fSWarner Losh		chflags noschg /kernel.old
1410d594498fSWarner Losh		mv /kernel.old /boot/kernel.old/kernel.ko
1411d594498fSWarner Losh		chflags schg /boot/kernel.old/kernel.ko
1412d594498fSWarner Losh	fi
1413d594498fSWarner Losh
1414c22a309cSWarner Losh20000904:
1415c22a309cSWarner Losh	A new issue with the sendmail upgrade has come to light.
1416c22a309cSWarner Losh	/etc/aliases has moved to /etc/mail/aliases.  Mergemaster will
1417c22a309cSWarner Losh	incorrectly install the default aliases in /etc/mail rather than
1418c22a309cSWarner Losh	move the old one from /etc.  So you'll need to manually move the
1419c22a309cSWarner Losh	file, create a symbolic link, remove the old /etc/aliases.db and
1420c22a309cSWarner Losh	run newaliases.  For safety sake, you should stop sendmail
1421c22a309cSWarner Losh	while doing this and run the upgrade when locally sourced email
1422c22a309cSWarner Losh	is not likely to be generated.
1423c22a309cSWarner Losh
1424fdb9f54dSWarner Losh20000825:
1425fdb9f54dSWarner Losh	/boot/device.hints is now required for installkernel to
14269c1a7444SWarner Losh	succeed.  You should copy GENERIC.hints for your architecture
14279c1a7444SWarner Losh	into /boot/device.hints.  If and only if you compile hints
14289c1a7444SWarner Losh	into your kernel, then this file may be empty.  Please note,
14299c1a7444SWarner Losh	if you have an empty or missing /boot/device.hints file and
14309c1a7444SWarner Losh	you neglected to compile hints into your kernel, no boot
14319c1a7444SWarner Losh	messages will appear after the boot loader tries to start the
14329c1a7444SWarner Losh	kernel.
14339c1a7444SWarner Losh
14349c1a7444SWarner Losh20000821:
14359c1a7444SWarner Losh	If you do NOT have ``options RANDOMDEV'' in your kernel and
14369c1a7444SWarner Losh	you DO want the random device then add randomdev_load="YES" to
14379c1a7444SWarner Losh	/boot/loader.conf.
1438fdb9f54dSWarner Losh
14398f250aa7SWarner Losh20000812:
14405da0d091SWarner Losh	suidperl is now always built and installed on the system, but
14415da0d091SWarner Losh	with permissions of 511.  If you have applications that use
14425da0d091SWarner Losh	this program, you are now required to add ENABLE_SUIDPERL=true
14435da0d091SWarner Losh	to /etc/make.conf.  If you forget to do this,
14445da0d091SWarner Losh		chmod 4511 /usr/bin/suidperl
14455da0d091SWarner Losh	will fix this until the next build.
14465da0d091SWarner Losh
14475da0d091SWarner Losh20000812:
14488f250aa7SWarner Losh	sendmail has been updated from 8.9.3 to 8.11.0.  Some of the more
14498f250aa7SWarner Losh	visible changes that may immediately affect your configuration
14508f250aa7SWarner Losh	include:
14518f250aa7SWarner Losh	- New default file locations from src/contrib/sendmail/cf/README
14528f250aa7SWarner Losh	- newaliases limited to root and trusted users
14538f250aa7SWarner Losh	- MSA port (587) turned on by default
14548f250aa7SWarner Losh	- New queue file naming system so can't go from 8.11 -> 8.9
14558f250aa7SWarner Losh	- FEATURE(`rbl') renamed to FEATURE(`dnsbl')
14568f250aa7SWarner Losh	- FEATURE(`nullclient') is more full featured
14578f250aa7SWarner Losh	- FEATURE(`nouucp') requires an argument: `reject' or `nospecial'
14588f250aa7SWarner Losh	- mail.local FreeBSD-only -b option changed to -B
14598f250aa7SWarner Losh	- See src/contrib/sendmail/RELEASE_NOTES for more info
14608f250aa7SWarner Losh
146171c38472SWarner Losh20000810:
146271c38472SWarner Losh	suidperl (aka sperl) is no longer build by default.  You must
146371c38472SWarner Losh	specifically define BUILD_SUIDPERL to "true" for it to be build.
146471c38472SWarner Losh	Furthermore, we recommend that you remove /usr/bin/sperl* and
146571c38472SWarner Losh	/usr/bin/suidperl files from your system unless you have a
146671c38472SWarner Losh	specific use for it.
146771c38472SWarner Losh
146871c38472SWarner Losh20000729:
146971c38472SWarner Losh	Networking defaults have been tightened.  Anybody upgrading
147071c38472SWarner Losh	/etc/defaults/rc.conf needs to add the following lines to
147171c38472SWarner Losh	/etc/rc.conf if they want to have the same setup
147271c38472SWarner Losh	afterwards (unless the variables already are set, of course):
147371c38472SWarner Losh		# Enable network daemons for user convenience.
147471c38472SWarner Losh		inetd_enable="YES"
147571c38472SWarner Losh		portmap_enable="YES"
147671c38472SWarner Losh		sendmail_enable="YES"
147771c38472SWarner Losh
147871c38472SWarner Losh20000728:
147971c38472SWarner Losh	If you have null_load="YES" in your /boot/loader.conf, you
148071c38472SWarner Losh	will need to change that to nullfs_load="YES".
148171c38472SWarner Losh
14821dece4a9SWarner Losh20000728:
14831dece4a9SWarner Losh	The "installkernel" target has changed slightly. Now even if
14841dece4a9SWarner Losh	you override KERNEL e.g. 'make installkernel KERNEL=MYKERNEL'
14851dece4a9SWarner Losh	it will install the MYKERNEL file (built with the buildkernel
14861dece4a9SWarner Losh	target) as /kernel rather than /MYKERNEL. Those who have
14871dece4a9SWarner Losh	updated their /boot/loader.conf files to point to /MYKERNEL
14881dece4a9SWarner Losh	should remove that entry or perform manual rename of /kernel
14891dece4a9SWarner Losh	to /MYKERNEL.
14901dece4a9SWarner Losh
1491409e887cSWarner Losh20000711:
1492409e887cSWarner Losh	If you use CVSUP or CTM to get CVS trees, AND you used to get
1493409e887cSWarner Losh	the old crypto files from internat.freebsd.org AND you check
1494409e887cSWarner Losh	out files from the CVS tree with the cvs command, please read
1495409e887cSWarner Losh		http://people.freebsd.org/~imp/internat.txt
1496409e887cSWarner Losh	for details on potential problems that you might have and how
1497409e887cSWarner Losh	to get around them.
1498409e887cSWarner Losh
1499409e887cSWarner Losh	If you are merely a mirror, or don't answer yes to each of the
1500409e887cSWarner Losh	clauses above, you needn't worry.
1501409e887cSWarner Losh
1502409e887cSWarner Losh20000711:
1503409e887cSWarner Losh	/etc/security has been updated to print the inode number of
1504409e887cSWarner Losh	setuid programs that have changed.  You will see a large spike
1505409e887cSWarner Losh	in the number of changed programs the first time when you run
1506409e887cSWarner Losh	mergemaster to get a new /etc/security.
1507409e887cSWarner Losh
1508673d13f2SWarner Losh20000710:
1509673d13f2SWarner Losh	/dev/random now has good entropy collection (from the keyboard
1510673d13f2SWarner Losh	and sysmouse drivers). Please ensure that either `options
1511673d13f2SWarner Losh	RANDOMDEV' is present in your kernel config file or that
1512673d13f2SWarner Losh	`randomdev_load="YES"' is in your /boot/loader.conf. If you do
1513673d13f2SWarner Losh	not have the /dev/random driver, OpenSSL (and consequently
1514673d13f2SWarner Losh	lots of crypto tools (like SSH)) will fail with strange
1515673d13f2SWarner Losh	errors. (see below, 20000624).
1516673d13f2SWarner Losh
1517bed5c5ffSWarner Losh	FreeBSD-current is safe again to run Crypto.
15181dece4a9SWarner Losh
1519673d13f2SWarner Losh20000709:
1520c6dd1430SWarner Losh	phk made the malloc default options AJ.  This may slow things
1521c6dd1430SWarner Losh	down and uncover other latent bugs in the code.  If you need to
1522c6dd1430SWarner Losh	run at full speed, you can disable this by doing the following:
1523673d13f2SWarner Losh		ln -s aj /etc/malloc.conf
1524673d13f2SWarner Losh
1525e98e26cdSWarner Losh20000706:
1526e98e26cdSWarner Losh	libftpio's version was accidentally bumped a few days ago.  This
1527e98e26cdSWarner Losh	has been corrected.  You may need to remove /usr/lib/libftpio.so.6
1528e98e26cdSWarner Losh	before doing your next buildworld/installworld pair.  It certainly
1529f699bbbbSMark Ovens	won't hurt to remove it before the update procedure.  It will
1530e98e26cdSWarner Losh	break fetch until a new one is built, but ftp can be used in the
15312c021c6cSMark Ovens	interim if needed.
1532e98e26cdSWarner Losh
1533e98e26cdSWarner Losh20000705:
1534e98e26cdSWarner Losh	The crypto packages have changed for the cvsup.  This has been done
1535e98e26cdSWarner Losh	in a backward compatible way, but the old packages will go away at
1536e98e26cdSWarner Losh	some point in the future.  Look at /usr/share/examples/cvsup for
1537e98e26cdSWarner Losh	details.
1538e98e26cdSWarner Losh
1539c373950eSWarner Losh20000704:
15402f961bc8SWarner Losh	With the new sys/modules/sound/drivers/*, you will need to
15412f961bc8SWarner Losh	set SYSDIR until you do an installworld after July 7th.
15422f961bc8SWarner Losh
15432f961bc8SWarner Losh20000704:
1544c373950eSWarner Losh	rc.shutdown and rc will now call the rc.d scripts with start
1545c373950eSWarner Losh	or stop.  This may cause some harmless warnings from older
1546c373950eSWarner Losh	rc.d scripts that haven't been updated.
1547c373950eSWarner Losh
154827dc3a2bSWarner Losh20000630:
154927dc3a2bSWarner Losh	The libfetch based version of fetch has gone into the tree.
155027dc3a2bSWarner Losh	Minor problems may result on some of the less popular sites,
155127dc3a2bSWarner Losh	which should be reported to des@freebsd.org.
155227dc3a2bSWarner Losh
1553b8c215acSWarner Losh20000625:
1554b8c215acSWarner Losh	From approximately this date forward, one must have the crypto
155527dc3a2bSWarner Losh	system installed in order to build the system and kernel.
155627dc3a2bSWarner Losh	While not technically strictly true, one should treat it as
155727dc3a2bSWarner Losh	required and grab the crypto bits.  If you are grabbing CVS
155827dc3a2bSWarner Losh	trees, src-all and cvs-crypto should be treated as if they
155927dc3a2bSWarner Losh	were required.  You should check with the latest collections
156027dc3a2bSWarner Losh	to make sure that these haven't changed.
1561b8c215acSWarner Losh
15627b990719SWarner Losh20000624:
15637b990719SWarner Losh	Mark Murray just committed the first parts of a cleanup of
15647b990719SWarner Losh	/dev/zero, et al.  This is also cleaning up /dev/random.
15657b990719SWarner Losh	The entropy is disconnected, so DO NOT USE VERSIONS OF FREEBSD
15661a33dba7SWarner Losh	-CURRENT FROM THIS POINT to 2000710 for cryptographic services
15677b990719SWarner Losh	until Mark can merge in the fixes to this work in progress.
15687b990719SWarner Losh	openssh and openssl should not be used to generate keys from this
15697b990719SWarner Losh	date to the completion of the work.
15707b990719SWarner Losh
157127dc3a2bSWarner Losh	If you must operate at this reduced level of security, add '
157227dc3a2bSWarner Losh	options RANDOMDEV' to your kernel or modload the randomdev
157327dc3a2bSWarner Losh	module.  You may also need to copy a new MAKEDEV to /dev and
157427dc3a2bSWarner Losh	recreate the random and urandom devices.
157527dc3a2bSWarner Losh
157681e54c50SWarner Losh20000622:
157781e54c50SWarner Losh	The license on the softupdates is now a standard 2 clause
157881e54c50SWarner Losh	BSD license.  You may need to remove your symbolic links
157981e54c50SWarner Losh	that used to be required when updating.
158081e54c50SWarner Losh
158139943833SWarner Losh20000621:
15822c021c6cSMark Ovens	Scott Flatman <sf@aracnet.com> sent in a decent write-up on
15832a2f33fbSDaniel Baker	the config file update procedure.
15842a2f33fbSDaniel Baker		http://people.freebsd.org/~imp/config-upd.html
1585c373950eSWarner Losh	NOTE: LINT is gone.  It has been replaced with NOTES.  NOTES
158659df1173SDavid E. O'Brien	isn't buildable.  However, you can generate a LINT file:
158759df1173SDavid E. O'Brien		cd /sys/<ARCH>/conf && make LINT
158839943833SWarner Losh
1589290f9ad8SWarner Losh20000620:
1590290f9ad8SWarner Losh	Binutils 2.10 have hit the tree, or will shortly.  As soon
1591290f9ad8SWarner Losh	as they do, the problem noted in 20000522 will be resolved and
1592290f9ad8SWarner Losh	that workaround will no longer be required.
1593290f9ad8SWarner Losh
159490fb6346SWarner Losh20000615:
159590fb6346SWarner Losh	phk removed the compatibility creation of wd devices in the
159690fb6346SWarner Losh	ad driver.  If you haven't done so already, you must update
159790fb6346SWarner Losh	your fstab, etc to use the ad devices instead of the wd
159890fb6346SWarner Losh	devices.
159990fb6346SWarner Losh
1600f75f65bbSWarner Losh	In addition, you'll need to update your boot blocks to a
1601f75f65bbSWarner Losh	more modern version, if you haven't already done so.  Modern
1602f75f65bbSWarner Losh	here means 4.0 release or newer (although older releases
1603f75f65bbSWarner Losh	may work).
1604f75f65bbSWarner Losh
1605ba26da8eSWarner Losh20000612:
1606ba26da8eSWarner Losh	Peter took an axe to config(8).  Be sure that you read his mail
1607290f9ad8SWarner Losh	on the topic before even thinking about updating.  You will
1608c6dd1430SWarner Losh	need to create a /boot/device.hints or add a hints directive
1609290f9ad8SWarner Losh	to your config file to compile them in statically.  The format
1610f54a3542SWarner Losh	of the config file has changed as well.  Please see GENERIC or
1611f54a3542SWarner Losh	NEWCARD for examples of the new format.
1612290f9ad8SWarner Losh
16139698f2c0SWarner Losh	Indirectly, this also breaks USERCONFIG.  Unless a newer entry
16149698f2c0SWarner Losh	says that it has been fixed, assume that must use the hints mechanism
16159698f2c0SWarner Losh	in the loader if you need to use a machine with very old ISA cards
16169698f2c0SWarner Losh	in it.
1617bbcc5149SWarner Losh
1618d65850ebSWarner Losh20000522:
1619ba26da8eSWarner Losh	A new set of binutils went into the tree today.  Anybody
1620d65850ebSWarner Losh	building a kernel after this point is advised that they need
1621d65850ebSWarner Losh	to rebuild their binutils (or better yet do a
1622d65850ebSWarner Losh	buildworld/installworld) before building a new kernel.
1623d65850ebSWarner Losh
1624d9583a00SWarner Losh	Due to bugs in binutils, using malloc options (eg /etc/malloc.conf
1625d9583a00SWarner Losh	or MALLOC_OPTIONS env var) J will cause ld to dump core.  It
1626d9583a00SWarner Losh	is recommended that you don't set this option until the problem
1627d9583a00SWarner Losh	is resolved.
1628d9583a00SWarner Losh
16298039cedeSWarner Losh20000513:
16308039cedeSWarner Losh	The ethernet drivers were all updated to clean up the BPF handling.
16318039cedeSWarner Losh
1632d65850ebSWarner Losh20000510:
16338039cedeSWarner Losh	The problems with boot blocks on the alphas have been corrected.
16348039cedeSWarner Losh	This will require some care in updating alphas.  A new libstand
16358039cedeSWarner Losh	is requires for the boot blocks to build properly.
16368039cedeSWarner Losh
16378039cedeSWarner Losh20000503:
16388039cedeSWarner Losh	Recompile all kld modules.  Proper version dependency info
16398039cedeSWarner Losh	is now available.
16408039cedeSWarner Losh
1641d65850ebSWarner Losh20000502:
1642d65850ebSWarner Losh	Modules have been disconnected from the buildworld tree and
1643d65850ebSWarner Losh	connected to the kernel building instead.
1644d65850ebSWarner Losh
1645be149406SNik Clayton20000427:
16468039cedeSWarner Losh	You may need to build gperf
16478039cedeSWarner Losh		cd /usr/src/gnu/usr.bin/gperf && make depend all install
16488039cedeSWarner Losh	when upgrading from 4.0 -> current.  The build system now uses
16498039cedeSWarner Losh	an option only in -current.
16508039cedeSWarner Losh
16512b8dd5f4SWarner Losh20000417:
16522b8dd5f4SWarner Losh	The method that we brand ELF binaries has changed to be more
1653f699bbbbSMark Ovens	acceptable to the binutils maintainers.  You will need to
16542b8dd5f4SWarner Losh	rebrand your ELF binaries that aren't native.  One problem
16552b8dd5f4SWarner Losh	binary is the Linux ldconfig.  After your make world, but
16562c021c6cSMark Ovens	before you reboot, you'll need to issue:
16572b8dd5f4SWarner Losh		brandelf -t Linux /compat/linux/sbin/ldconfig
16582b8dd5f4SWarner Losh	if you have Linux compatibility enabled on your machine.
16592b8dd5f4SWarner Losh
16608d9f1945SWarner Losh20000320:
16612b8dd5f4SWarner Losh	If you have really bad/marginal IDE drives, you may find they
16622b8dd5f4SWarner Losh	don't work well.  Use pio mode instead.  The easiest way to
16632b8dd5f4SWarner Losh	cope if you have a problem combination is to add:
1664ae20a1b8SDima Dorfman		/sbin/sysctl hw.ata.ata_dma=0
16652b8dd5f4SWarner Losh	to the start of /etc/rc.conf.
16668d9f1945SWarner Losh
1667f8ab1dd6SWarner Losh20000319:
1668f699bbbbSMark Ovens	The ISA and PCI compatibility shims have been connected to the
1669f8ab1dd6SWarner Losh	options COMPAT_OLDISA and COMPAT_OLDPCI.  If you are using old
1670f8ab1dd6SWarner Losh	style PCI or ISA drivers (i.e. tx, voxware, etc.) you must
1671f8ab1dd6SWarner Losh	include the appropriate option in your kernel config.  Drivers
1672f8ab1dd6SWarner Losh	using the shims should be updated or they won't ship with
1673f8ab1dd6SWarner Losh	5.0-RELEASE, targeted for 2001.
1674f8ab1dd6SWarner Losh
167519cada77SWarner Losh20000318:
1676f699bbbbSMark Ovens	We've entered the traditional post release dumping party.
167719cada77SWarner Losh	Large kernel changes are being committed and are in the
167819cada77SWarner Losh	works.  It is important to keep the systems' klds and kernel
167919cada77SWarner Losh	in sync as kernel interfaces and structures are changing.
168019cada77SWarner Losh	Before reporting kernel panics, make sure that all modules
168119cada77SWarner Losh	that you are loading are up to date.
1682ba228352SWarner Losh
168319cada77SWarner Losh20000315:
16846d23c382SWarner Losh	If you are upgrading from an older version of FreeBSD, you
16856d23c382SWarner Losh	need to update your boot blocks as well.  'disklabel -B ad0'
16866d23c382SWarner Losh	will do the trick.  This isn't critical until you remove your
16876d23c382SWarner Losh	wd device entries in /dev, at which point your system will not
16886d23c382SWarner Losh	boot.
16896d23c382SWarner Losh
16906d23c382SWarner Losh20000315:
169119cada77SWarner Losh	4.0 RELEASE shipped.  Please see the 4.0 UPDATING file for how
169219cada77SWarner Losh	to upgrade to 4.0 from 3.x.
169357199806SWarner Losh
1694dc0dbf5cSWarner LoshCOMMON ITEMS:
1695dc0dbf5cSWarner Losh
1696cd5f061cSWarner Losh	# NOTE: 5.x below applies to 6.0-currrent as well, for the
1697cd5f061cSWarner Losh	# momemnt.  4.any -> 5.any upgrade support will remain in
1698cd5f061cSWarner Losh	# place for 6.0 current, but after 5.3 RELEASE, the 4.any ->
1699cd5f061cSWarner Losh	# 6.0-current upgrade path will require moving through 5.3
1700cd5f061cSWarner Losh	# RELEASE or newer.
1701cd5f061cSWarner Losh
1702a24eff53SWarner Losh	General Notes
1703a24eff53SWarner Losh	-------------
1704a24eff53SWarner Losh	Avoid using make -j when upgrading.  From time to time in the
1705a24eff53SWarner Losh	past there have been problems using -j with buildworld and/or
1706a24eff53SWarner Losh	installworld.  This is especially true when upgrading between
1707a24eff53SWarner Losh	"distant" versions (eg one that cross a major release boundary
1708a24eff53SWarner Losh	or several minor releases, or when several months have passed
1709a24eff53SWarner Losh	on the -current branch).
1710a24eff53SWarner Losh
17115780f3baSWarner Losh	Sometimes, obscure build problems are the result of environment
17125780f3baSWarner Losh	poisoning.  This can happen because the make utility reads its
17135780f3baSWarner Losh	environment when searching for values for global variables.
17145780f3baSWarner Losh	To run your build attempts in an "environmental clean room",
17155780f3baSWarner Losh	prefix all make commands with 'env -i '.  See the env(1) manual
17165780f3baSWarner Losh	page for more details.
17175780f3baSWarner Losh
1718dc0dbf5cSWarner Losh	To build a kernel
1719dc0dbf5cSWarner Losh	-----------------
1720ba01eb20SWarner Losh	If you are updating from a prior version of FreeBSD (even one just
1721f699bbbbSMark Ovens	a few days old), you should follow this procedure. With a
1722ba01eb20SWarner Losh	/usr/obj tree with a fresh buildworld,
1723282e0f01SRuslan Ermilov	make -DALWAYS_CHECK_MAKE buildkernel KERNCONF=YOUR_KERNEL_HERE
1724282e0f01SRuslan Ermilov	make -DALWAYS_CHECK_MAKE installkernel KERNCONF=YOUR_KERNEL_HERE
1725dc0dbf5cSWarner Losh
1726ba01eb20SWarner Losh	To just build a kernel when you know that it won't mess you up
1727ba01eb20SWarner Losh	--------------------------------------------------------------
17280fbd2da9SKen Smith	This assumes you are already running a 5.X system.  Replace
17290fbd2da9SKen Smith	${arch} with the architecture of your machine (e.g. "i386",
17300fbd2da9SKen Smith	"alpha", "amd64", "ia64", "pc98", "sparc64", etc).
17310fbd2da9SKen Smith
17320fbd2da9SKen Smith	cd src/sys/${arch}/conf
173347d0d01fSWarner Losh	config KERNEL_NAME_HERE
17340fbd2da9SKen Smith	cd ../compile/KERNEL_NAME_HERE
1735ba01eb20SWarner Losh	make depend
1736ba01eb20SWarner Losh	make
1737ba01eb20SWarner Losh	make install
1738ba01eb20SWarner Losh
1739ba01eb20SWarner Losh	If this fails, go to the "To build a kernel" section.
1740ba01eb20SWarner Losh
1741ba01eb20SWarner Losh	To rebuild everything and install it on the current system.
1742ba01eb20SWarner Losh	-----------------------------------------------------------
174363cb445eSWarner Losh	# Note: sometimes if you are running current you gotta do more than
174463cb445eSWarner Losh	# is listed here if you are upgrading from a really old current.
174563cb445eSWarner Losh
1746f643de42SWarner Losh	<make sure you have good level 0 dumps>
174763cb445eSWarner Losh	<maybe fix /etc/fstab>				[7]
174863cb445eSWarner Losh	make buildworld
17496586253aSWarner Losh	make kernel KERNCONF=YOUR_KERNEL_HERE
175063cb445eSWarner Losh							[1]
175163cb445eSWarner Losh	<reboot in single user>				[3]
17526586253aSWarner Losh	src/etc/rc.d/preseedrandom			[10]
175363cb445eSWarner Losh	mergemaster -p					[5]
175463cb445eSWarner Losh	make installworld
175563cb445eSWarner Losh	mergemaster					[4]
175663cb445eSWarner Losh	<reboot>
175763cb445eSWarner Losh
1758759f0aefSWarner Losh
1759f27b1fceSJoseph Koshy	To cross-install current onto a separate partition
1760f27b1fceSJoseph Koshy	--------------------------------------------------
1761f27b1fceSJoseph Koshy	# In this approach we use a separate partition to hold
1762f27b1fceSJoseph Koshy	# current's root, 'usr', and 'var' directories.   A partition
1763f27b1fceSJoseph Koshy	# holding "/", "/usr" and "/var" should be about 2GB in
1764f27b1fceSJoseph Koshy	# size.
1765f27b1fceSJoseph Koshy
1766f27b1fceSJoseph Koshy	<make sure you have good level 0 dumps>
1767f27b1fceSJoseph Koshy	<boot into -stable>
1768f27b1fceSJoseph Koshy	make buildworld
1769f27b1fceSJoseph Koshy	<maybe newfs current's root partition>
1770f27b1fceSJoseph Koshy	<mount current's root partition on directory ${CURRENT_ROOT}>
1771f27b1fceSJoseph Koshy	make installworld DESTDIR=${CURRENT_ROOT}
1772f27b1fceSJoseph Koshy	make buildkernel KERNCONF=YOUR_KERNEL_HERE
17736586253aSWarner Losh	cp src/sys/${ARCH}/conf/GENERIC.hints \
1774f27b1fceSJoseph Koshy		${CURRENT_ROOT}/boot/device.hints	# as needed
1775f27b1fceSJoseph Koshy	make installkernel KERNCONF=YOUR_KERNEL_HERE DESTDIR=${CURRENT_ROOT}
17766586253aSWarner Losh	cd src/etc; make distribution DESTDIR=${CURRENT_ROOT} # if newfs'd
1777f27b1fceSJoseph Koshy	cp /etc/fstab ${CURRENT_ROOT}/etc/fstab 		   # if newfs'd
1778f27b1fceSJoseph Koshy	<edit ${CURRENT_ROOT}/etc/fstab to mount "/" from the correct partition>
1779f27b1fceSJoseph Koshy	<reboot into current>
1780f27b1fceSJoseph Koshy	<do a "native" rebuild/install as described in the previous section>
17816586253aSWarner Losh	<maybe install compatibility libraries from src/lib/compat>
1782f27b1fceSJoseph Koshy 	<reboot>
1783f27b1fceSJoseph Koshy
1784f27b1fceSJoseph Koshy
1785f27b1fceSJoseph Koshy	To upgrade in-place from 4.x-stable to current
1786f27b1fceSJoseph Koshy	----------------------------------------------
17875c195f59SWarner Losh	# 5.x uses more space than 4.x.  Also, the location of kernel
1788e5dc5f61SWarner Losh	# modules has changed.  If you are installing 5.x onto a 4.x
17895c195f59SWarner Losh	# system, you'll need about 30MB of free disk space on your /
17905c195f59SWarner Losh	# partition.  If you have less than this, you may encounter difficult
1791ca22e652SJens Schweikhardt	# to back out of problems with this procedure.  If /tmp is on
1792f643de42SWarner Losh	# the / partition, you may want to completely remove all its content
1793f643de42SWarner Losh	# before upgrading, as this can be a common source of shortage of
1794f643de42SWarner Losh	# space on /.
1795f643de42SWarner Losh
1796f643de42SWarner Losh	<make sure you have good level 0 dumps>
1797fc8c157fSWarner Losh	<maybe fix /etc/fstab>				[7]
179821c075eaSWarner Losh	make buildworld					[9]
1799802fc49dSBrian Feldman	cp sys/${MACHINE}/conf/GENERIC.hints /boot/device.hints [2]
1800e5dc5f61SWarner Losh	make kernel KERNCONF=YOUR_KERNEL_HERE		[8]
1801802fc49dSBrian Feldman	cd sys/boot ; make STRIP="" install		[6]
1802fc8c157fSWarner Losh							[1]
1803fc8c157fSWarner Losh	<reboot in single user>				[3]
18046586253aSWarner Losh	src/etc/rc.d/preseedrandom			[10]
1805835284beSWarner Losh	mergemaster -p					[5]
1806f8a4c901SWarner Losh	rm -rf /usr/include/g++
1807ba26da8eSWarner Losh	make installworld
1808802fc49dSBrian Feldman	mergemaster -i					[4]
1809ba26da8eSWarner Losh	<reboot>
1810ba26da8eSWarner Losh
1811fdb9f54dSWarner Losh	Make sure that you've read the UPDATING file to understand the
1812fdb9f54dSWarner Losh	tweaks to various things you need.  At this point in the life
1813fdb9f54dSWarner Losh	cycle of current, things change often and you are on your own
1814fdb9f54dSWarner Losh	to cope.  The defaults can also change, so please read ALL of
1815fdb9f54dSWarner Losh	the UPDATING entries.
1816ba26da8eSWarner Losh
18171dece4a9SWarner Losh	Also, if you are tracking -current, you must be subscribed to
18181dece4a9SWarner Losh	freebsd-current@freebsd.org.  Make sure that before you update
18191dece4a9SWarner Losh	your sources that you have read and understood all the recent
18201dece4a9SWarner Losh	messages there.  If in doubt, please track -stable which has
18211dece4a9SWarner Losh	much fewer pitfalls.
18221dece4a9SWarner Losh
1823134d2e86SWarner Losh	[1] If you have third party modules, such as vmware, you
1824134d2e86SWarner Losh	should disable them at this point so they don't crash your
1825134d2e86SWarner Losh	system on reboot.
1826134d2e86SWarner Losh
18279c1a7444SWarner Losh	[2] If you have legacy ISA devices, you may need to create
18289c1a7444SWarner Losh	your own device.hints to reflect your unique hardware
18299c1a7444SWarner Losh	configuration.
18309c1a7444SWarner Losh
1831ee6e1fc3SWarner Losh	[3] From the bootblocks, boot -s, and then do
1832ee6e1fc3SWarner Losh		fsck -p
1833ee6e1fc3SWarner Losh		mount -u /
1834ee6e1fc3SWarner Losh		mount -a
18356586253aSWarner Losh		cd src
183647d0d01fSWarner Losh		adjkerntz -i		# if CMOS is wall time
1837f6a0ef01SWarner Losh	Also, when doing a major release upgrade, it is required that
1838f6a0ef01SWarner Losh	you boot into single user mode to do the installworld.
183966986952SRuslan Ermilov	For the 4.x -> 5.x upgrade, you will also see many messages about
1840b705ae10SWarner Losh	needing to recompile your userland.  These are harmless and can
1841b705ae10SWarner Losh	be ignored while you proceed to the next step.
1842ee6e1fc3SWarner Losh
1843a6cd4f9dSWarner Losh	[4] Note: This step is non-optional.  Failure to do this step
1844a6cd4f9dSWarner Losh	can result in a significant reduction in the functionality of the
1845a6cd4f9dSWarner Losh	system.  Attempting to do it by hand is not recommended and those
1846a6cd4f9dSWarner Losh	that pursue this avenue should read this file carefully, as well
1847a6cd4f9dSWarner Losh	as the archives of freebsd-current and freebsd-hackers mailing lists
1848a6cd4f9dSWarner Losh	for potential gotchas.
1849a6cd4f9dSWarner Losh
1850835284beSWarner Losh	[5] Usually this step is a noop.  However, from time to time
1851835284beSWarner Losh	you may need to do this if you get unknown user in the following
1852835284beSWarner Losh	step.  It never hurts to do it all the time.  You may need to
1853835284beSWarner Losh	install a new mergemaster (cd src/usr.sbin/mergemaster && make
1854835284beSWarner Losh	install) after the buildworld before this step if you last updated
1855835284beSWarner Losh	from current before 20020224 or from -stable before 20020408.
1856835284beSWarner Losh
1857bd79cf40SWarner Losh	[6] 4.x boot loader can be used to boot a 5.x system, however
1858bd79cf40SWarner Losh	it is difficult to do that at best.  If you wish to try, then
1859bd79cf40SWarner Losh	you should interrupt the boot and at the ok prompt type:
1860bd79cf40SWarner Losh		ok unload
1861bd79cf40SWarner Losh		ok boot /boot/kernel/kernel
1862bd79cf40SWarner Losh	If this fails to work, you must install a new boot loader as
1863bd79cf40SWarner Losh	described here.
1864fc8c157fSWarner Losh
1865fc8c157fSWarner Losh	[7] Before you upgrade, please make sure that you are not using
1866e5dc5f61SWarner Losh	compatibility slices.  These are device names of the form /dev/ad0a
1867e5dc5f61SWarner Losh	without the actual slice name.  These will break with 5.x and newer.
1868fc8c157fSWarner Losh	You generally must update these entries to use the post FreeBSD
1869e5dc5f61SWarner Losh	2.x form of /dev/ad0s1a. i386 and pc98 are affected, while alpha
1870e5dc5f61SWarner Losh	is not.
1871fc8c157fSWarner Losh
1872c74fe6afSWarner Losh	[8] In order to have a kernel that can run the 4.x binaries
1873c74fe6afSWarner Losh	needed to do an installworld, you must include the COMPAT_FREEBSD4
1874c74fe6afSWarner Losh	option in your kernel.  Failure to do so may leave you with a system
1875c74fe6afSWarner Losh	that is hard to boot to recover.
1876c74fe6afSWarner Losh
1877e5dc5f61SWarner Losh	Make sure that you merge any new devices from GENERIC since the
1878e5dc5f61SWarner Losh	last time you updated your kernel config file.
1879e5dc5f61SWarner Losh
188021c075eaSWarner Losh	[9] When checking out sources, you must include the -P flag to have
1881e5dc5f61SWarner Losh	cvs prune empty directories.
1882e5dc5f61SWarner Losh
1883e5dc5f61SWarner Losh	If CPUTYPE is defined in your /etc/make.conf, make sure to use the
1884e5dc5f61SWarner Losh	"?=" instead of the "=" assignment operator, so that buildworld can
1885e5dc5f61SWarner Losh	override the CPUTYPE if it needs to.
1886e5dc5f61SWarner Losh
1887e5dc5f61SWarner Losh	MAKEOBJDIRPREFIX must be defined in an environment variable, and
1888e5dc5f61SWarner Losh	not on the command line, or in /etc/make.conf.  buildworld will
1889e5dc5f61SWarner Losh	warn if it is improperly defined.
1890e5dc5f61SWarner Losh
1891802fc49dSBrian Feldman	In case you would like to avoid installing new packages of everything,
1892802fc49dSBrian Feldman	you might want to uncomment the "COMPAT4X=	YES" entry, so that 4.x
189366986952SRuslan Ermilov	compatibility libraries are built which should allow you to continue
1894e5dc5f61SWarner Losh	using your existing software for a while.  Alternatively, you can
1895e5dc5f61SWarner Losh	install the misc/compat4x port.
18968633bbeaSBrooks Davis
18978633bbeaSBrooks Davis	[10] In order to create temporary files, /dev/random must be
18986586253aSWarner Losh	initialized by feeding data into it.  src/etc/rc.d/preseedrandom
18998633bbeaSBrooks Davis	takes care of this.
1900dc0dbf5cSWarner LoshFORMAT:
1901dc0dbf5cSWarner Losh
1902f699bbbbSMark OvensThis file contains a list, in reverse chronological order, of major
19031fc1a0dcSWarner Loshbreakages in tracking -current.  Not all things will be listed here,
1904f8ab1dd6SWarner Loshand it only starts on March 15, 2000.  Updating files can found in
1905f8ab1dd6SWarner Loshprevious releases if your system is older than this.
19061fc1a0dcSWarner Losh
1907e72fd46aSWarner LoshCopyright information:
1908e72fd46aSWarner Losh
1909e5dc5f61SWarner LoshCopyright 1998-2004 M. Warner Losh.  All Rights Reserved.
1910e72fd46aSWarner Losh
1911772730c7SWarner LoshRedistribution, publication, translation and use, with or without
1912772730c7SWarner Loshmodification, in full or in part, in any form or format of this
19139698f2c0SWarner Loshdocument are permitted without further permission from the author.
1914e72fd46aSWarner Losh
1915e72fd46aSWarner LoshTHIS DOCUMENT IS PROVIDED BY WARNER LOSH ``AS IS'' AND ANY EXPRESS OR
1916e72fd46aSWarner LoshIMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
1917e72fd46aSWarner LoshWARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
1918e72fd46aSWarner LoshDISCLAIMED.  IN NO EVENT SHALL WARNER LOSH BE LIABLE FOR ANY DIRECT,
1919e72fd46aSWarner LoshINDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
1920e72fd46aSWarner Losh(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
1921e72fd46aSWarner LoshSERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
1922e72fd46aSWarner LoshHOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
1923e72fd46aSWarner LoshSTRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
1924e72fd46aSWarner LoshIN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
1925e72fd46aSWarner LoshPOSSIBILITY OF SUCH DAMAGE.
1926e72fd46aSWarner Losh
1927e72fd46aSWarner LoshIf you find this document useful, and you want to, you may buy the
1928e72fd46aSWarner Loshauthor a beer.
1929e72fd46aSWarner Losh
193022306abcSWarner LoshContact Warner Losh if you have any questions about your use of
1931772730c7SWarner Loshthis document.
1932772730c7SWarner Losh
193397d92980SPeter Wemm$FreeBSD$
1934