xref: /freebsd/UPDATING (revision 00bd8f10be12959d857252e985d534a0abae1768)
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
26cf0684aeSMike Makonnen20041007:
27028a5b92SMike Makonnen	The FreeBSD keyword is no longer a requirement for a valid
28028a5b92SMike Makonnen	rc.d script. The rc(8) and rc.shutdown(8) scripts no longer check
29028a5b92SMike Makonnen	for the existence of this keyword when ordering rc.d scripts.
3000bd8f10SMike Makonnen	This change touches most of the file in /etc/rc.d; therefore,
3100bd8f10SMike Makonnen	if you have not modified any files in that directory it may
3200bd8f10SMike Makonnen	be easier to rm -rf /etc/rc.d and then use the -i switch with
3300bd8f10SMike Makonnen	mergemaster(8).
34028a5b92SMike Makonnen
35028a5b92SMike Makonnen20041007:
36cf0684aeSMike Makonnen	One of the syscalls the 1:1 threading library libthr uses has
37cf0684aeSMike Makonnen	changed, thus breaking ABI compatibility. Make sure you rebuild
38cf0684aeSMike Makonnen	this library with the kernel.
39cf0684aeSMike Makonnen
4085a8b887SKen Smith20041001:
4185a8b887SKen Smith	The following libraries had their version number bumped up:
4285a8b887SKen Smith		/lib/libm.so.2 -> libm.so.3
4385a8b887SKen Smith		/lib/libreadline.so.4 -> libreadline.so.5
4485a8b887SKen Smith		/usr/lib/libhistory.so.4 -> libhistory.so.5
4585a8b887SKen Smith		/usr/lib/libopie.so.2 -> libopie.so.3
4685a8b887SKen Smith		/usr/lib/libpcap.so.2 -> libpcap.so.3
4785a8b887SKen Smith	FreeBSD 4.10 versions of these libraries will be added to the
4885a8b887SKen Smith	compat4x collection.  If you expect to be able to run old 4.X
4985a8b887SKen Smith	executables you will need to remove the old versions of these
5085a8b887SKen Smith	libraries.  However note that any 5.X executables you have built
5185a8b887SKen Smith	will stop working once you remove those old libraries.  You should
5285a8b887SKen Smith	have all your ports/packages rebuilt before removing the old
5385a8b887SKen Smith	libraries.
5485a8b887SKen Smith
55893279a9SDag-Erling Smørgrav	As a temporary measure, if you do not have any 4.X executables,
56893279a9SDag-Erling Smørgrav	you can add the following lines to /etc/libmap.conf to force
57893279a9SDag-Erling Smørgrav	5.X executables to use the new libraries:
58893279a9SDag-Erling Smørgrav
59893279a9SDag-Erling Smørgrav		libhistory.so.4		libhistory.so.5
60893279a9SDag-Erling Smørgrav		libm.so.2		libm.so.3
61893279a9SDag-Erling Smørgrav		libopie.so.2		libopie.so.3
62893279a9SDag-Erling Smørgrav		libpcap.so.2		libpcap.so.3
63893279a9SDag-Erling Smørgrav		libreadline.so.4	libreadline.so.5
64893279a9SDag-Erling Smørgrav
65d6a8d588SMax Laier20040929:
66d6a8d588SMax Laier	The pfil API has gained an additional argument to pass an inpcb.
67d6a8d588SMax Laier	You should rebuild all pfil consuming modules: ipfw, ipfilter
68d6a8d588SMax Laier	and pf.
69d6a8d588SMax Laier
708f1bb389SDoug Barton20040928:
71cfeb1f52SDoug Barton	If named is enabled, the default is now to run it in a chroot
728f1bb389SDoug Barton	"sandbox." For users with existing configurations in
738f1bb389SDoug Barton	/etc/namedb the migration should be simple. Upgrade your
748f1bb389SDoug Barton	world as usual, then after installworld but before
758f1bb389SDoug Barton	mergemaster do the following:
768f1bb389SDoug Barton
778f1bb389SDoug Barton	If named is running: /etc/rc.d/named stop
788f1bb389SDoug Barton	cd /etc
798f1bb389SDoug Barton	mv namedb namedb.bak
808f1bb389SDoug Barton	mkdir -p /var/named/etc/namedb
818f1bb389SDoug Barton	cp -Rp namedb.bak/* /var/named/etc/namedb/
828f1bb389SDoug Barton	mergemaster (with your usual options)
838f1bb389SDoug Barton	If using the generated localhost* files:
848f1bb389SDoug Barton		cd /var/named/etc/namedb
858f1bb389SDoug Barton		/bin/sh make-localhost
868f1bb389SDoug Barton		rm -f localhost-v6.rev localhost.rev
87cfeb1f52SDoug Barton	/etc/rc.d/syslogd restart
888f1bb389SDoug Barton	/etc/rc.d/named start
898f1bb389SDoug Barton
908f1bb389SDoug Barton	If you are using a custom configuration, or if you have
918f1bb389SDoug Barton	customised the named_* variables in /etc/rc.conf[.local]
928f1bb389SDoug Barton	then you may have to adjust the instructions accordingly.
938f1bb389SDoug Barton	It is suggested that you carefully examine the new named
948f1bb389SDoug Barton	variables in /etc/defaults/rc.conf and the options in
958f1bb389SDoug Barton	/var/named/etc/namedb/named.conf to see if they might
968f1bb389SDoug Barton	now be more suitable.
978f1bb389SDoug Barton
985d36721aSDoug Barton20040925:
995d36721aSDoug Barton	BIND 9 has been imported into the base, and is now fully
1005d36721aSDoug Barton	functional. BIND 8 has now been removed. There are numerous
1015d36721aSDoug Barton	differences between BIND 8 and 9, and users with critical
1025d36721aSDoug Barton	named installations should read the migration documentation
1035d36721aSDoug Barton	in /usr/share/doc/bind9/misc/migration. There is also a
1045d36721aSDoug Barton	new instruction manual in /usr/share/doc/bind9/arm.
1055d36721aSDoug Barton
1065d36721aSDoug Barton	The key differences that most users will experience are in
1075d36721aSDoug Barton	how picky BIND 9 is about zone file format. If you are using
1085d36721aSDoug Barton	named as a resolving (caching) name server, you will likely
1095d36721aSDoug Barton	not have trouble.
1105d36721aSDoug Barton
111f50b1bdbSDoug Barton	The following files are part of the old BIND 8 installation
112f50b1bdbSDoug Barton	and should be removed:
113f50b1bdbSDoug Barton	/usr/bin/dnskeygen /usr/bin/dnsquery /usr/libexec/named-xfer
114f50b1bdbSDoug Barton	/usr/sbin/named.restart /usr/sbin/ndc
115f50b1bdbSDoug Barton
116f50b1bdbSDoug Barton	The following files have moved to /usr/bin, and should be
117f50b1bdbSDoug Barton	removed from their old locations:
118f50b1bdbSDoug Barton	/usr/sbin/nslookup /usr/sbin/nsupdate
119f50b1bdbSDoug Barton
120f5ee5a8bSMax Laier20040914:
121f5ee5a8bSMax Laier	The format of the pflogd(8) logfile "/var/log/pflog" has changed for
122f5ee5a8bSMax Laier	architectures that have a 64 bit long type to make it compatible to
123f5ee5a8bSMax Laier	the standard pcap format. In order to prevent corruption move away
124f5ee5a8bSMax Laier	any old logfile before using a new pflogd(8).
125f5ee5a8bSMax Laier
126d698cdb3SJohn-Mark Gurney20040906:
127d698cdb3SJohn-Mark Gurney	debug.witness_* has been renamed to debug.witness.*.  There are
128d698cdb3SJohn-Mark Gurney	compatibility tunables left in for a few days.  Update loader.conf
129d698cdb3SJohn-Mark Gurney	as necessary.
130d698cdb3SJohn-Mark Gurney
1314ff62bd9SBrooks Davis20040902:
1324ff62bd9SBrooks Davis	The ifi_epoch change has been reverted because the ABI breakage
1334ff62bd9SBrooks Davis	was too extensive.  If you are running with a kernel/userland
1344ff62bd9SBrooks Davis	containing the initial change (20040830), you should heed the
1354ff62bd9SBrooks Davis	warning about ifconfig incompatibility when upgrading again.
1364ff62bd9SBrooks Davis	With this change, 5.3 and 6.0 ifconfigs and kernels are once
1374ff62bd9SBrooks Davis	again interoperable.
1384ff62bd9SBrooks Davis
1391fc4519bSBrooks Davis20040830:
1401fc4519bSBrooks Davis	A new variable, ifi_epoch, has been added to struct if_data
1411fc4519bSBrooks Davis	which is part if struct ifnet.  This means all network drivers
1421fc4519bSBrooks Davis	and network monitoring applications need to be recompiled.
1431fc4519bSBrooks Davis
1443789fb75SBrooks Davis        WARNING WARNING WARNING WARNING WARNING WARNING WARNING
1453789fb75SBrooks Davis
1463789fb75SBrooks Davis        This also breaks ifconfig compatibility.  An old ifconfig will
1473789fb75SBrooks Davis        not work with the new kernel and a new ifconfig will not work
1483789fb75SBrooks Davis        with the old.  It is strongly recommended that you make a copy
1493789fb75SBrooks Davis        of your old ifconfig before installworld.  If you are installing
1503789fb75SBrooks Davis        remotely, you must copy over a new ifconfig before rebooting in
1513789fb75SBrooks Davis        to the new kernel.
1523789fb75SBrooks Davis
153c1c94d5cSRobert Watson20040828:
154c1c94d5cSRobert Watson	The default configuration for the network stack has been changed
155c1c94d5cSRobert Watson	such that it now runs without the Giant lock unless configured
156c1c94d5cSRobert Watson	otherwise.  If you experience network-related instability, you
157c1c94d5cSRobert Watson	may wish to try setting "debug.mpsafenet=0" or compiling the
158c1c94d5cSRobert Watson	kernel with "options NET_WITH_GIANT".  Details on the netperf
159c1c94d5cSRobert Watson	project may be found at:
160c1c94d5cSRobert Watson
161c1c94d5cSRobert Watson	    http://www.watson.org/~robert/freebsd/netperf/
162c1c94d5cSRobert Watson
163c1c94d5cSRobert Watson	Including the 20040828 announcement of configuration change
164c1c94d5cSRobert Watson	details.
165c1c94d5cSRobert Watson
166c21fd232SAndre Oppermann20040827:
167c21fd232SAndre Oppermann	PFIL_HOOKS are a fixed part of the network stack now and do not
168c21fd232SAndre Oppermann	need to be specified in the kernel configuration file anymore.
169c21fd232SAndre Oppermann
170f036d408SJulian Elischer20040819:
171f036d408SJulian Elischer	Netgraph changed its message format slightly to align the data
172f036d408SJulian Elischer	portion well on 64 bit machines.
173f036d408SJulian Elischer	Netgraph using utilities (e.g. ngctl, nghook, ppp, mpd,
174f036d408SJulian Elischer	pppoed, bluetooth, ATM) should be recompiled when a new kernel
175f036d408SJulian Elischer	is installed.
176f036d408SJulian Elischer
177b067abfaSAndre Oppermann20040817:
1780ce70eb4SAndre Oppermann	IPFW has been converted to use PFIL_HOOKS.  This change is
179b067abfaSAndre Oppermann	transparent to userland and preserves the ipfw ABI.  The ipfw
180b067abfaSAndre Oppermann	core packet inspection and filtering functions have not been
181b067abfaSAndre Oppermann	changed, only how ipfw is invoked is different.  Note that
182b067abfaSAndre Oppermann	"option PFIL_HOOKS" is required to use IPFIREWALL compiled
183b067abfaSAndre Oppermann	into the kernel or as KLD.
184b067abfaSAndre Oppermann
185f13a7951SDavid Malone20040814:
186f13a7951SDavid Malone	The RANDOM_IP_ID option has been replaced by the sysctl
187f13a7951SDavid Malone	net.inet.ip.random_id. If you had RANDOM_IP_ID in your kernel then
188f13a7951SDavid Malone	you may want to add "net.inet.ip.random_id=1" to /etc/sysctl.conf.
189f13a7951SDavid Malone
1903a004637SMax Laier20040807:
1913a004637SMax Laier	The size of 'struct ifnet' has changed due to the addition of the
1923a004637SMax Laier	if_carp placeholder.  All kernel modules implementing network
1933a004637SMax Laier	interfaces must be recompiled as a result.
1943a004637SMax Laier
1954f34d8d1SJohn-Mark Gurney20040806:
1964f34d8d1SJohn-Mark Gurney	Module loading has been fixed.  Some older installations will
197ac41c814SRuslan Ermilov	drop proper module_path initialization and modules will fail to
1984f34d8d1SJohn-Mark Gurney	load properly.  If you have a line in /boot/loader.rc that says:
1994f34d8d1SJohn-Mark Gurney	"initialize drop", do (i386 only):
2004f34d8d1SJohn-Mark Gurney		cp /usr/src/sys/boot/i386/loader/loader.rc /boot/loader.rc
2014f34d8d1SJohn-Mark Gurney		chown root:wheel /boot/loader.rc
2024f34d8d1SJohn-Mark Gurney		chmod 444 /boot/loader.rc
2034f34d8d1SJohn-Mark Gurney
2048f075db4SMark Murray20040802:
2058f075db4SMark Murray	making /dev/(null|zero) into a module proved to be too unpopular,
2068f075db4SMark Murray	so this bit has been revoked from the previous (20040801) entry.
2078f075db4SMark Murray
208d064d6dbSMark Murray20040801:
209d064d6dbSMark Murray	The /dev/mem, /dev/io /dev/(null/zero) devices are now modules,
210d064d6dbSMark Murray	so you may wish to add them to your kernel config file. See
211d064d6dbSMark Murray	GENERIC for examples.
212d064d6dbSMark Murray
213b289983eSAlexander Kabaev20040728:
21454bd5271SAlexander Kabaev	System compiler has been upgraded to GCC 3.4.2-pre. As with any major
21554bd5271SAlexander Kabaev	compiler upgrade, there are several issues to be aware of. GCC 3.4.x
21654bd5271SAlexander Kabaev	has broken C++ ABI compatibility with previous releases yet again
21754bd5271SAlexander Kabaev	and users will have to rebuild all their C++ programs with the new
218d0e54ab4SDavid E. O'Brien	compiler. If you are getting run-time error such as
219d0e54ab4SDavid E. O'Brien	/libexec/ld-elf.so.1: Undefined symbol "_ZNSs20_S_empty_rep_storageE"
220d0e54ab4SDavid E. O'Brien	This entry does apply to you.
221d0e54ab4SDavid E. O'Brien
222d0e54ab4SDavid E. O'Brien	A new unit-at-a-time optimization mode, which is default in this
223d0e54ab4SDavid E. O'Brien	compiler release, is more aggressive in removing unused static
224d0e54ab4SDavid E. O'Brien	symbols. This is the likely cause of 'make buildworld' breakages
225cd5f061cSWarner Losh	with non-default CFLAGS where optimization level is set to -O2
226cd5f061cSWarner Losh	or higher.
22754bd5271SAlexander Kabaev
2286e1afae3SWarner Losh	With the upgrade of the system compiler, the kernel has been upgraded
2296e1afae3SWarner Losh	to match the new system compiler.  This makes it impossible to build
2306e1afae3SWarner Losh	a new kernel with the old compiler.  Upgrade your system via
2316e1afae3SWarner Losh	make buildworld and make kernel (see below) to fix this problem.
2326e1afae3SWarner Losh
23336ed21e6SRobert Watson20040727:
23436ed21e6SRobert Watson	The size of 'struct ifnet' has changed due to the addition of
23536ed21e6SRobert Watson	the IFF_NEEDSGIANT flag (and what it implies).  All kernel
23636ed21e6SRobert Watson	modules implementing network interfaces must be recompiled as
23736ed21e6SRobert Watson	a result.
23836ed21e6SRobert Watson
2396305ac24SSeigo Tanimura20040716:
2406305ac24SSeigo Tanimura	The sound device drivers are renamed.  `sound' is always required,
2416305ac24SSeigo Tanimura	while `snd_*' should be configured accordingly to your hardware.
2426305ac24SSeigo Tanimura	Refer to NOTES for the detail of the drivers.
2436305ac24SSeigo Tanimura
244e623dcb7SMarcel Moolenaar20040710:
245e623dcb7SMarcel Moolenaar	__FreeBSD_version bumped to 502122.
246e623dcb7SMarcel Moolenaar
247e623dcb7SMarcel Moolenaar20040710:
248e623dcb7SMarcel Moolenaar	The console initialization on Alpha has been reworked and is now
249e623dcb7SMarcel Moolenaar	identical to other platforms. This means that the hardcoding of
250e623dcb7SMarcel Moolenaar	the serial console and the debug port has been removed. As such,
251e623dcb7SMarcel Moolenaar	hints are now required for the sio(4) driver to become a console
252e623dcb7SMarcel Moolenaar	or debug port. The NO_SIO option has been decommissioned because
253e623dcb7SMarcel Moolenaar	of this.
254e623dcb7SMarcel Moolenaar
255e623dcb7SMarcel Moolenaar20040710:
256e623dcb7SMarcel Moolenaar	A revamp of the debugging code in the kernel with some visible
257e623dcb7SMarcel Moolenaar	changes beyond just the debugging experience:
258e623dcb7SMarcel Moolenaar	o  The DDB option is now specific to the DDB debugger backend
259e623dcb7SMarcel Moolenaar	   and should not be used any more for conditional compilation
260e623dcb7SMarcel Moolenaar	   of debugging code for when debugging is enabled. Use the KDB
261e623dcb7SMarcel Moolenaar	   option for this.
262e623dcb7SMarcel Moolenaar	o  The WITNESS_DDB, DDB_TRACE and DDB_UNATTENDED options have
263e623dcb7SMarcel Moolenaar	   been renamed to WITNESS_KDB, KDB_TRACE and KDB_UNATTENDED
264e623dcb7SMarcel Moolenaar	   respectively. This is in line with the first bullet.
265e623dcb7SMarcel Moolenaar	o  The remote GDB support has been untangled from DDB and needs
2665bd7ce0aSJens Schweikhardt	   to be enabled separately now. Use the GDB option for this.
267e623dcb7SMarcel Moolenaar	o  The GDB_REMOTE_CHAT option has been removed. Support for this
268e623dcb7SMarcel Moolenaar	   homegrown feature is discontinued. The GDB remote protocol
269e623dcb7SMarcel Moolenaar	   supports console output and it makes sense to use that.
270e623dcb7SMarcel Moolenaar	o  The DDB_NOKLDSYM option has been removed. The DDB debugger
271e623dcb7SMarcel Moolenaar	   now supports both direct symbol table lookups as well as KLD
272e623dcb7SMarcel Moolenaar	   symbol lookups through the linker.
273e623dcb7SMarcel Moolenaar
2746421d1dbSMaksim Yevmenkin20040708:
2756421d1dbSMaksim Yevmenkin	Bluetooth code has been marked as non-i386 specific.
2766421d1dbSMaksim Yevmenkin	__FreeBSD_version has been bumped to 502121 to mark this change.
2776421d1dbSMaksim Yevmenkin
27858af3216SWarner Losh20040702:
27958af3216SWarner Losh	The native preemption has been added to the kernel scheduler.
2805bd7ce0aSJens Schweikhardt	There is some report that the ULE scheduler was broken in some
2815bd7ce0aSJens Schweikhardt	machines and we encourage users using the ULE scheduler either
2825bd7ce0aSJens Schweikhardt	stick with a known good kernel, or temporarily switch to the 4BSD
28358af3216SWarner Losh	scheduler as a workaround.
28458af3216SWarner Losh
285c2dba668SNate Lawson20040630:
2868ed370fdSJulian Elischer	The netgraph ABI version number has been incremented to indicate
2878ed370fdSJulian Elischer	an incompatible change in the ABI. Old netgraph nodes will refuse
288a6c26e1cSBruce M Simpson	to attach until recompiled. Netgraph now uses mbuf tags to move
289a6c26e1cSBruce M Simpson	metadata and this commit removes its home-grown metadata facility.
290a6c26e1cSBruce M Simpson	Nodes should just recompile, unless they use metadata, in which
291a6c26e1cSBruce M Simpson	case the changes are simple; the file ng_ksocket.c serves as an
292a6c26e1cSBruce M Simpson	example of such changes.
2938ed370fdSJulian Elischer
29458af3216SWarner Losh	This also broke i4b, although the compile problem has been papered
29558af3216SWarner Losh	over.
29658af3216SWarner Losh
2978ed370fdSJulian Elischer20040630:
298c2dba668SNate Lawson	ACPI has been updated to disable known-bad BIOS revisions.  A message
2995bd7ce0aSJens Schweikhardt	will be printed on the console indicating that ACPI has been disabled
300c2dba668SNate Lawson	automatically and that the user should use a newer BIOS, if possible.
301c2dba668SNate Lawson	If you think ACPI does work on your system and want to override
302c2dba668SNate Lawson	this (i.e., for testing), set hint.acpi.0.disabled="0" at the
303c2dba668SNate Lawson	loader prompt.
304c2dba668SNate Lawson
3058ee2ac9eSMax Laier20040623:
3065bd7ce0aSJens Schweikhardt	pf was updated to OpenBSD-stable 3.5 and pflogd(8) is privilege
3078ee2ac9eSMax Laier	separated now. It uses the newly created "_pflogd" user/group
3088ee2ac9eSMax Laier	combination. If you plan to use pflogd(8) make sure to run
3098ee2ac9eSMax Laier	mergemaster -p or install the "_pflogd" user and group manually.
3108ee2ac9eSMax Laier
3113db5687dSBrooks Davis20040622:
3123db5687dSBrooks Davis	Network interface cloning has been overhauled.  This change will
3133db5687dSBrooks Davis	require a recompile of modules using cloning and modification of
3143db5687dSBrooks Davis	external ones to the new API.  __FreeBSD_version has been bumped
3153db5687dSBrooks Davis	to 502119 to mark this change.  Additionally, users creating
3163db5687dSBrooks Davis	stf(4) interfaces via "ifconfig stf" will need to update their
3173db5687dSBrooks Davis	scripts as this will create an interface named "stf" instead of
3183db5687dSBrooks Davis	"stf0" and ifconfig will not print "stf0" to stdout.
3193db5687dSBrooks Davis
320e0ae81f3SDag-Erling Smørgrav20040621:
321e0ae81f3SDag-Erling Smørgrav	On 20040524, the /etc/rc.d/nsswitch script was modified to
322e0ae81f3SDag-Erling Smørgrav	automatically create /etc/nsswitch.conf on startup if it did
323e0ae81f3SDag-Erling Smørgrav	not already exist.  Unfortunately, an error in the man page
324e0ae81f3SDag-Erling Smørgrav	was carried over to the script, resulting in incorrect
325e0ae81f3SDag-Erling Smørgrav	nsswitch settings.  The simplest remedy is to remove both
326e0ae81f3SDag-Erling Smørgrav	/etc/nsswitch.conf and /etc/host.conf; they will be recreated
327e0ae81f3SDag-Erling Smørgrav	during the next reboot.
328e0ae81f3SDag-Erling Smørgrav
3294717d22aSJohn Polstra20040614:
3304717d22aSJohn Polstra	The return value of sema_timedwait(9) has been changed to
3314717d22aSJohn Polstra	make it consistent with cv_timedwait(9).  Be sure to recompile
3324717d22aSJohn Polstra	the ips module and any third-party modules which call
3334717d22aSJohn Polstra	sema_timedwait.
3344717d22aSJohn Polstra
3356cb7a382SMax Laier20040613:
3366cb7a382SMax Laier	ALTQ is now linked to the build. This breaks ABI for struct ifnet.
3376cb7a382SMax Laier	Make sure to recompile modules and any userland that makes use of
338df843493SMax Laier	sizeof(struct ifnet). In order to get the altq headers in place
339df843493SMax Laier	please recompile and reinstall world.
3406cb7a382SMax Laier
3412454685eSJulian Elischer20040607:
3422454685eSJulian Elischer	Splitting kern_thread.c into 2 files (adding kern_kse.c)
3432454685eSJulian Elischer	requires that you re-run config after updating your tree.
3442454685eSJulian Elischer
34564fef830SSeigo Tanimura20040601:
34664fef830SSeigo Tanimura	The MIDI drivers have been removed. Until the new module-friendly
34764fef830SSeigo Tanimura	ones are merged, remove or comment out midi and seq from your
34864fef830SSeigo Tanimura	kernel configuration.
34964fef830SSeigo Tanimura
350bb4f06e7SAndre Oppermann20040423:
351bb4f06e7SAndre Oppermann	Due to a new option in ipfw (versrcreach) the ipfw(8) command
352bb4f06e7SAndre Oppermann	needs to be recompiled.  Normal accept/reject rules without
353bb4f06e7SAndre Oppermann	options are not affected but those with options may break until
354bb4f06e7SAndre Oppermann	ipfw(8) is recompiled.
355bb4f06e7SAndre Oppermann
35605641e82SColin Percival20040420:
35705641e82SColin Percival	Due to changes in the callout ABI, kernels compiled after this
35805641e82SColin Percival	date may be incompatible with kernel modules compiled prior to
35905641e82SColin Percival	20040406.
36005641e82SColin Percival
361d0dc9183SWarner Losh20040414:
362d0dc9183SWarner Losh	The PCI bus power state stuff has been turned on.  If this causes
363d0dc9183SWarner Losh	problems for your system, please disable it using the tunable
364d0dc9183SWarner Losh	hw.pci.do_powerstate=0.
365d0dc9183SWarner Losh
366d0dc9183SWarner Losh20040412:
367d0dc9183SWarner Losh	The bulk of the pci problems have been fixed, although the floppy
368d0dc9183SWarner Losh	drive is still broken.
369d0dc9183SWarner Losh
370d0dc9183SWarner Losh20040410:
371d0dc9183SWarner Losh	A substantial update to the pci bus resource and power management
372d0dc9183SWarner Losh	have been committed.  Expect a bumpy ride for a few days until
373d0dc9183SWarner Losh	the unanticipated problems have been resolved.
374d0dc9183SWarner Losh
3758633bbeaSBrooks Davis20040409:
3768633bbeaSBrooks Davis        Due to changes in the the Yarrow initialization process,
3778633bbeaSBrooks Davis        /dev/random needs to be fed before operations requiring
3788633bbeaSBrooks Davis        temp files can succeed in single user mode.  This includes
3798633bbeaSBrooks Davis        running "make installworld". /dev/random may be fed by running
38076c3e0f7SBrooks Davis        "/etc/rc.d/initrandom start" or with 20040415 source by running
3818633bbeaSBrooks Davis        "/etc/rc.d/preseedrandom".
3828633bbeaSBrooks Davis
383d40d033aSRobert Watson20040322:
384d40d033aSRobert Watson	The debug.mpsafenet tunable controls whether the kernel Giant
385d40d033aSRobert Watson	lock is held across the lower levels of the network stack, and
386d40d033aSRobert Watson	by default is turned off.  In the few days following 20040322,
387d40d033aSRobert Watson	the behavior of debug.mpsafenet will change such that this
388d40d033aSRobert Watson	tunable controls Giant over all levels of the network stack.
389d40d033aSRobert Watson	If you are currently setting debug.mpsafenet to 1, you should
390d40d033aSRobert Watson	set it back to 0 (the default) again during the change-over.
391d40d033aSRobert Watson	An additional note will be added to UPDATING when sufficient
392d40d033aSRobert Watson	locking is merged to permit this to take place.
393d40d033aSRobert Watson
394ec9b318eSGarance A Drosehn20040310:
395ec9b318eSGarance A Drosehn	The FreeBSD/sparc64 platform is changing time_t from 32-bits to
396ec9b318eSGarance A Drosehn	64-bits.  This is a very major incompatible change, so people
397ec9b318eSGarance A Drosehn	using FreeBSD/sparc64 *must* read the UPDATING.64BTT file for
398ec9b318eSGarance A Drosehn	detailed instructions on how to make this upgrade.  People
399ec9b318eSGarance A Drosehn	upgrading FreeBSD on other platforms can ignore this event.
400ec9b318eSGarance A Drosehn
401fc28f1ffSMax Laier20040308:
402fc28f1ffSMax Laier	The packet filter (pf) is now installed with the base system. Make
403fc28f1ffSMax Laier	sure to run mergemaster -p before installworld to create required
4044c86458bSDavid E. O'Brien	user account ("proxy"). If you do not want to build pf with your
4054c86458bSDavid E. O'Brien	system you can use the NO_PF knob in make.conf.
406fc28f1ffSMax Laier	Also note that pf requires "options PFIL_HOOKS" in the kernel. The
407fc28f1ffSMax Laier	pf system consists of the following three devices:
408fc28f1ffSMax Laier	device		pf		# required
409fc28f1ffSMax Laier	device		pflog		# optional
410fc28f1ffSMax Laier	device		pfsync		# optional
411fc28f1ffSMax Laier
4123aff5d06SDag-Erling Smørgrav20040303:
4133aff5d06SDag-Erling Smørgrav	If you are having trouble with the libc_r -> libpthread transition
4143aff5d06SDag-Erling Smørgrav	(see the 20040130 entry), place the following lines at the top of
4153aff5d06SDag-Erling Smørgrav	/etc/libmap.conf:
4163aff5d06SDag-Erling Smørgrav
4173aff5d06SDag-Erling Smørgrav	libc_r.so.5		libpthread.so.1
4183aff5d06SDag-Erling Smørgrav	libc_r.so		libpthread.so
4193aff5d06SDag-Erling Smørgrav
4203aff5d06SDag-Erling Smørgrav	This will cause all programs and libraries linked against libc_r
4213aff5d06SDag-Erling Smørgrav	to use libpthread instead.
4223aff5d06SDag-Erling Smørgrav
423fd63c5b3SDag-Erling Smørgrav20040226:
4249d7f8c80SDag-Erling Smørgrav	Some sshd configuration defaults have changed: protocol version 1
425fd63c5b3SDag-Erling Smørgrav	is no longer enabled by default, and password authentication is
426fd63c5b3SDag-Erling Smørgrav	disabled by default if PAM is enabled (which it is by default).
427fd63c5b3SDag-Erling Smørgrav	OpenSSH clients should not be affected by this; other clients may
428fd63c5b3SDag-Erling Smørgrav	have to be reconfigured, upgraded or replaced.
429fd63c5b3SDag-Erling Smørgrav
430714ae42aSBruce M Simpson20040225:
431e07a40f3SBrian Feldman	The ABIs defined in <resolv.h> and <netdb.h> have been updated
432e07a40f3SBrian Feldman	to support improved reentrancy.  Multi-threaded programs that
433e07a40f3SBrian Feldman	reference the "_res" or "h_errno" symbols may experience some
434e07a40f3SBrian Feldman	problems if they are not recompiled.  Single-threaded programs
435e07a40f3SBrian Feldman	should remain unaffected.
436e07a40f3SBrian Feldman
437e07a40f3SBrian Feldman20040225:
438714ae42aSBruce M Simpson	routed has been updated in the base system from the vendor
439714ae42aSBruce M Simpson	sources, routed v2.27, from rhyolite.com. This change means that
440714ae42aSBruce M Simpson	for users who use RIP's MD5 authentication feature, FreeBSD
441714ae42aSBruce M Simpson	-CURRENT's routed is now incompatible with previous versions
442714ae42aSBruce M Simpson	of FreeBSD; however it is now compatible with implementations
443714ae42aSBruce M Simpson	from Sun, Cisco and other vendors.
444714ae42aSBruce M Simpson
445fbd2e692SAndre Oppermann20040224:
446fbd2e692SAndre Oppermann	The tcpcb structure has changed and makes a recompile of libkvm
4475bd7ce0aSJens Schweikhardt	and related userland network utilities necessary.
448fbd2e692SAndre Oppermann
449158b90daSWarner Losh20040222:
450158b90daSWarner Losh	The cdevsw structure has changed in two externally visible ways.
451158b90daSWarner Losh	First, the sense of the D_GIANT flag has changed to D_NEEDSGIANT.
452158b90daSWarner Losh	Second, the d_version field must be filled in with D_VERSION.
453158b90daSWarner Losh	Drivers outside the tree will need to be updated.
454158b90daSWarner Losh
455b7b1e150SMike Makonnen20040207:
456b7b1e150SMike Makonnen	The /etc/rc.d/ttys script has been removed. It is no longer
457b7b1e150SMike Makonnen	necessary since devfs has been mandatory for some time.
458b7b1e150SMike Makonnen
459aca89ee6SDaniel Eischen20040130:
460aca89ee6SDaniel Eischen	libkse has been renamed back to libpthread and is now the
461aca89ee6SDaniel Eischen	default threads library.  The gcc -pthread option has also
462aca89ee6SDaniel Eischen	been changed to link to libpthread instead of libc_r.  For
463aca89ee6SDaniel Eischen	alpha and sparc64 machines, libkse is not renamed and links
464aca89ee6SDaniel Eischen	are installed so that libpthread points to libc_r.  Until
465aca89ee6SDaniel Eischen	the ports system is updated to handle this change, it is
466aca89ee6SDaniel Eischen	recommended that folks install an /etc/libmap.conf(5) that
467aca89ee6SDaniel Eischen	maps libc_r to libpthread.  If you have any binaries or
468aca89ee6SDaniel Eischen	libraries linked to libkse, then it is also recommended
469aca89ee6SDaniel Eischen	that you map libkse to libpthread.  Anyone that is using
470aca89ee6SDaniel Eischen	nvidia supplied drivers and libraries should use a libmap.conf
471aca89ee6SDaniel Eischen	that maps libpthread to libc_r since their drivers/libraries
472aca89ee6SDaniel Eischen	do not work with libpthread.
473aca89ee6SDaniel Eischen
47468b7b3a9SAlex Dupre20040125:
47568b7b3a9SAlex Dupre	ULE has entered into its probationary period as the default scheduler
47668b7b3a9SAlex Dupre	in GENERIC.  For the average user, interactivity is reported to be
47768b7b3a9SAlex Dupre	better in many cases.  On SMP machines ULE will be able to make more
47868b7b3a9SAlex Dupre	efficient use of the available parallel resources.  If you are not
47968b7b3a9SAlex Dupre	running it now, please switch over, replacing the kernel option
48068b7b3a9SAlex Dupre	SCHED_4BSD with SCHED_ULE.
48168b7b3a9SAlex Dupre
482ff46e0deSWarner Losh20040125:
483ff46e0deSWarner Losh	Move LongRun support out of identcpu.c, where it hardly
484ff46e0deSWarner Losh	belongs, into its own file and make it opt-in, not mandatory,
485ff46e0deSWarner Losh	depending on CPU_ENABLE_LONGRUN config(8) option.
486ff46e0deSWarner Losh
487ce41f4bfSRobert Watson20031213:
488ce41f4bfSRobert Watson	src/lib/libc/gen/initgroups.c:1.8 now causes logins to fail
489ce41f4bfSRobert Watson	if the login process is unable to successfully set the
490ce41f4bfSRobert Watson	process credentials to include all groups defined for the
491ce41f4bfSRobert Watson	user.  The current kernel limit is 16 groups; administrators
492ce41f4bfSRobert Watson	may wish to check that users do not have over 16 groups
493ce41f4bfSRobert Watson	defined, or they will be unable to log in.
494ce41f4bfSRobert Watson
495c124fa05SJohn Baldwin20031203:
496c124fa05SJohn Baldwin	The ACPI module has been reactivated.  It is no longer required
497c124fa05SJohn Baldwin	to compile ACPI support into kernels statically.
498c124fa05SJohn Baldwin
4998ad1f5e4SHartmut Brandt20031112:
50030093b05SWarner Losh	The statfs structure has been updated with 64-bit fields to
50130093b05SWarner Losh	allow accurate reporting of multi-terabyte filesystem
50297209ca3SRobert Watson	sizes. You should build world, then build and boot the new kernel
50397209ca3SRobert Watson	BEFORE doing a `installworld' as the new kernel will know about
50497209ca3SRobert Watson	binaries using the old statfs structure, but an old kernel will
50597209ca3SRobert Watson	not know about the new system calls that support the new statfs
5063f631d52SMarcel Moolenaar	structure.
5073f631d52SMarcel Moolenaar	Note that the backwards compatibility is only present when the
5083f631d52SMarcel Moolenaar	kernel is configured with the COMPAT_FREEBSD4 option. Since
5093f631d52SMarcel Moolenaar	even /bin/sh will not run with a new kernel without said option
5103f631d52SMarcel Moolenaar	you're pretty much dead in the water without it. Make sure you
5113f631d52SMarcel Moolenaar	have COMPAT_FREEBSD4!
5123f631d52SMarcel Moolenaar	Running an old kernel after a `make world' will cause programs
5133f631d52SMarcel Moolenaar	such as `df' that do a statfs system call to fail with a bad
5143f631d52SMarcel Moolenaar	system call. Marco Wertejuk <wertejuk@mwcis.com> also reports
5153f631d52SMarcel Moolenaar	that cfsd (ports/security/cfs) needs to be recompiled after
5163f631d52SMarcel Moolenaar	these changes are installed.
51730093b05SWarner Losh
51830093b05SWarner Losh	****************************DANGER*******************************
51930093b05SWarner Losh
52030093b05SWarner Losh	DO NOT make installworld after the buildworld w/o building and
52130093b05SWarner Losh	installing a new kernel FIRST.  You will be unable to build a
52230093b05SWarner Losh	new kernel otherwise on a system with new binaries and an old
52330093b05SWarner Losh	kernel.
52464a18d6fSKirk McKusick
52564a18d6fSKirk McKusick20031112:
5268ad1f5e4SHartmut Brandt	Some netgraph string length constants have been changed. This
5278ad1f5e4SHartmut Brandt	change requires the netgraph kernel modules and all netgraph
5288ad1f5e4SHartmut Brandt	userland components to be in sync. Especially users who require
5298ad1f5e4SHartmut Brandt	netgraph to boot need to make sure to have world and kernel in
5308ad1f5e4SHartmut Brandt	sync before rebooting.
5318ad1f5e4SHartmut Brandt
532c53a5d8fSJohn Baldwin20031111:
533c53a5d8fSJohn Baldwin	Hyperthreading logical CPU's are no longer probed by default
534c53a5d8fSJohn Baldwin	when using the MP Table.  If ACPI is being used, then logical
535c53a5d8fSJohn Baldwin	CPUs will be probed if hyperthreading is enabled in the BIOS.
536c53a5d8fSJohn Baldwin	If ACPI is not being used and hyperthreading is enabled in the
537c53a5d8fSJohn Baldwin	BIOS, logical CPUs can be enabled by building a custom kernel
538c53a5d8fSJohn Baldwin	with the option MPTABLE_FORCE_HTT enabled.
539c53a5d8fSJohn Baldwin
5408bf455a5SJohn Baldwin20031103:
5418bf455a5SJohn Baldwin	The i386 APIC_IO kernel option has been replaced by
5428bf455a5SJohn Baldwin	'device apic'.  The ACPI module has also been temporarily
5432a2cfa95SCeri Davies	disabled, so ACPI must be statically compiled into your
5448bf455a5SJohn Baldwin	kernel using 'device acpi' if you wish to use the ACPI driver.
5458bf455a5SJohn Baldwin
5469bf40edeSBrooks Davis20031031:
5479bf40edeSBrooks Davis	The API and ABI of struct ifnet have been changed by removing
5489bf40edeSBrooks Davis	the if_name and if_unit members and replacing them with
5499bf40edeSBrooks Davis	if_xname, if_dname, and if_dunit.  All network drivers and most
5509bf40edeSBrooks Davis	userland programs which include net/if_var.h must be updated
5519bf40edeSBrooks Davis	and recompiled.  __FreeBSD_version has been bumped to 501113 to
5529bf40edeSBrooks Davis	reflect this change.
5539bf40edeSBrooks Davis
55447a42c7aSPoul-Henning Kamp20030928:
55547a42c7aSPoul-Henning Kamp	Changes to the cdevsw default functions have been made to remove
55647a42c7aSPoul-Henning Kamp	the need to specify nullopen() and nullclose() explicitly.
5575bd7ce0aSJens Schweikhardt	__FreeBSD_version bumped to 501110.
55847a42c7aSPoul-Henning Kamp
55907105342SMax Khon20030926:
56007105342SMax Khon	kiconv(3) has been added. mount_msdosfs(8), mount_ntfs(8) and
56107105342SMax Khon	mount_cd9660(8) need to be in sync with kernel.
56207105342SMax Khon
56317dcd026SSam Leffler20030925:
56417dcd026SSam Leffler	Configuring a system to use IPFILTER now requires that PFIL_HOOKS
56517dcd026SSam Leffler	also be explicitly configured.  Previously this dependency was
56617dcd026SSam Leffler	magically handled through some cruft in net/pfil.h; but that has
56717dcd026SSam Leffler	been removed.  Building a kernel with IPFILTER but not PFIL_HOOKS
56817dcd026SSam Leffler	will fail with obtuse errors in ip_fil.c.
56917dcd026SSam Leffler
570fedf1d01SBruce M Simpson20030923:
571fedf1d01SBruce M Simpson	Fix a bug in arplookup(), whereby a hostile party on a locally
572fedf1d01SBruce M Simpson	attached network could exhaust kernel memory, and cause a system
573fedf1d01SBruce M Simpson	panic, by sending a flood of spoofed ARP requests. See
574fedf1d01SBruce M Simpson	FreeBSD-SA-03:14.arp.
575fedf1d01SBruce M Simpson
576db38f9cbSJacques Vidrine20030915:
577db38f9cbSJacques Vidrine	A change to /etc/defaults/rc.conf now causes inetd to be started
578db38f9cbSJacques Vidrine	with `-C 60' if it is not overridden in /etc/rc.conf.  This
579db38f9cbSJacques Vidrine	causes inetd to stop accepting connections from an IP address
580db38f9cbSJacques Vidrine	that exceeds the rate of 60 connections per minute.
581db38f9cbSJacques Vidrine
582c09d2c2bSMike Makonnen20030829:
583c09d2c2bSMike Makonnen	The following rc.d scripts have been removed and should be
584c09d2c2bSMike Makonnen	deleted from your installation: atm2.sh atm3.sh devdb
585c09d2c2bSMike Makonnen	localdaemons network1 network2 network3. Depending on when
586c09d2c2bSMike Makonnen	you last updated world and used mergemaster(8) you may or
587c09d2c2bSMike Makonnen	may not have problems during the rc boot sequence. The simplest
588c09d2c2bSMike Makonnen	solution is an 'rm -rf /etc/rc.d/*' and then 'mergemaster -i'.
589c09d2c2bSMike Makonnen	The atm2.sh atm3.sh and devdb scripts were removed some time
590c09d2c2bSMike Makonnen	ago, so depending on when you installed -CURRENT these scripts
591c09d2c2bSMike Makonnen	may or may not exist on your system.
592c09d2c2bSMike Makonnen
59317c159dcSSøren Schmidt20030824:
59417c159dcSSøren Schmidt	ATAng has been committed. You need to build world as sys/ata.h
59517c159dcSSøren Schmidt	has changed, and userland atacontrol depends on it.
596f240812bSSøren Schmidt	If you use ATA SW raids you need "device ataraid" in your
597f240812bSSøren Schmidt	kernel config file, as it is no longer pulled in automatically.
59817c159dcSSøren Schmidt
599c1f61aa9SDavid E. O'Brien20030819:
600c1f61aa9SDavid E. O'Brien	The OFW_NEWPCI option has been turned on in the Sparc64 GENERIC kernel.
601c1f61aa9SDavid E. O'Brien	Among other things, this changes the device enumeration to be
602c1f61aa9SDavid E. O'Brien	closer to Solaris.  Be aware that, this can even cause the machine
603c1f61aa9SDavid E. O'Brien	to not boot without manual intervention before the fstab is adjusted.
60469f7bcf3SWarner Losh
60538c962e7SNate Lawson20030728:
60638c962e7SNate Lawson	All current USB and Firewire quirks in da(4) have been deprecated
60738c962e7SNate Lawson	and will be removed for 5.2.  If this causes failure for your
60838c962e7SNate Lawson	umass(4) devices, enable "options DA_OLD_QUIRKS" in your kernel
60938c962e7SNate Lawson	and send the output of "camcontrol inquiry da0" to scsi@freebsd.org
61038c962e7SNate Lawson	so the quirk can be re-enabled.
61138c962e7SNate Lawson
61274111097SWarner Losh20030724:
61374111097SWarner Losh	Problems with entry 20030714 have been corrected and no known issues
61474111097SWarner Losh	with /rescue and -j exist for host systems after this point in time.
61574111097SWarner Losh
616178cf4e9SWarner Losh20030722:
617178cf4e9SWarner Losh	FPU-less support has been removed from FreeBSD.  Chances are you won't
618178cf4e9SWarner Losh	notice.  386+387 support should still work after this change, but
619178cf4e9SWarner Losh	it is now a minimum requirement for the i386 port that you have real
620178cf4e9SWarner Losh	FPU hardware.
621178cf4e9SWarner Losh
622178cf4e9SWarner Losh20030714:
623178cf4e9SWarner Losh	Some people are having problems with changes related to /rescue.
624178cf4e9SWarner Losh	If you are building -j N, you will need to define NO_RESCUE.  Others
625178cf4e9SWarner Losh	will need to define it if /rescue has issues with their environment.
626178cf4e9SWarner Losh	People should report those issues to current@.
627178cf4e9SWarner Losh
628157c629aSWarner Losh20030711:
629157c629aSWarner Losh	gcc was upgraded to 3.3.  You are advised to not build -DNOCLEAN
6308b71efcaSCeri Davies	across this point.  Further, it might be a good idea to remove
63105538fa9SWarner Losh	/usr/obj.
632157c629aSWarner Losh
63374111097SWarner Losh20030610:
63474111097SWarner Losh	Remove deprecated locale names and transition period code
63574111097SWarner Losh	for them, finishing switching to the new scheme. Check your
63674111097SWarner Losh	LANG environment variable.
63774111097SWarner Losh
63874111097SWarner Losh20030609:
63974111097SWarner Losh	CCD has been changed to be a fully GEOMified class.  Kernel
64074111097SWarner Losh	and ccdconfig(8) needs to be in sync, this is particularly
64174111097SWarner Losh	important to remember beforehand if your source tree is on
64274111097SWarner Losh	a ccd device.  Consider making a copy of the old ccdconfig
64374111097SWarner Losh	into /boot/kernel.good or wherever you keep your backup
64474111097SWarner Losh	kernel.
64574111097SWarner Losh
64674111097SWarner Losh20030605:
6476cc6353fSMarcel Moolenaar	There was a small window in which sed(1) was broken.  If you
6486cc6353fSMarcel Moolenaar	happen to have sed(1) installed during that window, which is
6496cc6353fSMarcel Moolenaar	evidenced by an inability to build world with the failure
6506cc6353fSMarcel Moolenaar	given below, you need to manually build and install sed(1)
6516cc6353fSMarcel Moolenaar	(and only sed(1)) before doing anything else. This is a one-
6526cc6353fSMarcel Moolenaar	time snafu. Typical failure mode:
6536cc6353fSMarcel Moolenaar
6546cc6353fSMarcel Moolenaar	In file included from /usr/src/contrib/binutils/bfd/targets.c:1092:
6556cc6353fSMarcel Moolenaar	targmatch.h:7:1: null character(s) ignored
6566cc6353fSMarcel Moolenaar	targmatch.h:12:1: null character(s) ignored
6576cc6353fSMarcel Moolenaar	targmatch.h:16:1: null character(s) ignored
6586cc6353fSMarcel Moolenaar		:
6596cc6353fSMarcel Moolenaar
6606cc6353fSMarcel Moolenaar	The window of "sed(1)-uction" is from Wed Jun 4 15:31:55 2003 UTC
6616cc6353fSMarcel Moolenaar	to Thu Jun 5 12:10:19 2003 UTC (from rev 1.30 to rev 1.31 of
6626cc6353fSMarcel Moolenaar	usr.bin/sed/process.c).
6636cc6353fSMarcel Moolenaar
66452b47445SMark Murray20030505:
66552b47445SMark Murray	Kerberos 5 (Heimdal) is now built by default. Setting
66652b47445SMark Murray	MAKE_KERBEROS5 no longer has any effect. If you do NOT
66752b47445SMark Murray	want the "base" Kerberos 5, you need to set NO_KERBEROS.
66852b47445SMark Murray
669a26df538SWarner Losh20030502:
670a26df538SWarner Losh	groff has been updated.  If you try to do a buildworld and
671a26df538SWarner Losh	get an infinite loop in troff, update to May 4th or newer.  If you
672a26df538SWarner Losh	have a newer kernel than userland, you may need to set the OSRELDATE
673a26df538SWarner Losh	to 500110 in your environment before starting a buildworld.
674a26df538SWarner Losh
6754b065e2cSDoug Barton20030501:
6764b065e2cSDoug Barton	The old rc system has been removed.  Please report any problems
6774b065e2cSDoug Barton	to freebsd-rc@yahoogroups.com, and/or freebsd-current@freebsd.org.
6784b065e2cSDoug Barton	Your personal versions of these files will not be removed, so you can
6794b065e2cSDoug Barton	continue to use them. However, you should take great care when updating,
6804b065e2cSDoug Barton	especially when using mergemaster, since the compatibility code that
6814b065e2cSDoug Barton	utilizes these old scripts has also been removed.
6824b065e2cSDoug Barton
68381cda3d9SWarner Losh20030423:
68481cda3d9SWarner Losh	A bug has been fixed in /dev/devctl which would cause devd
68581cda3d9SWarner Losh	to hang on boot, were it not for a workaround in devd.  The
68681cda3d9SWarner Losh	work around in devd will be removed around 20030507.  You
68781cda3d9SWarner Losh	have until then to upgrade your kernel before updating
68881cda3d9SWarner Losh	userland.  In general, you should have a userland and
68981cda3d9SWarner Losh	kernel that's in sync with each other.  However, given the
69081cda3d9SWarner Losh	effects of this bug (hang on boot when starting devd), some
69181cda3d9SWarner Losh	allowances are made.
69281cda3d9SWarner Losh
69347a657d1SRuslan Ermilov20030329:
69447a657d1SRuslan Ermilov	Alphas with libc from between 20030312 and 20030329 exhibit
69547a657d1SRuslan Ermilov	floating point exceptions (FPEs), most notably in awk(1)
69647a657d1SRuslan Ermilov	while upgrading the system through a buildworld.
69747a657d1SRuslan Ermilov
69847a657d1SRuslan Ermilov	So, to successfully upgrade your Alpha, you must either
69947a657d1SRuslan Ermilov	downgrade your libc.so to a pre-20030312 version, or update
70047a657d1SRuslan Ermilov	/usr/share/mk/bsd.cpu.mk to revision 1.26 which adds -mieee
70147a657d1SRuslan Ermilov	to CFLAGS, then forcibly rebuild and install libc:
70247a657d1SRuslan Ermilov
70347a657d1SRuslan Ermilov	cd /usr/src/lib/libc && \
70447a657d1SRuslan Ermilov	    make cleandir && make obj && \
70547a657d1SRuslan Ermilov	    make -DNOMAN -DNOPROFILE all && \
70647a657d1SRuslan Ermilov	    make -DNOMAN -DNOPROFILE install
70747a657d1SRuslan Ermilov
7085d2af00cSGregory Neil Shapiro20030208:
7095d2af00cSGregory Neil Shapiro	sendmail 8.12.7 has been imported.  It has one important
7105d2af00cSGregory Neil Shapiro	change for IPv6 users.  The default submit.mc now uses
7115d2af00cSGregory Neil Shapiro	'[127.0.0.1]' instead of 'localhost' meaning only IPv4 is
7125d2af00cSGregory Neil Shapiro	used to connect to the MTA.  Users on IPv6-only machines
7135d2af00cSGregory Neil Shapiro	will need to edit /etc/mail/submit.mc appropriately.
7145d2af00cSGregory Neil Shapiro
7155d2af00cSGregory Neil Shapiro20030128:
7169db58771SPoul-Henning Kamp	NODEVFS option has been removed and DEVFS thereby made standard.
717ca22e652SJens Schweikhardt	This makes all references to MAKEDEV obsolete, and they should
7189db58771SPoul-Henning Kamp	be removed when convenient.
7199db58771SPoul-Henning Kamp
7208d9b3f57SJake Burkholder20030126:
7218d9b3f57SJake Burkholder	The name of the device for the ofw console has changed, sparc64 users
7228d9b3f57SJake Burkholder	must run mergemaster to update their installed /etc/ttys.
7238d9b3f57SJake Burkholder
7241c5efda5SJeff Roberson20030125:
7251c5efda5SJeff Roberson	The scheduler framework has grown a second scheduler and consequently
7261c5efda5SJeff Roberson	you must specify one and only one scheduler in your kernel config.
727ca22e652SJens Schweikhardt	The cvs config files have been updated to use the old scheduler
7281c5efda5SJeff Roberson	which may be selected via 'options SCHED_4BSD'.  If you would like
7291c5efda5SJeff Roberson	to try the new, much more experimental, scheduler please try
7301c5efda5SJeff Roberson	'options SCHED_ULE' and contribute to the arch@ discussion.
7311c5efda5SJeff Roberson
7329d1d64f5SWarner Losh20030115:
7339d1d64f5SWarner Losh	A new version of the wi driver has been imported into the tree.
7349d1d64f5SWarner Losh	One now must have device wlan in the config file for it to operate
7359d1d64f5SWarner Losh	properly.
7369d1d64f5SWarner Losh
737c9fdb80aSWarner Losh	In addition, there have been some changes to how wi devices are
738c9fdb80aSWarner Losh	configured for point to point links to bring it more in line
739c9fdb80aSWarner Losh	with the former way of doing things, as well as compatibility
740c9fdb80aSWarner Losh	with NetBSD.
741c9fdb80aSWarner Losh
742161dc364SAlexander Kabaev20021222:
743161dc364SAlexander Kabaev 	For a period after the GCC 3.2.1 import (from 12/04 to 12/22), GCC
744161dc364SAlexander Kabaev 	used an incompatible form of ABI for returning structures and unions
745161dc364SAlexander Kabaev 	which FreeBSD's GCC maintainers were not aware of relative to previous
746161dc364SAlexander Kabaev 	versions of FreeBSD.  We have gone back to the ABI for now, and any
747161dc364SAlexander Kabaev 	code compiled which is required to interoperate with other code (not
748161dc364SAlexander Kabaev 	built at the same time) returning structs or unions should be
74984cc83efSAlexander Kabaev	rebuilt.
750161dc364SAlexander Kabaev
751fb4c8061SMartin Blapp20021216:
752fb4c8061SMartin Blapp	A name change in /etc/netconfig has been reverted to stay
75389056245SJens Schweikhardt	compatible with suns TIRPC and also with NetBSD. You need
754fb4c8061SMartin Blapp	to run mergemaster after make world. A new libc does still work
7559d5abbddSJens Schweikhardt	with an outdated /etc/netconfig for some time, but you'll get
756fb4c8061SMartin Blapp	a warning. This warning will be removed in 20030301.
757fb4c8061SMartin Blapp
75817d47eb3SGiorgos Keramidas20021202:
75917d47eb3SGiorgos Keramidas	The recent binutils upgrade marks a kernel flag day on
76017d47eb3SGiorgos Keramidas	sparc64: modules built with the old binutils will not work
76117d47eb3SGiorgos Keramidas	with new kernels and vice versa. Mismatches will result in
76217d47eb3SGiorgos Keramidas	panics.  Make sure your kernel and modules are in sync.
76317d47eb3SGiorgos Keramidas
764a4459294SBill Fenner20021029:
765a4459294SBill Fenner	The value of IPPROTO_DIVERT has changed.  Make sure to keep
766a4459294SBill Fenner	your kernel, netstat, natd and any third-party DIVERT
767a4459294SBill Fenner	consumers in sync.
768a4459294SBill Fenner
769fc8c157fSWarner Losh20021024:
770c57404feSRuslan Ermilov	Old, compatibility slices have been removed in GEOM kernels.
771c57404feSRuslan Ermilov	This means that you will have to update your /etc/fstab to
772c57404feSRuslan Ermilov	not use disk devices of the form /dev/ad0a.  Instead, you
773c57404feSRuslan Ermilov	now must specify /dev/ad0s1a, or whatever slice your FreeBSD
774c57404feSRuslan Ermilov	partition really is on.  The old device names have gone
775c57404feSRuslan Ermilov	away, so if you use them anywhere else, you must also adjust
776c57404feSRuslan Ermilov	those uses.  (This doesn't affect the disks formatted in
777c57404feSRuslan Ermilov	the ``dangerously-dedicated'' mode.)
77869f7bcf3SWarner Losh
779fd9e8bdaSAndrew Gallatin20021023:
780fd9e8bdaSAndrew Gallatin	Alphas with kernels from between 20020830 and 20021023 and/or
781fd9e8bdaSAndrew Gallatin	rtld (ld-elf.so.1) older than 20021023 may experience problems
782fd9e8bdaSAndrew Gallatin	with groff while doing a buildworld (kernel: "out of memory",
783fd9e8bdaSAndrew Gallatin	fixed in rev 1.129 of kern/imgact_elf.c; rtld: "too few PT_LOAD
784fd9e8bdaSAndrew Gallatin	segments", fixed in rev 1.8 of libexec/rtld-elf/map_object.c).
785fd9e8bdaSAndrew Gallatin
786fd9e8bdaSAndrew Gallatin	So, to successfully upgrade your Alpha, you must either
787fd9e8bdaSAndrew Gallatin	upgrade your kernel and rtld first (which might be a bit
788fd9e8bdaSAndrew Gallatin	tricky), or avoid running the bootstrapped groff during the
789fd9e8bdaSAndrew Gallatin	"transitional" buildworld.  To avoid running groff during the
790fd9e8bdaSAndrew Gallatin	transitional upgrade run make buildworld with -DNOMAN,
791fd9e8bdaSAndrew Gallatin	-DNO_SHAREDOCS, and -DNO_LPR.
792fd9e8bdaSAndrew Gallatin
793f8a4c901SWarner Losh20020831:
794f8a4c901SWarner Losh	gcc has been upgraded to 3.2.  It is not all binary compatible
795f8a4c901SWarner Losh	with earlier versions of gcc for c++ programs.  All c++
796f8a4c901SWarner Losh	programs and libraries need to be recompiled.
797f8a4c901SWarner Losh
798f8a4c901SWarner Losh	Also, if you encounter g++ issues, rm /usr/include/g++/* before
799f8a4c901SWarner Losh	doing an installworld to make sure that stale files are removed.
800f8a4c901SWarner Losh
801c2248fa2SJens Schweikhardt20020827:
802c2248fa2SJens Schweikhardt	Our /etc/termcap now has all the entries from the XFree86 xterm
803c2248fa2SJens Schweikhardt	almost unchanged. This means xterm now supports color by default.
804c2248fa2SJens Schweikhardt	If you used TERM=xterm-color in the past you now should use
805c2248fa2SJens Schweikhardt	TERM=xterm. (xterm-color will lead to benign warnings).
806c2248fa2SJens Schweikhardt
8070d533e43SRuslan Ermilov20020815:
8080d533e43SRuslan Ermilov	A "bug" in gcc(1) that was hiding warning in system headers was
8090d533e43SRuslan Ermilov	fixed.  It's probably time to add -DNO_WERROR to your make line
8100d533e43SRuslan Ermilov	again.
8110d533e43SRuslan Ermilov
81233c1de7dSRuslan Ermilov20020729:
81333c1de7dSRuslan Ermilov	COPY is being deprecated.  The 20010530 change was reverted, as
81433c1de7dSRuslan Ermilov	it causes far more pain than was expected, and to always compare
81533c1de7dSRuslan Ermilov	before installing, please use INSTALL="install -C" again.  The
81633c1de7dSRuslan Ermilov	-C option is now silently ignored when used with the -d option.
81733c1de7dSRuslan Ermilov
8182b877facSJulian Elischer20020702:
8192b877facSJulian Elischer	Problems with libc_r clients like KDE and GNOME have been resolved.
8202b877facSJulian Elischer	There are still some minor problems with some signals but the
8212b877facSJulian Elischer	system is stable enough for general use again. SMP is less so than UP
8222b877facSJulian Elischer	but each can successfully complete multiple buildworlds.
8232b877facSJulian Elischer	Libkvm needs to be recompiled due to KSE.
8242b877facSJulian Elischer
82506596d37SWarner Losh20020701:
82606596d37SWarner Losh	Now would be a bad time to upgrade.  Something in or near the
82706596d37SWarner Losh	KSE commit totally broke programs using libc_r like KDE and
82806596d37SWarner Losh	GNOME.
82906596d37SWarner Losh
83095ba4330SJacques Vidrine20020511:
83195ba4330SJacques Vidrine	The k5su utility installed as part of Kerberos 5 is no longer
83295ba4330SJacques Vidrine	installed with the set-user-ID bit set by default.  Add
83395ba4330SJacques Vidrine	ENABLE_SUID_K5SU=yes to /etc/make.conf to have it installed
83495ba4330SJacques Vidrine	with the set-user-ID bit set.
83595ba4330SJacques Vidrine
836a81da3c9SDavid E. O'Brien20020510:
837f50caf6fSDavid E. O'Brien	Gcc 3.1 debugging format (cc -g) has changed from STABS to DWARF2.
838f50caf6fSDavid E. O'Brien	Unfortunately our native GDB (at version 4.18) does not understand
8394b683fb2SRobert Watson	the DWARF2 debugging format.  Thus you must use `gcc -gstabs+' to
840f50caf6fSDavid E. O'Brien	generated debugging information for our native GDB.
841f50caf6fSDavid E. O'Brien
842f50caf6fSDavid E. O'Brien20020510:
843a81da3c9SDavid E. O'Brien	Due to the way CVS works, it may not properly update src/contrib/gcc
844a81da3c9SDavid E. O'Brien	to the 3.1 sources.  The easiest fix is to `rm -rf' src/contrib/gcc
845a81da3c9SDavid E. O'Brien	and then do a cvs update.
846a81da3c9SDavid E. O'Brien
847528a0ef5SJacques Vidrine20020421:
848528a0ef5SJacques Vidrine	When exec'ing set[ug]id executables, the kernel now ensures that the
849528a0ef5SJacques Vidrine	stdio file descriptors (0..2) are open.  See FreeBSD-SA-02:23.stdio.
850528a0ef5SJacques Vidrine
85185aa5a2eSGregory Neil Shapiro20020404:
85285aa5a2eSGregory Neil Shapiro	New sendmail startup scripts have been installed to make it
85385aa5a2eSGregory Neil Shapiro	easier to use alternative MTAs with FreeBSD.  Setting the rc.conf
85485aa5a2eSGregory Neil Shapiro	variable sendmail_enable to "NO" no longer prevents any sendmail
85585aa5a2eSGregory Neil Shapiro	daemons from starting.  Instead, either set sendmail_enable to
85685aa5a2eSGregory Neil Shapiro	"NONE" or change mta_start_script to a script for starting
85785aa5a2eSGregory Neil Shapiro	an alternative MTA.  Setting mta_start_script to "" will
85885aa5a2eSGregory Neil Shapiro	also prevent any MTA from being started at boot.
85985aa5a2eSGregory Neil Shapiro
8608f1e4358SRuslan Ermilov20020403:
8618f1e4358SRuslan Ermilov	UCONSOLE is no longer a valid kernel option.
8628f1e4358SRuslan Ermilov
8632292c02eSWarner Losh20020315:
8642292c02eSWarner Losh	FreeBSD 5.0 DP-1 was basically branched today.
8652292c02eSWarner Losh
86669f7bcf3SWarner Losh20020225:
86769f7bcf3SWarner Losh	Warnings are now errors in the kernel.  Unless you are a developer,
86869f7bcf3SWarner Losh	you should add -DNO_WERROR to your make line.
86969f7bcf3SWarner Losh
8708f35c493SWarner Losh20020217:
8718f35c493SWarner Losh	sendmail 8.12.2 has been imported.  The sendmail binary is no
8728f35c493SWarner Losh	longer a set-user-ID root binary and the infrastructure to support
8738f35c493SWarner Losh	command line mail submission has changed.  Be sure to run
8748f35c493SWarner Losh	mergemaster (especially for updating /etc/rc, /etc/defaults/rc.conf,
8758f35c493SWarner Losh	and /etc/mail) and read /etc/mail/README for more details.
8768f35c493SWarner Losh
877835284beSWarner Losh	Due to the import of sendmail 8.12.2, a new user and group are
878835284beSWarner Losh	required in order for sendmail to run as a set-group-ID
879835284beSWarner Losh	binary.  A 'make installworld' will use the new user and group
880835284beSWarner Losh	to set the owner and group of /var/spool/clientmqueue and will
881835284beSWarner Losh	fail if the new user and group do not exist.  The 'smmsp' user
882835284beSWarner Losh	and group must be merged from src/etc/group and
883835284beSWarner Losh	src/etc/master.passwd before using 'make installworld'.
884835284beSWarner Losh	'mergemaster -p' will do this.  You may need to install
885835284beSWarner Losh	mergemaster before this will work if you are updating from a
886835284beSWarner Losh	very old version of current.  The updating recipe has changed
887835284beSWarner Losh	as of this date.
888835284beSWarner Losh
889fa9401c1SWarner Losh20020112:
890fa9401c1SWarner Losh	The preferred configuration method for PAM is now /etc/pam.d/
891fa9401c1SWarner Losh	rather than /etc/pam.conf.  If you have an unmodified
892fa9401c1SWarner Losh	pam.conf, just delete it after your next mergemaster run.  If
893fa9401c1SWarner Losh	you have local modifications, you can use
894fa9401c1SWarner Losh	/usr/src/etc/pam.d/convert.pl to incorporate them into your
895fa9401c1SWarner Losh	/etc/pam.d.
896fa9401c1SWarner Losh
897fa9401c1SWarner Losh	Please see the following url for more details:
898fa9401c1SWarner Loshhttp://www.freebsd.org/cgi/mid.cgi?db=mid&id=<xzp6667fyoa.fsf@flood.ping.uio.no>
89947d0d01fSWarner Losh20011229:
90047d0d01fSWarner Losh	If anyone here is already using the new rc.conf(5) variable
90147d0d01fSWarner Losh	networkfs_types, please note that it has changed
90247d0d01fSWarner Loshhttp://www.freebsd.org/cgi/mid.cgi?db=mid&id=<9744.1009655556@axl.seasidesoftware.co.za>
90347d0d01fSWarner Losh
904514318a8SWarner Losh20011220:
905514318a8SWarner Losh	sys/i4b/driver/i4b_ispppsubr.c has been retired.  This file
906514318a8SWarner Losh	started out its life in the ISDN4BSD project as an offspring
907514318a8SWarner Losh	from sys/net/if_spppsubr.c, which eventually got a life of its
908514318a8SWarner Losh	own.  All the accumulated features and bug fixes of the i4b
909514318a8SWarner Losh	version have now been merged back into the base system's
910514318a8SWarner Losh	version now.  The only user-visible change resulting from this
911514318a8SWarner Losh	is that i4b's sppp(4) interfaces are to be managed with
912514318a8SWarner Losh	spppcontrol(8) again, since ispppcontrol(8) has been retired
913514318a8SWarner Losh	as well.  (There has never been rc file support for
914514318a8SWarner Losh	ispppcontrol in -current, but only in -stable.  That will be
915514318a8SWarner Losh	reverted by the time the changes are MFCed.)
916514318a8SWarner Losh
917514318a8SWarner Losh20011215:
918514318a8SWarner Losh	The fdc(4) driver has been updated and now automatically
919514318a8SWarner Losh	recognizes media in `standard' formats (like 1440 KB and
920514318a8SWarner Losh	720 KB for a 3.5" high-density drive) when accessing the
921514318a8SWarner Losh	default device node (e. g. /dev/fd0).  The old variety of
922514318a8SWarner Losh	floppy device nodes /dev/fd*.* is no longer present by
923514318a8SWarner Losh	default, devices can be created (in DEVFS) on demand.  They
924514318a8SWarner Losh	will need to be customized then for `odd' densities using
925514318a8SWarner Losh	fdcontrol(8).
926514318a8SWarner Losh
9272d22e2bfSWarner Losh20011209:
9282d22e2bfSWarner Losh	The bugs in procfs' debugging support code have been fixed,
9292d22e2bfSWarner Losh	and truss(1) now works again.
9302d22e2bfSWarner Losh
9319e0428e2SWarner Losh20011207:
9329e0428e2SWarner Losh	Daily security checks have been split out to use the periodic(8)
9339e0428e2SWarner Losh	scripts.  Some change in configuration may be necessary.  Please
9349e0428e2SWarner Losh	see
9359e0428e2SWarner Loshhttp://www.freebsd.org/cgi/mid.cgi?db=mid&id=<20011207155805.R8975@blossom.cjclark.org>
9369e0428e2SWarner Losh	for details.
9379e0428e2SWarner Losh
9389bab8c59SWarner Losh20011204:
9399bab8c59SWarner Losh	sos added VCD/SVCD support to ata driver and that needs the
9409bab8c59SWarner Losh	kernel and burncd to be in sync.
9419bab8c59SWarner Losh
942e57d8b01SWarner Losh20011203:
943e57d8b01SWarner Losh	The procfs pseudo-filesystem has now been converted to use the
944e57d8b01SWarner Losh	pseudofs framework.  If you have 'options PROCFS' in your
945e57d8b01SWarner Losh	kernel config, you'll need to add 'options PSEUDOFS' if it's
946e57d8b01SWarner Losh	not there already.
947e57d8b01SWarner Losh
948e57d8b01SWarner Losh	This change temporarily breaks truss(1); use ktrace(1) instead
949e57d8b01SWarner Losh	until the issue has been resolved.
950e57d8b01SWarner Losh
951b001d36fSJacques Vidrine20011202:
952b001d36fSJacques Vidrine	A security hole in OpenSSH involving `UseLogin yes' has been
953b001d36fSJacques Vidrine	patched.
954b001d36fSJacques Vidrine
9554b676ec1SWarner Losh20011126:
9564b676ec1SWarner Losh	You need to remove /usr/obj/.../usr.bin/tip before rebuilding
9575ebbf43eSWarner Losh	after this date.  You need to do this only once.
9584b676ec1SWarner Losh
959d961e462SWarner Losh20011103:
960d961e462SWarner Losh	Most of the awk issues have been resolved.  Some rough
961d961e462SWarner Losh	edges may be left, but for the most part things should be
9624b676ec1SWarner Losh	back to "normal." For CURRENT's usual definition of "normal."
963d961e462SWarner Losh
964d961e462SWarner Losh20011030:
965d961e462SWarner Losh	Awk has been upgraded to the one true awk from bell labs.  Expect
966d961e462SWarner Losh	choppy waves in the upgrade process.
967d961e462SWarner Losh
9681fe003b6SWarner Losh20011030:
969a4b6fda0SWarner Losh	The asr driver problem has been resolved.
9701fe003b6SWarner Losh
9711fe003b6SWarner Losh20011027:
9721fe003b6SWarner Losh	Due to changes in other parts of the system, the asr driver
9731fe003b6SWarner Losh	now causes the system to panic on boot.  Do not use it pending
9741fe003b6SWarner Losh	correction.  Comment it out of any kernel config file that you
9751fe003b6SWarner Losh	try to use from this date forward.
9761fe003b6SWarner Losh
9771fe003b6SWarner Losh20011025:
9781fe003b6SWarner Losh	When crossbuilding, use TARGET=xxx where you used to use
9791fe003b6SWarner Losh	MACHINE=xxx.  You don't need to set TARGET_ARCH and TARGET,
9801fe003b6SWarner Losh	unless you are changing both of them.  To cross build pc98 on
9811fe003b6SWarner Losh	an alpha, for example, you need to set TARGET=pc98 and
9821fe003b6SWarner Losh	TARGET_ARCH=i386.
9831fe003b6SWarner Losh
984d05f9643SWarner Losh20011001:
985d05f9643SWarner Losh	The kernel interface that burncd depends on has changed.
986d05f9643SWarner Losh	You must recompile both the kernel and userland applications
987d05f9643SWarner Losh	at the same time.
988d05f9643SWarner Losh
98958970f85SWarner Losh20010929:
99058970f85SWarner Losh	When crossbuilding, please set TARGET_ARCH rather than
99158970f85SWarner Losh	MACHINE_ARCH to indicate the target.  In the future, one will
99258970f85SWarner Losh	set TARGET_MACHINE where you set MACHINE now.  At the moment,
99358970f85SWarner Losh	setting MACHINE alone for same MACHINE_ARCH machines works
9949d5abbddSJens Schweikhardt	(eg, you can build pc98 on an i386 machine and vice versa).
99558970f85SWarner Losh
99658970f85SWarner Losh20010927:
99758970f85SWarner Losh	Some weird problems result from using ACPI on some machines.
99858970f85SWarner Losh	To disable ACPI you can add
99966ff0e67SMax Khon		hint.acpi.0.disabled="1"
100058970f85SWarner Losh	to /boot/loader.conf (or by putting set X=Y at the boot
100158970f85SWarner Losh	loader "ok" prompt).
100258970f85SWarner Losh
100358970f85SWarner Losh	Alternatively, you can remove it from /boot/kernel/acpi.ko
100458970f85SWarner Losh	or use the MODULES_OVERRIDE function in your kernel config
100558970f85SWarner Losh	file and not list acpi in that list.
1006378f4486SAlfred Perlstein
10075119d237SWarner Losh20010924:
10085119d237SWarner Losh	The buildworld has been fixed.  You may need to install
10095119d237SWarner Losh	the 4.x compatibility libraries for some old binaries
10108b039fffSWarner Losh	to work.  Add COMPAT4X=true to your /etc/make.conf to
10118b039fffSWarner Losh	get them installed on every installworld, or execute the
10128b039fffSWarner Losh	following to get them installed only once:
10138b039fffSWarner Losh		cd src/lib/compat/compat4x.<arch>
101458970f85SWarner Losh		make all install
10158b039fffSWarner Losh	You will see ``__stdoutp undefined'' until you do this.
10165119d237SWarner Losh
10173c293725SWarner Losh20010919:
10183c293725SWarner Losh	There's a bug in the world build process.  The cross-tools
10193c293725SWarner Losh	are build with the NEW headers, but the OLD libc.a.  This
10203c293725SWarner Losh	leads to all kinds of problems with the new libc.  A temporary
1021772730c7SWarner Losh	workaround is to add
10223c293725SWarner Losh		CFLAGS="-O -pipe -D_OLD_STDIO"
10233c293725SWarner Losh	before building world when upgrading from 4.x to current.  This
10243c293725SWarner Losh	can be removed afterwards.
10253c293725SWarner Losh
10263c293725SWarner Losh	A proper fix to the buildworld target is needed.
10273c293725SWarner Losh
10283c293725SWarner Losh20010918:
10293c293725SWarner Losh	Peter has committed his new kthread nfs client/server code.
10303c293725SWarner Losh	NFS may be unstable after this date.
10313c293725SWarner Losh
10323c293725SWarner Losh20010912:
10333c293725SWarner Losh	KSE has hit the tree.  Lots of things are now different in
10343c293725SWarner Losh	the kernel.  While a few problems were introduced in the
10353c293725SWarner Losh	initial commit, most of the major ones have been found and
10363c293725SWarner Losh	corrected.
10373c293725SWarner Losh
10383c293725SWarner Losh20010901:
10393c293725SWarner Losh	In OLDCARD, CardBus bridges appear to be stable.  The work
10403c293725SWarner Losh	arounds described in the 20010604 entry are now no longer
10413c293725SWarner Losh	necessary and will be ignored.  Most insert/remove problems
10423c293725SWarner Losh	have been rectified around this date.
10433c293725SWarner Losh
104498b17b95SWarner Losh20010823:
104598b17b95SWarner Losh 	named now runs as user bind and group bind rather than as
104698b17b95SWarner Losh 	root.  If named_enable is set to YES in /etc/rc.conf, ensure
104798b17b95SWarner Losh 	that user bind is available in /etc/passwd (using vipw(8))
104898b17b95SWarner Losh 	and that group bind is available in /etc/group.  Also make
104998b17b95SWarner Losh 	sure that user or group bind has read (and not write)
105098b17b95SWarner Losh 	permission for your name server configuration and that it
105198b17b95SWarner Losh 	has read and write permission for your slave zone files and
105298b17b95SWarner Losh 	directory.
105398b17b95SWarner Losh
105498b17b95SWarner Losh 	If you wish to continue to run named as root (a less secure
105598b17b95SWarner Losh 	alternative), add a line to /etc/rc.conf saying
105698b17b95SWarner Losh
105798b17b95SWarner Losh 		named_flags=
105898b17b95SWarner Losh
10597b9786edSMark Murray20010709:
10607b9786edSMark Murray	The PAM libraries have had an API upgrade that is beyond
10617b9786edSMark Murray	the ability of the shared library major number to handle.
10627b9786edSMark Murray	It is manifested by PAM-using ports dumping core. The
10637b9786edSMark Murray	solution is to rebuild those ports.
10647b9786edSMark Murray
10651d28950eSWarner Losh20010628:
10661d28950eSWarner Losh	The kernel compile module has moved from src/sys/compile/FOO
10671d28950eSWarner Losh	to src/sys/${MACHINE}/compile/FOO.
10681d28950eSWarner Losh
1069e72fd46aSWarner Losh20010625:
107098b17b95SWarner Losh	The pccard modem issue from 20010613 has been corrected.
107198b17b95SWarner Losh	OLDCARD support is still a little weak in -current.  slot 1 is
107298b17b95SWarner Losh	known not to work on some TI based cardbus bridges.  Some
107398b17b95SWarner Losh	cardbus bridges do not properly detect insert/removal events.
107498b17b95SWarner Losh	IRQ configuration needs more safety belts.
107516de1a07SWarner Losh
10760d415dffSWarner Losh20010617:
1077e72fd46aSWarner Losh	Softupdates problems have been corrected.
10780d415dffSWarner Losh
10790d415dffSWarner Losh20010614:
10800d415dffSWarner Losh	Peter ripped out the linkerset support.  You must, as always,
10810d415dffSWarner Losh	rerun config after you cvsup if you are using the traditional
10820d415dffSWarner Losh	kernel building methods.
10830d415dffSWarner Losh
10848b9959adSWarner Losh20010613:
10858b9959adSWarner Losh	pccard modems may not work with current after 20010604 date.  Some
10868b9959adSWarner Losh	do, others result in panics.  *MAKE*SURE* that you update your
1087e72fd46aSWarner Losh	config and /etc/rc.conf ala the 20010604 entry, or you will have
1088e72fd46aSWarner Losh	problems (this issue will be fixed, it just hasn't been yet).
10898b9959adSWarner Losh
1090e72fd46aSWarner Losh20010613:
10918b9959adSWarner Losh	SOFTUPDATES seem to be broken since the middle of May or so.  Do not
1092e72fd46aSWarner Losh	use them in current.  You can disable softupdates on all mounted
1093e72fd46aSWarner Losh	partitions, or remove SOFTUPDATES the kernel config file.
10948b9959adSWarner Losh
10950d415dffSWarner Losh20010612:
10960d415dffSWarner Losh	After Peter's commits to the hints code, people have been noticing
10970d415dffSWarner Losh	that certain devices are attached (or try to) twice.  This is due
10980d415dffSWarner Losh	to having both static hints as well as a /boot/device.hints.  To
10990d415dffSWarner Losh	work around this issue, please use only one or the other mechanism
11000d415dffSWarner Losh	until this bug is fixed.
11010d415dffSWarner Losh
1102e72fd46aSWarner Losh	Please note that a feature of config is that if you have config
1103e72fd46aSWarner Losh	file FOO and FOO.hints, it automatically adds FOO.hints to the
1104ca22e652SJens Schweikhardt	hints.c file, whether you want it to or not.
1105e72fd46aSWarner Losh
11060d415dffSWarner Losh20010610:
11070d415dffSWarner Losh	Locale names have changed to match other systems better.
11080d415dffSWarner Losh
11096ccdb5e4SWarner Losh20010604:
11106ccdb5e4SWarner Losh	pccard support for pci cards has been committed.  You must change
11116ccdb5e4SWarner Losh	your /etc/pccard.conf irq lines.  It must match the irq used by
11126ccdb5e4SWarner Losh	pcic device.  Interrupt storms may result if you fail to do this.
11133590182eSWarner Losh	Interrupt storms look a lot like a hang.
11143590182eSWarner Losh
11153590182eSWarner Losh	You must also install a new pccardd, otherwise you will get an
11163590182eSWarner Losh	interrupt storm at card reset time (just after it tells you what
11173590182eSWarner Losh	it is).
11183590182eSWarner Losh
11193590182eSWarner Losh	pccardd_flags="-I" is necessary for the time being.  It tells pccardd
11203590182eSWarner Losh	not to ask the kernel if the interrupt is really free or not before
11213590182eSWarner Losh	using it.  You can either change the /etc/pccard.conf irq lines to
11223590182eSWarner Losh	match pcic, or add "-i X" to the pccardd_flags.
11236ccdb5e4SWarner Losh
11240bc62786SWarner Losh20010530:
11250bc62786SWarner Losh	INSTALL=install -C is being deprecated.  If you want to do this,
11260bc62786SWarner Losh	use COPY=-C instead.  The former method will be supported for only
11270bc62786SWarner Losh	a limited time.  If you see
11280bc62786SWarner Losh
11290bc62786SWarner Loshinstall: warning: the -d and -C options may not be specified together
11300bc62786SWarner Losh
11310bc62786SWarner Losh	in your makeworld, then you need to migrate towards using
11320bc62786SWarner Losh	COPY=-C.
11330bc62786SWarner Losh
113468a38c6cSWarner Losh20010525:
1135b6609bbbSWarner Losh	It appears that vm is now stable enough to use again.  However,
1136c4f4a728SWarner Losh	there may be other problems, so caution is still urged.  alpha
1137c4f4a728SWarner Losh	definitely is in bad shape.
113868a38c6cSWarner Losh
1139ed0f29caSWarner Losh20010521:
1140ca22e652SJens Schweikhardt	Minor repo damage has happened.  This may cause problems
1141ed0f29caSWarner Losh	with cvsup of ports.  If you get errors, please see
1142ed0f29caSWarner Losh	http://www.FreeBSD.org/cgi/query-pr.cgi?pr=27495
1143ed0f29caSWarner Losh	at the bottom for details on a workaround.  The error message
1144ed0f29caSWarner Losh	is
1145ed0f29caSWarner LoshUpdater failed: Cannot delete "/usr/ports/www/jakarta-tomcat/files": Directory not empty
1146ed0f29caSWarner Losh
114780c16af9SWarner Losh20010520:
114868a38c6cSWarner Losh	Vm and/or swapping are busted on -current.  Please be patient.
114980c16af9SWarner Losh
115080c16af9SWarner Losh20010519:
115180c16af9SWarner Losh	pccard has had much reorganizational work done to it over
115280c16af9SWarner Losh	the past few days.  Everything should still work, but if
115380c16af9SWarner Losh	not, please contact imp@freebsd.org.
115480c16af9SWarner Losh
1155a45f2d05SWarner Losh20010517:
1156a45f2d05SWarner Losh	ata ioctl changed.  Make sure to recompile both kernel and
1157a45f2d05SWarner Losh	userland at the same time.
1158a45f2d05SWarner Losh
1159a45f2d05SWarner Losh20010517:
1160a45f2d05SWarner Losh	New ncurses imported.
1161a45f2d05SWarner Losh
11622988afcaSWarner Losh20010512:
11632988afcaSWarner Losh	DEVFS is now opt out, not opt in.  Barring major problems, this
11642988afcaSWarner Losh	will be the only way to go starting July 1.
11652988afcaSWarner Losh
11661a33dba7SWarner Losh20010504:
11671a33dba7SWarner Losh	OpenSSH has been updated to 2.9.  Some defaults are different,
11681a33dba7SWarner Losh	including RhostsRSAAuthentication, which changes from yes to no.
11691a33dba7SWarner Losh
117009946a51SWarner Losh20010502:
117109946a51SWarner Losh	Perl breakage in 20010501 was corrected at 14:18:33 PDT.
117209946a51SWarner Losh
117309946a51SWarner Losh20010501:
117409946a51SWarner Losh	Building perl was broken at 02:25:25 PDT.
117509946a51SWarner Losh
117609946a51SWarner Losh20010430:
1177a70a79adSWarner Losh	The bug in 20010429 was corrected at 07:35:37 PDT.  It is safe to
117809946a51SWarner Losh	go back in the water.
117909946a51SWarner Losh
118009946a51SWarner Losh20010429:
118109946a51SWarner Losh	A bad bug was committed at 04:48:42 PDT.  Don't use kernels after
118209946a51SWarner Losh	this date, but before the correction date.
118309946a51SWarner Losh
118491dd3b53SWarner Losh20010423:
118591dd3b53SWarner Losh	old fsck and new kernel interactions appear to have been fixed.
118691dd3b53SWarner Losh
118791dd3b53SWarner Losh20010411:
118891dd3b53SWarner Losh	fsck and the kernel were changed to handle some optimizations
118991dd3b53SWarner Losh	to directory layout.  This breaks backward compatibility.
119091dd3b53SWarner Losh	Update only if you understand that you must not use the old
119191dd3b53SWarner Losh	fsck with the new kernel ever.
119291dd3b53SWarner Losh
1193933b3269SWarner Losh20010330:
1194933b3269SWarner Losh	fsck has changed the meaning of the pass column in /etc/fstab.
1195c4e215d3SWarner Losh	Please see the cvs commit to fsck.8 or the fsck.8 man page for
1196933b3269SWarner Losh	details.  It is unclear if changes to /etc/fstab are necessary.
1197933b3269SWarner Losh
1198933b3269SWarner Losh20010319:
1199933b3269SWarner Losh	portmap had changed name to rpcbind for maximum POLA in your
1200933b3269SWarner Losh	current world.  /etc/hosts.{allow,deny} needs changes.  nfs and
1201933b3269SWarner Losh	other rpc based programs that rely on portmapper will not work
1202f34a9421SWarner Losh	without updates to /etc/hosts.{allow,deny} and /etc/netconfig.
120309946a51SWarner Losh
120409946a51SWarner Losh20010315:
120509946a51SWarner Losh	ata subsystem changes.  ATA_ENABLE_ATAPI_DMA, ATA_ENABLE_WC
1206ca22e652SJens Schweikhardt	and ATA_ENABLE_TAGS are no longer kernel options.  They have
120709946a51SWarner Losh	been replaced by tunables.  See ata.4 for details.
1208933b3269SWarner Losh
1209933b3269SWarner Losh20010312:
1210933b3269SWarner Losh	The fxp driver was converted to use miibus.  If you compile
1211933b3269SWarner Losh	fxp into your kernel statically, you will need to add miibus.
1212933b3269SWarner Losh
1213933b3269SWarner Losh20010312:
1214933b3269SWarner Losh	The wi device now defaults to BSS (infrastructure) mode
1215933b3269SWarner Losh	instead of ad-hoc.
1216933b3269SWarner Losh
1217933b3269SWarner Losh20010310:
1218f5260d32SWarner Losh	/dev/urandom should be a symbolic link to /dev/random now.
1219933b3269SWarner Losh	Users of current not using DEVFS need to run MAKEDEV std.
1220933b3269SWarner Losh	ssh might not work if you don't.
1221933b3269SWarner Losh
122262353691SWarner Losh20010303:
122362353691SWarner Losh	The ed driver has been updated.  It now allows mii attachments,
122462353691SWarner Losh	which means that you must include the miibus in your kernel if
122562353691SWarner Losh	you use the ed driver.
122662353691SWarner Losh
1227d325cf65SWarner Losh20010220:
1228d325cf65SWarner Losh	The problems with libc have been corrected.  It is now mostly
1229d325cf65SWarner Losh	safe to go back into the water.
1230d325cf65SWarner Losh
1231024daae6SWarner Losh20010211:
1232024daae6SWarner Losh	The size of FILE was changed.  This breaks upgrading.  If
1233024daae6SWarner Losh	you must upgrade, be prepared for pain.  It also breaks almost
1234024daae6SWarner Losh	all binaries that you've compiled on -current.  You are warned
1235024daae6SWarner Losh	that before upgrading would be a good time to do a level 0
1236024daae6SWarner Losh	dump of your system.  No, really, I mean it this time.
1237024daae6SWarner Losh
1238024daae6SWarner Losh	To get to the new system, you'll need to use the following
1239024daae6SWarner Losh	workaround.  Hopefully this can be sorted out so that we
1240024daae6SWarner Losh	don't have to move this to the updating section.
1241024daae6SWarner Losh
1242024daae6SWarner Losh	To get around the installworld problem, do:
1243024daae6SWarner Losh		# cd /usr/src/usr.bin/sed
1244024daae6SWarner Losh		# make install
1245024daae6SWarner Losh		# cd /usr/src
1246024daae6SWarner Losh		# make installworld
1247024daae6SWarner Losh	If that doesn't work, then try:
1248024daae6SWarner Losh		# make -k installworld
1249024daae6SWarner Losh		# make installworld
1250024daae6SWarner Losh
1251024daae6SWarner Losh20010207:
1252024daae6SWarner Losh	DEVFS is now the default.  If you use vinum, make sure that you
1253024daae6SWarner Losh	do not include devfs in your kernel as problems result.
1254024daae6SWarner Losh
1255024daae6SWarner Losh20010205:
12567595222aSWarner Losh	FFS_ROOT and CD9660_ROOT have been removed or deprecated.
1257024daae6SWarner Losh	Remove them from your config.
1258024daae6SWarner Losh
12591e159248SWarner Losh20010122:
12601e159248SWarner Losh	****************************** WARNING ******************************
12611e159248SWarner Losh			buildkernel has been changed slightly
12621e159248SWarner Losh	****************************** WARNING ******************************
12631e159248SWarner Losh	KERNCONF replaces the variable KERNEL for buildkernel.  You
12641e159248SWarner Losh	should update your scripts and make.conf accordingly.
12651e159248SWarner Losh
12661e159248SWarner Losh20010119:
12671e159248SWarner Losh	config has changed to allow DEV_FOO as a replacement for NFOO.
12681e159248SWarner Losh	This requires a new config to build correctly.
12691e159248SWarner Losh
1270aac7dfeaSWarner Losh20010116:
1271ca22e652SJens Schweikhardt	The kernel option I386_CPU is now mutually exclusive with the
1272aac7dfeaSWarner Losh	other cpu types. If you have an i386 system, be sure that it
1273aac7dfeaSWarner Losh	only had this line.  Remove it for all other configurations.
1274aac7dfeaSWarner Losh
1275aac7dfeaSWarner Losh20010110:
1276aac7dfeaSWarner Losh	Changes to the kernel require it and burncd be in sync.
1277aac7dfeaSWarner Losh
1278aac7dfeaSWarner Losh20010102:
1279aac7dfeaSWarner Losh	Everyone who has hw.sndunit set to something in
1280aac7dfeaSWarner Losh	/etc/sysctl.conf, it is now hw.snd.unit.
1281aac7dfeaSWarner Losh
128263c90c9eSWarner Losh20010101:
128363c90c9eSWarner Losh	ex and vi were broken by some changes to sys/queue.h.  If you
128463c90c9eSWarner Losh	have a bad vi, you will see make buildworld fail with a core
12855fd2a895SWarner Losh	dump while building termcap.  You can work around this problem
128663c90c9eSWarner Losh	by adding -k to your make buildworld.  This will cause the
128763c90c9eSWarner Losh	build to complete and install a new vi.  Once that's done, you
128863c90c9eSWarner Losh	can rebuild again without the -k to pick up anything that
128963c90c9eSWarner Losh	might have been ignored by the -k option.
129063c90c9eSWarner Losh
12915fd2a895SWarner Losh	Others have suggested that you can just rebuild libc if your
12925fd2a895SWarner Losh	vi/ex is dynamically linked, but I've not received any reports
12935fd2a895SWarner Losh	of this working.
12945fd2a895SWarner Losh
1295aac7dfeaSWarner Losh20001228:
1296aac7dfeaSWarner Losh	There have been some changes to libcrypt in -current.  The
1297ca22e652SJens Schweikhardt	libscrypt/libdescrypt symlink silliness is gone and the installed
1298aac7dfeaSWarner Losh	libcrypt is fully functional.  Be aware of this.
1299aac7dfeaSWarner Losh
1300de2bcc63SWarner Losh20001218:
1301de2bcc63SWarner Losh	Linksys Fast Ethernet PCCARD cards supported by the ed driver
1302de2bcc63SWarner Losh	now require the addition of flag 0x80000 to their config line
1303de2bcc63SWarner Losh	in pccard.conf(5).  This flag is not optional.  These Linksys
1304de2bcc63SWarner Losh	cards will not be recognized without it.
1305de2bcc63SWarner Losh
1306960773f7SWarner Losh20001205:
1307960773f7SWarner Losh	Important new FreeBSD-version stuff: PAM support has been worked
1308960773f7SWarner Losh	in, partially from the "Unix" OpenSSH version.  This requires
1309960773f7SWarner Losh	adding the following in pam.conf:
1310960773f7SWarner Losh
1311960773f7SWarner Losh	sshd    auth    sufficient      pam_skey.so
1312960773f7SWarner Losh	sshd    auth    required        pam_unix.so         try_first_pass
1313960773f7SWarner Losh	sshd    session required        pam_permit.so
1314960773f7SWarner Losh
13150acc635eSWarner Losh20001031:
13160acc635eSWarner Losh	cvs updated to 1.11.
13170acc635eSWarner Losh
13180acc635eSWarner Losh20001020:
13190acc635eSWarner Losh	The random device needs more entropy, so you need to make sure
13200acc635eSWarner Losh	that you've run mergemaster to get a /etc/rc which will seed
13210acc635eSWarner Losh	/dev/random.  If you don't and the system hangs after ldconfig,
13220acc635eSWarner Losh	then banging on the keyboard randomly until it unhangs is one
13230acc635eSWarner Losh	workaround.
13240acc635eSWarner Losh
13250acc635eSWarner Losh20001010:
13260acc635eSWarner Losh	****************************** WARNING ******************************
13270acc635eSWarner Losh				Sendmail has been updated.
13280acc635eSWarner Losh	****************************** WARNING ******************************
13290acc635eSWarner Losh	o mail.local(8) is no longer installed as a set-user-id binary.
13300acc635eSWarner Losh	o sendmail(8) is now built with STARTTLS support unless NO_OPENSSL
13310acc635eSWarner Losh	  is set.
13320acc635eSWarner Losh	o The default /etc/mail/sendmail.cf disables the SMTP EXPN and VRFY
13330acc635eSWarner Losh	  commands.
13340acc635eSWarner Losh	o Now using sendmail's version of vacation(1).
13350acc635eSWarner Losh	o The sendmail cf building tools (contrib/sendmail/cf) are installed
13360acc635eSWarner Losh	  in /usr/share/sendmail/cf.
13370acc635eSWarner Losh	o sendmail.cw changed to local-host-names
13380acc635eSWarner Losh
13390acc635eSWarner Losh	More details can be found at
13400acc635eSWarner Losh		http://people.freebsd.org/~imp/UPDATING/sendmail-20001010
13410acc635eSWarner Losh
13426e98a146SWarner Losh20001009:
13436e98a146SWarner Losh	The ports tree's new layout is in place.  Be sure to update
13446e98a146SWarner Losh	your entire ports tree, or you will have problems.
13456e98a146SWarner Losh
13466e98a146SWarner Losh20001006:
1347685294e7SMark Ovens	The perl build procedure no longer installs miniperl, nor uses
13486e98a146SWarner Losh	the installed miniperl.  It is recommended that you delete
13496e98a146SWarner Losh	/usr/bin/miniperl.
13506e98a146SWarner Losh
1351073113a4SWarner Losh20001005:
1352073113a4SWarner Losh	This weekend the ports tree will be updated to a new layout.
1353685294e7SMark Ovens	It will be in an inconsistent state until noted in the UPDATING
1354073113a4SWarner Losh	file, or with asami-san's message to the relevant mailing
1355073113a4SWarner Losh	lists.  With this new layout, you'll need to update the whole
1356073113a4SWarner Losh	tree for anything to work.
1357073113a4SWarner Losh
13580acc635eSWarner Losh20000928:
13590acc635eSWarner Losh	There was a change in the passwd format.  Need more information.
13600acc635eSWarner Losh
1361be3885b3SWarner Losh20000916:
1362be3885b3SWarner Losh	/boot/kernel/kernel.ko -> /boot/kernel/kernel change has taken
1363be3885b3SWarner Losh	place.  Please update boot loader (not the boot blocks) at the
1364be3885b3SWarner Losh	same time as your kernel.
1365be3885b3SWarner Losh
136676ec9675SWarner Losh20000914:
136776ec9675SWarner Losh	The new pmtimer device is necessary for laptops.  Failure to
136876ec9675SWarner Losh	include the device will cause suspended laptops losing time
136976ec9675SWarner Losh	when they resume.  Include
137076ec9675SWarner Losh		device		pmtimer
137176ec9675SWarner Losh	in your config file and
137201b9a434SWarner Losh		hint.pmtimer.0.at="isa"
137376ec9675SWarner Losh	to your /boot/device.hints file.
137476ec9675SWarner Losh
1375f4865386SMark Murray20000911:
1376f4865386SMark Murray	The random device has been turned into a (pseudo-)device,
1377f4865386SMark Murray	rather than an option. The supplied kernel config files have
1378f4865386SMark Murray	been updated. You will need to do something similar in your
1379f4865386SMark Murray	own kernel config file.
1380f4865386SMark Murray	Remove:
1381f4865386SMark Murray		options		RANDOMDEV
1382f4865386SMark Murray	Add:
1383f4865386SMark Murray		device		random
1384f4865386SMark Murray	If you prefer to load the loadable module, you need to do
1385f4865386SMark Murray	nothing.
1386f4865386SMark Murray
1387d594498fSWarner Losh20000909:
1388d594498fSWarner Losh	The random device module has been renamed from randomdev.ko to
1389d594498fSWarner Losh	random.ko. You will need to edit your /boot/loader.conf to
1390d594498fSWarner Losh	reflect this if you load this module at boot time.
1391d594498fSWarner Losh	The line should read:
1392d594498fSWarner Losh		random_load="YES"
1393d594498fSWarner Losh
13940deb7ddcSWarner Losh20000907:
13950deb7ddcSWarner Losh	The SMPNG commit has happened.  It should work, but if it
139616eb772dSWarner Losh	doesn't, fallback to the PRE_SMPNG CVS tag.  There are likely
139716eb772dSWarner Losh	to be a variety of minor issues.  Please see 20000905 to make
139816eb772dSWarner Losh	sure you don't have model loading problems which might at
139916eb772dSWarner Losh	first blush appear related to SMP.
140052bf24e7SWarner Losh
14015a01880bSWarner Losh20000906:
14025a01880bSWarner Losh	nsswitch has been imported from NetBSD.  Among other things,
14035a01880bSWarner Losh	this means that /etc/host.conf is no longer used.  See
14045a01880bSWarner Losh	nsswitch.conf(5) instead.  Note that at boot time rc.network
14055a01880bSWarner Losh	will attempt to produce a new nsswitch.conf file for you if you
14065a01880bSWarner Losh	don't have one, and you have host.conf.
14075a01880bSWarner Losh
14082b41163cSWarner Losh20000905:
140938d6ecd2SWarner Losh	The ucred structure changed size.  This breaks the interface
141038d6ecd2SWarner Losh	that mountd uses.  Trying to use an older mountd with a newer
141138d6ecd2SWarner Losh	kernel guarantees a panic.  This means that you need to use
141238d6ecd2SWarner Losh	kernels newer than today only with matching mountd, but you
141338d6ecd2SWarner Losh	needed to do that anyway with the boot loader changes.
141438d6ecd2SWarner Losh
141538d6ecd2SWarner Losh20000905:
14168aab4bc7SWarner Losh	The boot loader has been updated.  The new default kernel is
14178aab4bc7SWarner Losh	now /boot/kernel/kernel.ko.  The new default module location
14188aab4bc7SWarner Losh	is /boot/kernel.
14198aab4bc7SWarner Losh
14208aab4bc7SWarner Losh	You *MUST* upgrade your boot loader and kernel at the same time.
142138d6ecd2SWarner Losh	The easiest way to do this is to do the buildworld/buildkernel/
142238d6ecd2SWarner Losh	installkernel/installworld dance.
14232b41163cSWarner Losh
1424d594498fSWarner Losh	Furthermore, you are urged to delete your old /modules directory
1425d594498fSWarner Losh	before booting the new kernel, since kldload will find stale
1426d594498fSWarner Losh	modules in that directory instead of finding them in the correct
1427d594498fSWarner Losh	path, /boot/kernel.  The most common complaint that this cures
1428d594498fSWarner Losh	is that the linux module crashes your machine after the update.
1429d594498fSWarner Losh
1430d594498fSWarner Losh	if [ ! -d /boot/kernel.old ]; then
1431d594498fSWarner Losh		mv /modules.old /boot/kernel.old
1432d594498fSWarner Losh		chflags noschg /kernel.old
1433d594498fSWarner Losh		mv /kernel.old /boot/kernel.old/kernel.ko
1434d594498fSWarner Losh		chflags schg /boot/kernel.old/kernel.ko
1435d594498fSWarner Losh	fi
1436d594498fSWarner Losh
1437c22a309cSWarner Losh20000904:
1438c22a309cSWarner Losh	A new issue with the sendmail upgrade has come to light.
1439c22a309cSWarner Losh	/etc/aliases has moved to /etc/mail/aliases.  Mergemaster will
1440c22a309cSWarner Losh	incorrectly install the default aliases in /etc/mail rather than
1441c22a309cSWarner Losh	move the old one from /etc.  So you'll need to manually move the
1442c22a309cSWarner Losh	file, create a symbolic link, remove the old /etc/aliases.db and
1443c22a309cSWarner Losh	run newaliases.  For safety sake, you should stop sendmail
1444c22a309cSWarner Losh	while doing this and run the upgrade when locally sourced email
1445c22a309cSWarner Losh	is not likely to be generated.
1446c22a309cSWarner Losh
1447fdb9f54dSWarner Losh20000825:
1448fdb9f54dSWarner Losh	/boot/device.hints is now required for installkernel to
14499c1a7444SWarner Losh	succeed.  You should copy GENERIC.hints for your architecture
14509c1a7444SWarner Losh	into /boot/device.hints.  If and only if you compile hints
14519c1a7444SWarner Losh	into your kernel, then this file may be empty.  Please note,
14529c1a7444SWarner Losh	if you have an empty or missing /boot/device.hints file and
14539c1a7444SWarner Losh	you neglected to compile hints into your kernel, no boot
14549c1a7444SWarner Losh	messages will appear after the boot loader tries to start the
14559c1a7444SWarner Losh	kernel.
14569c1a7444SWarner Losh
14579c1a7444SWarner Losh20000821:
14589c1a7444SWarner Losh	If you do NOT have ``options RANDOMDEV'' in your kernel and
14599c1a7444SWarner Losh	you DO want the random device then add randomdev_load="YES" to
14609c1a7444SWarner Losh	/boot/loader.conf.
1461fdb9f54dSWarner Losh
14628f250aa7SWarner Losh20000812:
14635da0d091SWarner Losh	suidperl is now always built and installed on the system, but
14645da0d091SWarner Losh	with permissions of 511.  If you have applications that use
14655da0d091SWarner Losh	this program, you are now required to add ENABLE_SUIDPERL=true
14665da0d091SWarner Losh	to /etc/make.conf.  If you forget to do this,
14675da0d091SWarner Losh		chmod 4511 /usr/bin/suidperl
14685da0d091SWarner Losh	will fix this until the next build.
14695da0d091SWarner Losh
14705da0d091SWarner Losh20000812:
14718f250aa7SWarner Losh	sendmail has been updated from 8.9.3 to 8.11.0.  Some of the more
14728f250aa7SWarner Losh	visible changes that may immediately affect your configuration
14738f250aa7SWarner Losh	include:
14748f250aa7SWarner Losh	- New default file locations from src/contrib/sendmail/cf/README
14758f250aa7SWarner Losh	- newaliases limited to root and trusted users
14768f250aa7SWarner Losh	- MSA port (587) turned on by default
14778f250aa7SWarner Losh	- New queue file naming system so can't go from 8.11 -> 8.9
14788f250aa7SWarner Losh	- FEATURE(`rbl') renamed to FEATURE(`dnsbl')
14798f250aa7SWarner Losh	- FEATURE(`nullclient') is more full featured
14808f250aa7SWarner Losh	- FEATURE(`nouucp') requires an argument: `reject' or `nospecial'
14818f250aa7SWarner Losh	- mail.local FreeBSD-only -b option changed to -B
14828f250aa7SWarner Losh	- See src/contrib/sendmail/RELEASE_NOTES for more info
14838f250aa7SWarner Losh
148471c38472SWarner Losh20000810:
148571c38472SWarner Losh	suidperl (aka sperl) is no longer build by default.  You must
148671c38472SWarner Losh	specifically define BUILD_SUIDPERL to "true" for it to be build.
148771c38472SWarner Losh	Furthermore, we recommend that you remove /usr/bin/sperl* and
148871c38472SWarner Losh	/usr/bin/suidperl files from your system unless you have a
148971c38472SWarner Losh	specific use for it.
149071c38472SWarner Losh
149171c38472SWarner Losh20000729:
149271c38472SWarner Losh	Networking defaults have been tightened.  Anybody upgrading
149371c38472SWarner Losh	/etc/defaults/rc.conf needs to add the following lines to
149471c38472SWarner Losh	/etc/rc.conf if they want to have the same setup
149571c38472SWarner Losh	afterwards (unless the variables already are set, of course):
149671c38472SWarner Losh		# Enable network daemons for user convenience.
149771c38472SWarner Losh		inetd_enable="YES"
149871c38472SWarner Losh		portmap_enable="YES"
149971c38472SWarner Losh		sendmail_enable="YES"
150071c38472SWarner Losh
150171c38472SWarner Losh20000728:
150271c38472SWarner Losh	If you have null_load="YES" in your /boot/loader.conf, you
150371c38472SWarner Losh	will need to change that to nullfs_load="YES".
150471c38472SWarner Losh
15051dece4a9SWarner Losh20000728:
15061dece4a9SWarner Losh	The "installkernel" target has changed slightly. Now even if
15071dece4a9SWarner Losh	you override KERNEL e.g. 'make installkernel KERNEL=MYKERNEL'
15081dece4a9SWarner Losh	it will install the MYKERNEL file (built with the buildkernel
15091dece4a9SWarner Losh	target) as /kernel rather than /MYKERNEL. Those who have
15101dece4a9SWarner Losh	updated their /boot/loader.conf files to point to /MYKERNEL
15111dece4a9SWarner Losh	should remove that entry or perform manual rename of /kernel
15121dece4a9SWarner Losh	to /MYKERNEL.
15131dece4a9SWarner Losh
1514409e887cSWarner Losh20000711:
1515409e887cSWarner Losh	If you use CVSUP or CTM to get CVS trees, AND you used to get
1516409e887cSWarner Losh	the old crypto files from internat.freebsd.org AND you check
1517409e887cSWarner Losh	out files from the CVS tree with the cvs command, please read
1518409e887cSWarner Losh		http://people.freebsd.org/~imp/internat.txt
1519409e887cSWarner Losh	for details on potential problems that you might have and how
1520409e887cSWarner Losh	to get around them.
1521409e887cSWarner Losh
1522409e887cSWarner Losh	If you are merely a mirror, or don't answer yes to each of the
1523409e887cSWarner Losh	clauses above, you needn't worry.
1524409e887cSWarner Losh
1525409e887cSWarner Losh20000711:
1526409e887cSWarner Losh	/etc/security has been updated to print the inode number of
1527409e887cSWarner Losh	setuid programs that have changed.  You will see a large spike
1528409e887cSWarner Losh	in the number of changed programs the first time when you run
1529409e887cSWarner Losh	mergemaster to get a new /etc/security.
1530409e887cSWarner Losh
1531673d13f2SWarner Losh20000710:
1532673d13f2SWarner Losh	/dev/random now has good entropy collection (from the keyboard
1533673d13f2SWarner Losh	and sysmouse drivers). Please ensure that either `options
1534673d13f2SWarner Losh	RANDOMDEV' is present in your kernel config file or that
1535673d13f2SWarner Losh	`randomdev_load="YES"' is in your /boot/loader.conf. If you do
1536673d13f2SWarner Losh	not have the /dev/random driver, OpenSSL (and consequently
1537673d13f2SWarner Losh	lots of crypto tools (like SSH)) will fail with strange
1538673d13f2SWarner Losh	errors. (see below, 20000624).
1539673d13f2SWarner Losh
1540bed5c5ffSWarner Losh	FreeBSD-current is safe again to run Crypto.
15411dece4a9SWarner Losh
1542673d13f2SWarner Losh20000709:
1543c6dd1430SWarner Losh	phk made the malloc default options AJ.  This may slow things
1544c6dd1430SWarner Losh	down and uncover other latent bugs in the code.  If you need to
1545c6dd1430SWarner Losh	run at full speed, you can disable this by doing the following:
1546673d13f2SWarner Losh		ln -s aj /etc/malloc.conf
1547673d13f2SWarner Losh
1548e98e26cdSWarner Losh20000706:
1549e98e26cdSWarner Losh	libftpio's version was accidentally bumped a few days ago.  This
1550e98e26cdSWarner Losh	has been corrected.  You may need to remove /usr/lib/libftpio.so.6
1551e98e26cdSWarner Losh	before doing your next buildworld/installworld pair.  It certainly
1552f699bbbbSMark Ovens	won't hurt to remove it before the update procedure.  It will
1553e98e26cdSWarner Losh	break fetch until a new one is built, but ftp can be used in the
15542c021c6cSMark Ovens	interim if needed.
1555e98e26cdSWarner Losh
1556e98e26cdSWarner Losh20000705:
1557e98e26cdSWarner Losh	The crypto packages have changed for the cvsup.  This has been done
1558e98e26cdSWarner Losh	in a backward compatible way, but the old packages will go away at
1559e98e26cdSWarner Losh	some point in the future.  Look at /usr/share/examples/cvsup for
1560e98e26cdSWarner Losh	details.
1561e98e26cdSWarner Losh
1562c373950eSWarner Losh20000704:
15632f961bc8SWarner Losh	With the new sys/modules/sound/drivers/*, you will need to
15642f961bc8SWarner Losh	set SYSDIR until you do an installworld after July 7th.
15652f961bc8SWarner Losh
15662f961bc8SWarner Losh20000704:
1567c373950eSWarner Losh	rc.shutdown and rc will now call the rc.d scripts with start
1568c373950eSWarner Losh	or stop.  This may cause some harmless warnings from older
1569c373950eSWarner Losh	rc.d scripts that haven't been updated.
1570c373950eSWarner Losh
157127dc3a2bSWarner Losh20000630:
157227dc3a2bSWarner Losh	The libfetch based version of fetch has gone into the tree.
157327dc3a2bSWarner Losh	Minor problems may result on some of the less popular sites,
157427dc3a2bSWarner Losh	which should be reported to des@freebsd.org.
157527dc3a2bSWarner Losh
1576b8c215acSWarner Losh20000625:
1577b8c215acSWarner Losh	From approximately this date forward, one must have the crypto
157827dc3a2bSWarner Losh	system installed in order to build the system and kernel.
157927dc3a2bSWarner Losh	While not technically strictly true, one should treat it as
158027dc3a2bSWarner Losh	required and grab the crypto bits.  If you are grabbing CVS
158127dc3a2bSWarner Losh	trees, src-all and cvs-crypto should be treated as if they
158227dc3a2bSWarner Losh	were required.  You should check with the latest collections
158327dc3a2bSWarner Losh	to make sure that these haven't changed.
1584b8c215acSWarner Losh
15857b990719SWarner Losh20000624:
15867b990719SWarner Losh	Mark Murray just committed the first parts of a cleanup of
15877b990719SWarner Losh	/dev/zero, et al.  This is also cleaning up /dev/random.
15887b990719SWarner Losh	The entropy is disconnected, so DO NOT USE VERSIONS OF FREEBSD
15891a33dba7SWarner Losh	-CURRENT FROM THIS POINT to 2000710 for cryptographic services
15907b990719SWarner Losh	until Mark can merge in the fixes to this work in progress.
15917b990719SWarner Losh	openssh and openssl should not be used to generate keys from this
15927b990719SWarner Losh	date to the completion of the work.
15937b990719SWarner Losh
159427dc3a2bSWarner Losh	If you must operate at this reduced level of security, add '
159527dc3a2bSWarner Losh	options RANDOMDEV' to your kernel or modload the randomdev
159627dc3a2bSWarner Losh	module.  You may also need to copy a new MAKEDEV to /dev and
159727dc3a2bSWarner Losh	recreate the random and urandom devices.
159827dc3a2bSWarner Losh
159981e54c50SWarner Losh20000622:
160081e54c50SWarner Losh	The license on the softupdates is now a standard 2 clause
160181e54c50SWarner Losh	BSD license.  You may need to remove your symbolic links
160281e54c50SWarner Losh	that used to be required when updating.
160381e54c50SWarner Losh
160439943833SWarner Losh20000621:
16052c021c6cSMark Ovens	Scott Flatman <sf@aracnet.com> sent in a decent write-up on
16062a2f33fbSDaniel Baker	the config file update procedure.
16072a2f33fbSDaniel Baker		http://people.freebsd.org/~imp/config-upd.html
1608c373950eSWarner Losh	NOTE: LINT is gone.  It has been replaced with NOTES.  NOTES
160959df1173SDavid E. O'Brien	isn't buildable.  However, you can generate a LINT file:
161059df1173SDavid E. O'Brien		cd /sys/<ARCH>/conf && make LINT
161139943833SWarner Losh
1612290f9ad8SWarner Losh20000620:
1613290f9ad8SWarner Losh	Binutils 2.10 have hit the tree, or will shortly.  As soon
1614290f9ad8SWarner Losh	as they do, the problem noted in 20000522 will be resolved and
1615290f9ad8SWarner Losh	that workaround will no longer be required.
1616290f9ad8SWarner Losh
161790fb6346SWarner Losh20000615:
161890fb6346SWarner Losh	phk removed the compatibility creation of wd devices in the
161990fb6346SWarner Losh	ad driver.  If you haven't done so already, you must update
162090fb6346SWarner Losh	your fstab, etc to use the ad devices instead of the wd
162190fb6346SWarner Losh	devices.
162290fb6346SWarner Losh
1623f75f65bbSWarner Losh	In addition, you'll need to update your boot blocks to a
1624f75f65bbSWarner Losh	more modern version, if you haven't already done so.  Modern
1625f75f65bbSWarner Losh	here means 4.0 release or newer (although older releases
1626f75f65bbSWarner Losh	may work).
1627f75f65bbSWarner Losh
1628ba26da8eSWarner Losh20000612:
1629ba26da8eSWarner Losh	Peter took an axe to config(8).  Be sure that you read his mail
1630290f9ad8SWarner Losh	on the topic before even thinking about updating.  You will
1631c6dd1430SWarner Losh	need to create a /boot/device.hints or add a hints directive
1632290f9ad8SWarner Losh	to your config file to compile them in statically.  The format
1633f54a3542SWarner Losh	of the config file has changed as well.  Please see GENERIC or
1634f54a3542SWarner Losh	NEWCARD for examples of the new format.
1635290f9ad8SWarner Losh
16369698f2c0SWarner Losh	Indirectly, this also breaks USERCONFIG.  Unless a newer entry
16379698f2c0SWarner Losh	says that it has been fixed, assume that must use the hints mechanism
16389698f2c0SWarner Losh	in the loader if you need to use a machine with very old ISA cards
16399698f2c0SWarner Losh	in it.
1640bbcc5149SWarner Losh
1641d65850ebSWarner Losh20000522:
1642ba26da8eSWarner Losh	A new set of binutils went into the tree today.  Anybody
1643d65850ebSWarner Losh	building a kernel after this point is advised that they need
1644d65850ebSWarner Losh	to rebuild their binutils (or better yet do a
1645d65850ebSWarner Losh	buildworld/installworld) before building a new kernel.
1646d65850ebSWarner Losh
1647d9583a00SWarner Losh	Due to bugs in binutils, using malloc options (eg /etc/malloc.conf
1648d9583a00SWarner Losh	or MALLOC_OPTIONS env var) J will cause ld to dump core.  It
1649d9583a00SWarner Losh	is recommended that you don't set this option until the problem
1650d9583a00SWarner Losh	is resolved.
1651d9583a00SWarner Losh
16528039cedeSWarner Losh20000513:
16538039cedeSWarner Losh	The ethernet drivers were all updated to clean up the BPF handling.
16548039cedeSWarner Losh
1655d65850ebSWarner Losh20000510:
16568039cedeSWarner Losh	The problems with boot blocks on the alphas have been corrected.
16578039cedeSWarner Losh	This will require some care in updating alphas.  A new libstand
16588039cedeSWarner Losh	is requires for the boot blocks to build properly.
16598039cedeSWarner Losh
16608039cedeSWarner Losh20000503:
16618039cedeSWarner Losh	Recompile all kld modules.  Proper version dependency info
16628039cedeSWarner Losh	is now available.
16638039cedeSWarner Losh
1664d65850ebSWarner Losh20000502:
1665d65850ebSWarner Losh	Modules have been disconnected from the buildworld tree and
1666d65850ebSWarner Losh	connected to the kernel building instead.
1667d65850ebSWarner Losh
1668be149406SNik Clayton20000427:
16698039cedeSWarner Losh	You may need to build gperf
16708039cedeSWarner Losh		cd /usr/src/gnu/usr.bin/gperf && make depend all install
16718039cedeSWarner Losh	when upgrading from 4.0 -> current.  The build system now uses
16728039cedeSWarner Losh	an option only in -current.
16738039cedeSWarner Losh
16742b8dd5f4SWarner Losh20000417:
16752b8dd5f4SWarner Losh	The method that we brand ELF binaries has changed to be more
1676f699bbbbSMark Ovens	acceptable to the binutils maintainers.  You will need to
16772b8dd5f4SWarner Losh	rebrand your ELF binaries that aren't native.  One problem
16782b8dd5f4SWarner Losh	binary is the Linux ldconfig.  After your make world, but
16792c021c6cSMark Ovens	before you reboot, you'll need to issue:
16802b8dd5f4SWarner Losh		brandelf -t Linux /compat/linux/sbin/ldconfig
16812b8dd5f4SWarner Losh	if you have Linux compatibility enabled on your machine.
16822b8dd5f4SWarner Losh
16838d9f1945SWarner Losh20000320:
16842b8dd5f4SWarner Losh	If you have really bad/marginal IDE drives, you may find they
16852b8dd5f4SWarner Losh	don't work well.  Use pio mode instead.  The easiest way to
16862b8dd5f4SWarner Losh	cope if you have a problem combination is to add:
1687ae20a1b8SDima Dorfman		/sbin/sysctl hw.ata.ata_dma=0
16882b8dd5f4SWarner Losh	to the start of /etc/rc.conf.
16898d9f1945SWarner Losh
1690f8ab1dd6SWarner Losh20000319:
1691f699bbbbSMark Ovens	The ISA and PCI compatibility shims have been connected to the
1692f8ab1dd6SWarner Losh	options COMPAT_OLDISA and COMPAT_OLDPCI.  If you are using old
1693f8ab1dd6SWarner Losh	style PCI or ISA drivers (i.e. tx, voxware, etc.) you must
1694f8ab1dd6SWarner Losh	include the appropriate option in your kernel config.  Drivers
1695f8ab1dd6SWarner Losh	using the shims should be updated or they won't ship with
1696f8ab1dd6SWarner Losh	5.0-RELEASE, targeted for 2001.
1697f8ab1dd6SWarner Losh
169819cada77SWarner Losh20000318:
1699f699bbbbSMark Ovens	We've entered the traditional post release dumping party.
170019cada77SWarner Losh	Large kernel changes are being committed and are in the
170119cada77SWarner Losh	works.  It is important to keep the systems' klds and kernel
170219cada77SWarner Losh	in sync as kernel interfaces and structures are changing.
170319cada77SWarner Losh	Before reporting kernel panics, make sure that all modules
170419cada77SWarner Losh	that you are loading are up to date.
1705ba228352SWarner Losh
170619cada77SWarner Losh20000315:
17076d23c382SWarner Losh	If you are upgrading from an older version of FreeBSD, you
17086d23c382SWarner Losh	need to update your boot blocks as well.  'disklabel -B ad0'
17096d23c382SWarner Losh	will do the trick.  This isn't critical until you remove your
17106d23c382SWarner Losh	wd device entries in /dev, at which point your system will not
17116d23c382SWarner Losh	boot.
17126d23c382SWarner Losh
17136d23c382SWarner Losh20000315:
171419cada77SWarner Losh	4.0 RELEASE shipped.  Please see the 4.0 UPDATING file for how
171519cada77SWarner Losh	to upgrade to 4.0 from 3.x.
171657199806SWarner Losh
1717dc0dbf5cSWarner LoshCOMMON ITEMS:
1718dc0dbf5cSWarner Losh
1719cd5f061cSWarner Losh	# NOTE: 5.x below applies to 6.0-currrent as well, for the
1720cd5f061cSWarner Losh	# momemnt.  4.any -> 5.any upgrade support will remain in
1721cd5f061cSWarner Losh	# place for 6.0 current, but after 5.3 RELEASE, the 4.any ->
1722cd5f061cSWarner Losh	# 6.0-current upgrade path will require moving through 5.3
1723cd5f061cSWarner Losh	# RELEASE or newer.
1724cd5f061cSWarner Losh
1725a24eff53SWarner Losh	General Notes
1726a24eff53SWarner Losh	-------------
1727a24eff53SWarner Losh	Avoid using make -j when upgrading.  From time to time in the
1728a24eff53SWarner Losh	past there have been problems using -j with buildworld and/or
1729a24eff53SWarner Losh	installworld.  This is especially true when upgrading between
1730a24eff53SWarner Losh	"distant" versions (eg one that cross a major release boundary
1731a24eff53SWarner Losh	or several minor releases, or when several months have passed
1732a24eff53SWarner Losh	on the -current branch).
1733a24eff53SWarner Losh
17345780f3baSWarner Losh	Sometimes, obscure build problems are the result of environment
17355780f3baSWarner Losh	poisoning.  This can happen because the make utility reads its
17365780f3baSWarner Losh	environment when searching for values for global variables.
17375780f3baSWarner Losh	To run your build attempts in an "environmental clean room",
17385780f3baSWarner Losh	prefix all make commands with 'env -i '.  See the env(1) manual
17395780f3baSWarner Losh	page for more details.
17405780f3baSWarner Losh
1741dc0dbf5cSWarner Losh	To build a kernel
1742dc0dbf5cSWarner Losh	-----------------
1743ba01eb20SWarner Losh	If you are updating from a prior version of FreeBSD (even one just
1744f699bbbbSMark Ovens	a few days old), you should follow this procedure. With a
1745ba01eb20SWarner Losh	/usr/obj tree with a fresh buildworld,
1746282e0f01SRuslan Ermilov	make -DALWAYS_CHECK_MAKE buildkernel KERNCONF=YOUR_KERNEL_HERE
1747282e0f01SRuslan Ermilov	make -DALWAYS_CHECK_MAKE installkernel KERNCONF=YOUR_KERNEL_HERE
1748dc0dbf5cSWarner Losh
1749ba01eb20SWarner Losh	To just build a kernel when you know that it won't mess you up
1750ba01eb20SWarner Losh	--------------------------------------------------------------
17510fbd2da9SKen Smith	This assumes you are already running a 5.X system.  Replace
17520fbd2da9SKen Smith	${arch} with the architecture of your machine (e.g. "i386",
17530fbd2da9SKen Smith	"alpha", "amd64", "ia64", "pc98", "sparc64", etc).
17540fbd2da9SKen Smith
17550fbd2da9SKen Smith	cd src/sys/${arch}/conf
175647d0d01fSWarner Losh	config KERNEL_NAME_HERE
17570fbd2da9SKen Smith	cd ../compile/KERNEL_NAME_HERE
1758ba01eb20SWarner Losh	make depend
1759ba01eb20SWarner Losh	make
1760ba01eb20SWarner Losh	make install
1761ba01eb20SWarner Losh
1762ba01eb20SWarner Losh	If this fails, go to the "To build a kernel" section.
1763ba01eb20SWarner Losh
1764ba01eb20SWarner Losh	To rebuild everything and install it on the current system.
1765ba01eb20SWarner Losh	-----------------------------------------------------------
176663cb445eSWarner Losh	# Note: sometimes if you are running current you gotta do more than
176763cb445eSWarner Losh	# is listed here if you are upgrading from a really old current.
176863cb445eSWarner Losh
1769f643de42SWarner Losh	<make sure you have good level 0 dumps>
177063cb445eSWarner Losh	<maybe fix /etc/fstab>				[7]
177163cb445eSWarner Losh	make buildworld
17726586253aSWarner Losh	make kernel KERNCONF=YOUR_KERNEL_HERE
177363cb445eSWarner Losh							[1]
177463cb445eSWarner Losh	<reboot in single user>				[3]
17756586253aSWarner Losh	src/etc/rc.d/preseedrandom			[10]
177663cb445eSWarner Losh	mergemaster -p					[5]
177763cb445eSWarner Losh	make installworld
177863cb445eSWarner Losh	mergemaster					[4]
177963cb445eSWarner Losh	<reboot>
178063cb445eSWarner Losh
1781759f0aefSWarner Losh
1782f27b1fceSJoseph Koshy	To cross-install current onto a separate partition
1783f27b1fceSJoseph Koshy	--------------------------------------------------
1784f27b1fceSJoseph Koshy	# In this approach we use a separate partition to hold
1785f27b1fceSJoseph Koshy	# current's root, 'usr', and 'var' directories.   A partition
1786f27b1fceSJoseph Koshy	# holding "/", "/usr" and "/var" should be about 2GB in
1787f27b1fceSJoseph Koshy	# size.
1788f27b1fceSJoseph Koshy
1789f27b1fceSJoseph Koshy	<make sure you have good level 0 dumps>
1790f27b1fceSJoseph Koshy	<boot into -stable>
1791f27b1fceSJoseph Koshy	make buildworld
1792f27b1fceSJoseph Koshy	<maybe newfs current's root partition>
1793f27b1fceSJoseph Koshy	<mount current's root partition on directory ${CURRENT_ROOT}>
1794f27b1fceSJoseph Koshy	make installworld DESTDIR=${CURRENT_ROOT}
1795f27b1fceSJoseph Koshy	make buildkernel KERNCONF=YOUR_KERNEL_HERE
17966586253aSWarner Losh	cp src/sys/${ARCH}/conf/GENERIC.hints \
1797f27b1fceSJoseph Koshy		${CURRENT_ROOT}/boot/device.hints	# as needed
1798f27b1fceSJoseph Koshy	make installkernel KERNCONF=YOUR_KERNEL_HERE DESTDIR=${CURRENT_ROOT}
17996586253aSWarner Losh	cd src/etc; make distribution DESTDIR=${CURRENT_ROOT} # if newfs'd
1800f27b1fceSJoseph Koshy	cp /etc/fstab ${CURRENT_ROOT}/etc/fstab 		   # if newfs'd
1801f27b1fceSJoseph Koshy	<edit ${CURRENT_ROOT}/etc/fstab to mount "/" from the correct partition>
1802f27b1fceSJoseph Koshy	<reboot into current>
1803f27b1fceSJoseph Koshy	<do a "native" rebuild/install as described in the previous section>
18046586253aSWarner Losh	<maybe install compatibility libraries from src/lib/compat>
1805f27b1fceSJoseph Koshy 	<reboot>
1806f27b1fceSJoseph Koshy
1807f27b1fceSJoseph Koshy
1808f27b1fceSJoseph Koshy	To upgrade in-place from 4.x-stable to current
1809f27b1fceSJoseph Koshy	----------------------------------------------
18105c195f59SWarner Losh	# 5.x uses more space than 4.x.  Also, the location of kernel
1811e5dc5f61SWarner Losh	# modules has changed.  If you are installing 5.x onto a 4.x
18125c195f59SWarner Losh	# system, you'll need about 30MB of free disk space on your /
18135c195f59SWarner Losh	# partition.  If you have less than this, you may encounter difficult
1814ca22e652SJens Schweikhardt	# to back out of problems with this procedure.  If /tmp is on
1815f643de42SWarner Losh	# the / partition, you may want to completely remove all its content
1816f643de42SWarner Losh	# before upgrading, as this can be a common source of shortage of
1817f643de42SWarner Losh	# space on /.
1818f643de42SWarner Losh
1819f643de42SWarner Losh	<make sure you have good level 0 dumps>
1820fc8c157fSWarner Losh	<maybe fix /etc/fstab>				[7]
182121c075eaSWarner Losh	make buildworld					[9]
1822802fc49dSBrian Feldman	cp sys/${MACHINE}/conf/GENERIC.hints /boot/device.hints [2]
1823e5dc5f61SWarner Losh	make kernel KERNCONF=YOUR_KERNEL_HERE		[8]
1824802fc49dSBrian Feldman	cd sys/boot ; make STRIP="" install		[6]
1825fc8c157fSWarner Losh							[1]
1826fc8c157fSWarner Losh	<reboot in single user>				[3]
18276586253aSWarner Losh	src/etc/rc.d/preseedrandom			[10]
1828835284beSWarner Losh	mergemaster -p					[5]
1829f8a4c901SWarner Losh	rm -rf /usr/include/g++
1830ba26da8eSWarner Losh	make installworld
1831802fc49dSBrian Feldman	mergemaster -i					[4]
1832ba26da8eSWarner Losh	<reboot>
1833ba26da8eSWarner Losh
1834fdb9f54dSWarner Losh	Make sure that you've read the UPDATING file to understand the
1835fdb9f54dSWarner Losh	tweaks to various things you need.  At this point in the life
1836fdb9f54dSWarner Losh	cycle of current, things change often and you are on your own
1837fdb9f54dSWarner Losh	to cope.  The defaults can also change, so please read ALL of
1838fdb9f54dSWarner Losh	the UPDATING entries.
1839ba26da8eSWarner Losh
18401dece4a9SWarner Losh	Also, if you are tracking -current, you must be subscribed to
18411dece4a9SWarner Losh	freebsd-current@freebsd.org.  Make sure that before you update
18421dece4a9SWarner Losh	your sources that you have read and understood all the recent
18431dece4a9SWarner Losh	messages there.  If in doubt, please track -stable which has
18441dece4a9SWarner Losh	much fewer pitfalls.
18451dece4a9SWarner Losh
1846134d2e86SWarner Losh	[1] If you have third party modules, such as vmware, you
1847134d2e86SWarner Losh	should disable them at this point so they don't crash your
1848134d2e86SWarner Losh	system on reboot.
1849134d2e86SWarner Losh
18509c1a7444SWarner Losh	[2] If you have legacy ISA devices, you may need to create
18519c1a7444SWarner Losh	your own device.hints to reflect your unique hardware
18529c1a7444SWarner Losh	configuration.
18539c1a7444SWarner Losh
1854ee6e1fc3SWarner Losh	[3] From the bootblocks, boot -s, and then do
1855ee6e1fc3SWarner Losh		fsck -p
1856ee6e1fc3SWarner Losh		mount -u /
1857ee6e1fc3SWarner Losh		mount -a
18586586253aSWarner Losh		cd src
185947d0d01fSWarner Losh		adjkerntz -i		# if CMOS is wall time
1860f6a0ef01SWarner Losh	Also, when doing a major release upgrade, it is required that
1861f6a0ef01SWarner Losh	you boot into single user mode to do the installworld.
186266986952SRuslan Ermilov	For the 4.x -> 5.x upgrade, you will also see many messages about
1863b705ae10SWarner Losh	needing to recompile your userland.  These are harmless and can
1864b705ae10SWarner Losh	be ignored while you proceed to the next step.
1865ee6e1fc3SWarner Losh
1866a6cd4f9dSWarner Losh	[4] Note: This step is non-optional.  Failure to do this step
1867a6cd4f9dSWarner Losh	can result in a significant reduction in the functionality of the
1868a6cd4f9dSWarner Losh	system.  Attempting to do it by hand is not recommended and those
1869a6cd4f9dSWarner Losh	that pursue this avenue should read this file carefully, as well
1870a6cd4f9dSWarner Losh	as the archives of freebsd-current and freebsd-hackers mailing lists
1871a6cd4f9dSWarner Losh	for potential gotchas.
1872a6cd4f9dSWarner Losh
1873835284beSWarner Losh	[5] Usually this step is a noop.  However, from time to time
1874835284beSWarner Losh	you may need to do this if you get unknown user in the following
1875835284beSWarner Losh	step.  It never hurts to do it all the time.  You may need to
1876835284beSWarner Losh	install a new mergemaster (cd src/usr.sbin/mergemaster && make
1877835284beSWarner Losh	install) after the buildworld before this step if you last updated
1878835284beSWarner Losh	from current before 20020224 or from -stable before 20020408.
1879835284beSWarner Losh
1880bd79cf40SWarner Losh	[6] 4.x boot loader can be used to boot a 5.x system, however
1881bd79cf40SWarner Losh	it is difficult to do that at best.  If you wish to try, then
1882bd79cf40SWarner Losh	you should interrupt the boot and at the ok prompt type:
1883bd79cf40SWarner Losh		ok unload
1884bd79cf40SWarner Losh		ok boot /boot/kernel/kernel
1885bd79cf40SWarner Losh	If this fails to work, you must install a new boot loader as
1886bd79cf40SWarner Losh	described here.
1887fc8c157fSWarner Losh
1888fc8c157fSWarner Losh	[7] Before you upgrade, please make sure that you are not using
1889e5dc5f61SWarner Losh	compatibility slices.  These are device names of the form /dev/ad0a
1890e5dc5f61SWarner Losh	without the actual slice name.  These will break with 5.x and newer.
1891fc8c157fSWarner Losh	You generally must update these entries to use the post FreeBSD
1892e5dc5f61SWarner Losh	2.x form of /dev/ad0s1a. i386 and pc98 are affected, while alpha
1893e5dc5f61SWarner Losh	is not.
1894fc8c157fSWarner Losh
1895c74fe6afSWarner Losh	[8] In order to have a kernel that can run the 4.x binaries
1896c74fe6afSWarner Losh	needed to do an installworld, you must include the COMPAT_FREEBSD4
1897c74fe6afSWarner Losh	option in your kernel.  Failure to do so may leave you with a system
1898c74fe6afSWarner Losh	that is hard to boot to recover.
1899c74fe6afSWarner Losh
1900e5dc5f61SWarner Losh	Make sure that you merge any new devices from GENERIC since the
1901e5dc5f61SWarner Losh	last time you updated your kernel config file.
1902e5dc5f61SWarner Losh
190321c075eaSWarner Losh	[9] When checking out sources, you must include the -P flag to have
1904e5dc5f61SWarner Losh	cvs prune empty directories.
1905e5dc5f61SWarner Losh
1906e5dc5f61SWarner Losh	If CPUTYPE is defined in your /etc/make.conf, make sure to use the
1907e5dc5f61SWarner Losh	"?=" instead of the "=" assignment operator, so that buildworld can
1908e5dc5f61SWarner Losh	override the CPUTYPE if it needs to.
1909e5dc5f61SWarner Losh
1910e5dc5f61SWarner Losh	MAKEOBJDIRPREFIX must be defined in an environment variable, and
1911e5dc5f61SWarner Losh	not on the command line, or in /etc/make.conf.  buildworld will
1912e5dc5f61SWarner Losh	warn if it is improperly defined.
1913e5dc5f61SWarner Losh
1914802fc49dSBrian Feldman	In case you would like to avoid installing new packages of everything,
1915802fc49dSBrian Feldman	you might want to uncomment the "COMPAT4X=	YES" entry, so that 4.x
191666986952SRuslan Ermilov	compatibility libraries are built which should allow you to continue
1917e5dc5f61SWarner Losh	using your existing software for a while.  Alternatively, you can
1918e5dc5f61SWarner Losh	install the misc/compat4x port.
19198633bbeaSBrooks Davis
19208633bbeaSBrooks Davis	[10] In order to create temporary files, /dev/random must be
19216586253aSWarner Losh	initialized by feeding data into it.  src/etc/rc.d/preseedrandom
19228633bbeaSBrooks Davis	takes care of this.
1923dc0dbf5cSWarner LoshFORMAT:
1924dc0dbf5cSWarner Losh
1925f699bbbbSMark OvensThis file contains a list, in reverse chronological order, of major
19261fc1a0dcSWarner Loshbreakages in tracking -current.  Not all things will be listed here,
1927f8ab1dd6SWarner Loshand it only starts on March 15, 2000.  Updating files can found in
1928f8ab1dd6SWarner Loshprevious releases if your system is older than this.
19291fc1a0dcSWarner Losh
1930e72fd46aSWarner LoshCopyright information:
1931e72fd46aSWarner Losh
1932e5dc5f61SWarner LoshCopyright 1998-2004 M. Warner Losh.  All Rights Reserved.
1933e72fd46aSWarner Losh
1934772730c7SWarner LoshRedistribution, publication, translation and use, with or without
1935772730c7SWarner Loshmodification, in full or in part, in any form or format of this
19369698f2c0SWarner Loshdocument are permitted without further permission from the author.
1937e72fd46aSWarner Losh
1938e72fd46aSWarner LoshTHIS DOCUMENT IS PROVIDED BY WARNER LOSH ``AS IS'' AND ANY EXPRESS OR
1939e72fd46aSWarner LoshIMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
1940e72fd46aSWarner LoshWARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
1941e72fd46aSWarner LoshDISCLAIMED.  IN NO EVENT SHALL WARNER LOSH BE LIABLE FOR ANY DIRECT,
1942e72fd46aSWarner LoshINDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
1943e72fd46aSWarner Losh(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
1944e72fd46aSWarner LoshSERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
1945e72fd46aSWarner LoshHOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
1946e72fd46aSWarner LoshSTRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
1947e72fd46aSWarner LoshIN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
1948e72fd46aSWarner LoshPOSSIBILITY OF SUCH DAMAGE.
1949e72fd46aSWarner Losh
1950e72fd46aSWarner LoshIf you find this document useful, and you want to, you may buy the
1951e72fd46aSWarner Loshauthor a beer.
1952e72fd46aSWarner Losh
195322306abcSWarner LoshContact Warner Losh if you have any questions about your use of
1954772730c7SWarner Loshthis document.
1955772730c7SWarner Losh
195697d92980SPeter Wemm$FreeBSD$
1957