1 Updating Information for FreeBSD current users
3 This file is maintained by imp@village.org. Please send new entries
4 directly to him. See end of file for further details. For commonly
5 done items, please see the end of the file. Search for 'COMMON
9 CMSG_XXX macros offset in <sys/socket.h> has changed to
10 conform RFC-2292. All affected applications have been
11 corrected. The i386 platform's offsets haven't changed, but
12 the alpha's did. When you build and install new kernel on
13 FreeBSD/alpha, you must also do a make world.
16 OpenSSH has been added to FreeBSD. This may conflict with the
17 ports/security/ssh port since it installs binaries into
18 /usr/bin and the port goes into /usr/local/bin. Most paths
19 have /usr/bin in the path before /usr/local/bin, so problems
20 may arise. If you don't want OpenSSH, add NO_OPENSSH=yes to
23 You will also need to enable OpenSSH in /etc/rc.conf if you
24 want to run the new servers. You may need to move your host
25 key and other config files from /usr/local/etc to /etc/ssh.
27 OpenSSH's command line parsing, available options and default
28 settings aren't the same as ssh, so some care needs to be
29 taken in its operation. One should do a full audit of all
30 configuration settings.
33 The xinstall problem has kinda sorta been corrected. The
34 following is known to work by the author of UPDATING. It
35 is what he did to update his laptop. It is likely the same
36 effect as the work around listed in 20000129.
38 make installworld This will fail
40 make clean all install NOSHARED=YES
43 If it doesn't work for you, then I'm sure that there will be
44 another 100 messages in -current.
47 libipsec version number changed from 2 to 0. The original
48 commit of Jan 6 incorrectly set this to 2. Remove
49 /usr/lib/libipsec.so.2* before the buildworld and rebuild
50 anything that uses libipsec.so after you install the new
54 The rcmd related functions have been aligned with other BSD
55 implementations. rlogind and rshd have been changed to use
56 the new API. A make world is recommended to keep them in sync
57 with the libraries they use.
59 http://www.FreeBSD.org/cgi/cvsweb.cgi/src/lib/libc/net/rcmd.c
63 {set,get}flags have been added to the tree for rather dubious
66 IF AND ONLY IF installworld fails:
67 make -k -DNOFSCHG installworld
69 This issue was resolved Feb 5, 2000.
72 rcmd_af() is added for multiple address family support. rsh
73 and rlogin have been updated to use this to support INET6. A
74 make world is recommended to keep them in sync with the
78 The default way that virtual tables in our default C++
79 compiler has changed. We used to use THUNKS for virtual
80 inheritance. Unfortunately there are bugs that The GCC
81 developers thought would be fixed in GCC 2.95. However it
84 After this change existing applications written in C++ may
85 give errors like below when you try to run them:
87 /usr/libexec/ld-elf.so.1: /usr/lib/libstdc++.so.3: Undefined symbol "__vt_7filebuf"
89 The only fix is to rebuild the application and any C++
93 The management of next_writeable has been move from the
94 kernel to userspace. This means that the burncd command
95 must be in sync with the kernel. So make world is your
99 GNU texinfo upgraded to 4.0. It is recommended that you use
100 make buildworld to update.
103 CAM_VERSION has been increased. Recompile all programs that
104 depend on it (tosha, camcontrol, etc) when moving to kernels
108 pccard ioctls changed with a commit to have the kernel tell
109 pccardd which device it created, rather than having pccardd
110 dictate it to the kernel. Recompile kernel and
111 pccardd/pccardc together. pccardd/pccardc rely on a kernel
112 Makefile that must be installed prior to building them. Make
113 world will automatically take care of this issue, but you need
114 to know if you are building by hand.
117 Your kernel config files need to be changed to s/controller/device/
118 in them. You will need a new version of config to do this.
121 chown & chgrp moved again
123 This is a heads up to let you know that you need to
124 rm -f /sbin/chown /bin/chgrp
125 after your next `make world'. Additionally you need to install
126 a new /dev/MAKEDEV (mergemaster(8) will assist you in this).
129 SHA-1 password support gone
131 As warned yesterday, I've just removed the ability for
132 libcrypt to understand SHA-1 passwords. This was present but
133 undocumented in the tree for the past few months and was
134 removed so it can be reimplemented properly as part of a
135 revamped libcrypt at a later date. Anyone who was actually
136 making use of the feature will have to update their passwords
137 back to MD5 before they reinstall the library.
140 ioctl numbers changed for dvdio ioctls. You will need to recompile
141 anything that uses them. wormcontrol has been deprecated in
145 Building linux and svr4 compatibility into the kernel now
146 requires /usr/bin/genassym. Go to /usr/src/usr.bin/genassym,
147 do "make obj ; make clean depend all install" before building
151 sendmail.cf has moved from /etc/sendmail.cf to
152 /etc/mail/sendmail.cf. You may need to adjust /etc/rc.conf
153 and /etc/rc to cope as well as moving sendmail.cf.
156 ntp 4.0.98 has replaced the ancient xntpd. The daemon name
157 changed from xntpd to ntpd, so you may need to update your
158 /etc/rc.conf file. The ntp.conf files are compatible with the
159 old release, unless you are using a local reference clock.
160 Details about ntp4 can be found at http://www.ntp.org/.
162 xntpd will be cvs removed from the repo in about a week.
165 Soren updated the ata driver. Please update to at least this
166 version before submitting bug reports.
169 The ata driver has become the primary ata/ide/atapi driver in
170 the kernel. The wd driver is obsolete. You should upgrade your
171 machine to the new ata driver. You will need to follow the
172 directions for updating the devices in the 19991205 entry. You
173 will need to update all occurances of wd to ad in your config files
174 (/etc/rc.conf, /etc/fstab, etc). A compatibility device exists
175 for wd for the time being, but once you have determined that
176 ata is working for you, transition to the new ad devices.
179 Block devices are going away. You will need to update your /dev
180 tree with a fresh copy of MAKEDEV for things to always work in
181 the future. fsck is unable to cope with dirty file systems
182 after this change, so it may work for you or it may not.
184 See "To rebuild disk /dev entries" at the end of the file.
186 *** All uses of block devices must be converted to char devices.
187 *** Likely the only thing impacted is dumpdev in /etc/rc.conf
190 The dc interface has replaced al, ax, dm, pn and mx. The former
194 Support for the old 'sd' device names has been removed in
195 favor of 'da'. Please update your /etc/fstab, /etc/rc.conf
196 and any other places you might have sd names cached.
197 Generally these changes are as simple as s=/dev/sd=/dev/da=g,
198 but be careful to make sure that things are really that
199 simple. You may also need to create /dev entries for the da
202 See "To rebuild disk /dev entries" at the end of the file.
205 BAD144 support has been removed. Cope or replace the hardware.
208 ALPHA users take note. All klds will need to be recompiled for
209 kernels build after this date. It is a good time to update since
210 pal.s will be going away soon.
213 MFS_ROOT and MFS_ROOT_SIZE are gone, replaced by MD_ROOT and
214 MD_ROOT_SIZE options in the md driver. md driver now deals with
215 the hacks. You should add md driver to kerneles that have
216 MFS_ROOT, et al. See GENERIC or LINT for details.
219 The ep changed a while ago and can no longer be used with hard
220 wired addresses in the config file.
223 The bridge drivers for sound cards have been committed. Please
224 see LINT for instructions for your card, if it still works at
228 Gcc 2.95.2 is now the default compiler.
231 /etc/radius.conf file format has changed.The format change is
232 as follows. Each server line in the file should now begin
233 with a new field containing either "auth" for RADIUS
234 authentication, or "acct" for RADIUS accounting. Formerly
235 only authentication was supported. If the first field isn't
236 "auth" or "acct" then the code assumes that "auth" is
237 intended. (That's the compatibility hack.)
240 PCCARD has been updated to attach pcic to the isa bus. Therefore
241 you will need to modify kernel config files that have pcic/card
243 controller pcic0 at isa?
244 controller pcic1 at isa?
248 The sigset_t datatype has been changed from an integral type
249 to a compound type and can hold 128 signals. Syscalls directly
250 or indirectly using the new sigset_t have been added as to
251 maintain compatibility with existing binaries. A new kernel must
252 be made and installed and booted with before a make world can
255 ***************************************************************
256 RECOMPILE AND REINSTALL KERNEL BEFORE MAKEWORLD
257 ***************************************************************
260 New jail syscall format requires recompilation of jail(8) with
261 fresh headers installed (or a make world will do it for you).
264 Matt Dillon checked in many vm related things and sent a heads up
265 to -current urging caution and to report vm problems to him.
266 As of the 19th, no killer problems have been reported, but you
270 The new miibus has been added to the system. If you are using
271 the dm, rl, sf, sis, ste, tl, wb or xl drivers, you need to
272 add "controller miibus0" to your config file.
275 /var/cron/log has been moved to /var/log/cron to get all the
276 log files in one place.
279 tn3270 has been removed from the base system and added as a port.
282 User-visible TCP timers are now expressed in units of 1ms, instead
283 of 500ms, so if you've customized any timer values under
284 ``net.inet.tcp'', multiply them by 500 to preserve TCP's behavior.
287 RCS Id tags changed to FreeBSD. This will cause huge cvsup
291 On 28-May-1999 libreadline was upgraded from readline-2.2 to
292 readline-4.0. At that time the shared library major version
293 number was bumped from "3" to "4". It has been deemed that
294 the interface change between readline-2.2 and readline-4.0 was
295 not sufficient to warrant the version number bump.
297 Thus I have reverted it back to "3". You will need to perform
298 the below immediately before your next ``make world'':
300 ls -l libreadline.so.4
301 (if you have /usr/lib/libreadline.so.4)
302 mv libreadline.so.4 libreadline.so.3
304 ln -s libreadline.so.3 libreadline.so
307 Changes to the pccardd kernel interface require that you recompile
308 pccardd for new kernel.
311 The ipfw interface to the kernel has changed. You will need to
312 recompile ipfw programs for the new kernel.
315 The bpfilter device has been renamed to bpf. You will need to
316 change your config files in order to enable this in newer kernels.
319 src/contrib/sys/softupdates is moving to
320 src/sys/contrib/softupdates. Update your symbolic links/etc.
323 Major changes have been made to vinum and its interface. See
324 the man page (vinum(8)) for details. Look at the concat,
325 mirror and stripe commands, as well as the SIMPLIFIED
326 CONFIGURATION section.
329 Newsyslog.conf has had a minor, but potentially dangerous,
330 change to its username/group syntax. The old syntax was
331 user.group, while the new syntax is user:group.
334 Inetd wrapping default has changed. Please see the updated
335 man page for details.
338 Compaq Smart Raid driver committed as ida.
341 The second phase of syscons cleanup has happened. Some
342 functionality has been made optional. For details, see
343 http://www.freebsd.org/~yokota/sc_update-June.txt
344 Everyone will need to re-config(8) their kernels, but old
345 binaries will work with the new kernel.
348 IPFW uid/gid-based filtering support has been committed. This
349 breaks binary compatibility with previous copies of
350 ipfw(8). Any utilities using the ioctl()s of ipfw (especially
351 ipfw(8)) need to be recompiled with the newest headers
355 Inetd now wraps all stream-based services, including internals.
356 Syslog "severity" options are honoured. Installed syslog.conf
357 and hosts.allow should be checked.
360 Most of the problems with newbus have been corrected, but
361 it is still current and evolving.
363 libcam's ABI has changed. You must recompile the world and
364 any ports that use it.
367 Massive changes to SMP went into the tree that should speed
368 things up. However, if you experience problems with SMP
369 machines, you can back off to the PRE_SMP_VMSHARE tag in the
370 CVS repository (or run an MP kernel).
373 Pccardd and the pccard bus in general seem to be broken or
374 most people. Soren has patches to make it better for some,
375 but not all people. Work is underway to make it better for
379 new bus changes integrated into -current. Many problems were
380 initially reported, but most have been fixed. You'll need a
381 new config and to tweak your kernel config file the way that
382 GENERIC was tweaked. Keep a copy of your old kernel when
383 upgrading in case your new kernel doesn't work (and report the
384 breakage to current@freebsd.org).
386 As of 19990421 the remaining problems/quirks are
388 o sio no longer supports pnp nor pccard. This will be corrected,
389 but the new pccard code needs to be completed.
390 o Some of the sound drivers broke for some people. It seems
391 inconsistant as to who/what/when/where things broke.
392 o Duplicate device entries in your config do not work. Previously
393 they were silently ignored. psm0 seems to be the most common
394 duplicate choice, although some reports have come in from people
395 that wired their scsi disk entries.
396 o You must move the keyboard and mouse attachments from the
397 isa bus to the atkbdc bus. See GENERIC for details.
398 o Machines with multiple host-pci bridges (Intel 450NX) will not
399 probe the second pci bus.
400 o Some probe ordering may have changed, so device naming may change
401 with the new kernel. If you have multiple devices, please double
402 check to make sure they didn't move. This is especially true
403 for cards on different buses.
404 o The bus attachment for vga0 is always isa0 and never pci0 when
405 it is in fact a pci card. It is safe to ignore this.
406 o The format of the boot messages has changed (and is not
407 guaranteed to be constant for a while) so you may see this
408 in some shell scripts that diff dmesg from day to day as well
409 as scripts that parse dmesg output.
412 cc -aout sometimes has problems compiling with -g, remove -g
413 from those compilation units affected until this is corrected.
415 cc -aout has problems with producing some threaded libraries,
416 so make world -DWANT_AOUT is not functional at this time.
418 Since make world for a.out isn't functional, you cannot do
419 make aout-to-elf from a pre-egcs a.out system. To work around
420 this problem, make aout-to-elf using 3.1-stable first (or a
421 pre egcs -current) and then a simple make world will take you
422 the rest of the way with a -current source base.
425 Make -j works again for make world. As always, use it with
426 care, and be sure to try a make world w/o -j before reporting
427 problems (that is, know if the problem exists w/o -j before
428 reporting the problem with -j).
431 Note cc -aout, which had been broken since the conversion to
432 egcs, now supposedly works. If you have rebuilt things like
433 XFree86 a.out libraries, you should rebuild them again or
434 progams that use them, including netscape, will fail to work.
437 NOTE: New c++ compiler cannot be used with c++ binaries from
438 the old compiler and vice versa.
441 In recent days egcs has been imported into the tree. A number
442 of problems have been discussed in -current. Here is a highlight
443 of a few of the more common ones. With the exception of make
444 -j n, they have been claimed to have been fixed.
446 c++ is broken after make world: This is correct. Because we
447 changed compilers two make worlds are necessary to get C++
448 working again. The code generated by the old compiler and new
449 compiler are not compatible, so things wind up being
452 cpp is broken in make world: There was a window where cpp
453 would be built incorrectly. The fix for this is
454 cd src/gnu/usr.bin/cc
458 and this should correct your problems. See the -current
459 archives for a version of this that does moer cleaning.
461 Make -j n doesn't work. Work contiunes to make this work,
462 I've seen no reports of success as of April 7th.
465 Previously, one would define "NOAOUT" to keep from building
466 the legacy a.out bits. Now one would define "WANT_AOUT" to
470 The name of the old wd.c and atapi.c based CDROM driver has
471 been changed back to wcd. So update your config file to use
472 "device wcd" instead of "device acd".
475 For those of you using the VN device as a loadable module,
476 please be aware that the new VN device has been committed to
477 -4.x and cannot yet be used as a loadable module. This will
478 be fixed in the future.
481 New loader.rc mechanism. Please see src/sys/boot/README for
485 struct proc size changed. Recompile kernel and the
486 usual suspects. Make world if in doubt.
489 The nlpt driver has changed names back to be the lpt driver.
490 See ppbus(4) or http://www.freebsd.org/~nsouch/ppbus.html
491 for proper configuration details.
494 The 'lpt' driver is now obsolete. Replace it with the 'nlpt'
495 driver and 'ppbus' controller combination.
498 New devstat API requires recompilation of libdevstat, systat,
499 iostat, vmstat and rpc.rstatd. A new kernel is also required.
500 make world + building a kernel should do all of this. Any
501 ports that use devstat need to be recompiled as well.
504 Linux threads options has gone away (they are now standard in
505 the FreeBSD kernel). A recompile of all libkvm using programs
506 is in order (or better yet a make world).
509 On or about this date there was a small window when the boot
510 blocks had some minor problems which seemed to force one to
511 edit /etc/fstab. This has been corrected, if you are seeing this
512 problem, please rebuild and reinstall your boot blocks.
515 Vinum has changed. The "vinum read" command has changed. For
518 http://www.freebsd.org/cgi/getmsg.cgi?fetch=800363+0+current/freebsd-current
522 Matt Dillon committed a boatload of VM changes, for
523 information please see
525 http://www.freebsd.org/cgi/getmsg.cgi?fetch=886676+0+current/freebsd-current
527 http://www.freebsd.org/cgi/getmsg.cgi?fetch=827400+0+current/freebsd-current
529 for details. These changes will likely not impact anybody,
530 but large chagnes to the VM need at least a heads up.
533 Stable branch created. You might want to consider using this
534 branch. It is tagged with RELENG_3.
537 More work on the syscons driver has been committed. Since
538 files moved around, you will need to reconfigure your kernel,
539 and make clean; make depend before rebuilding the kernel. No
540 config file changes are needed.
543 New keyboard and video card drivers are introduced as the first
544 stage of console driver reorganization. You are required to
545 update the kernel configuration file and rebuild the kernel.
546 kbdcontrol, vidcontrol, and screen savers also need recompilation.
547 The instruction can be found in
549 http://www.freebsd.org/~yokota/sc_update.txt
551 It has notes on splash screen too.
554 Robert Nordier was kind enough to make this page to enable people to
555 install the new bootblocks:
557 http://www.freebsd.org/~rnordier/boot.txt
559 When updating to ELF, make sure that you have updated your
560 /etc/rc files which have different ldconfig invocations for
561 elf and aout. Otherwise things like X will stop working with
562 messages about being unable to find library files. The
563 mergemaster utility in ports/sysutils/mergemaster helps to
564 keep critical files like this in sync, and its use is
568 Information about ELF day (see 19981230) can be found in
570 http://www.freebsd.org/~peter/elfday.html
572 about the upcoming change, its motivations and instructions
573 for doing the upgrade.
576 You should install new bootblocks now. The ELF kernel will
577 become default soon. In addition, you'll need to upgrade
578 your userland programs to ELF before then as well. Use
579 make aout-to-elf to upgrade your userland programs (old
580 a.out programs in, for example, /usr/local/bin will
581 continue to work, even after the upgrade). See src/Makefile
585 The old wcd driver has been deleted from the kernel. The
586 driver that replaces it is named acd. You'll need to change
587 this in your configuration files.
589 Failure to do this will result in "ATAPI CD-ROMs not
590 configured" at boot time.
592 The floppy tape driver (ft) has been removed from the kernel,
593 with no replacement driver.
596 New groups from 19981201 commented out of mtree, so they
597 aren't strictly needed, but still a good idea to have.
600 New user/group added: bind. From src/etc/master.passwd and
602 % grep <newstuff> /usr/src/etc/group
604 % grep <newstuff> /usr/src/etc/master.passwd
605 tty:*:4:65533::0:0:Tty Sandbox:/:/sbin/nologin
606 kmem:*:5:65533::0:0:KMem Sandbox:/:/sbin/nologin
607 bind:*:53:53::0:0:Bind Sandbox:/:/sbin/nologin
610 PAM integrated into the tree. Requires new /etc/pam.conf file
611 to silence warnings from authentication programs (login, etc).
612 See src/etc/pam.conf for a sample.
618 Update config, genassym and go:
619 cd src/usr.bin/genassym
620 make depend all install clean
621 cd ../../usr.sbin/config
622 make depend all install clean
623 cd ../../sys/i386/conf
624 config YOUR_KERNEL_HERE
625 cd ../../compile/YOUR_KERNEL_HERE
629 To rebuild disk /dev entries
630 ----------------------------
632 MAKEDEV should be copied from src/etc/MAKEDEV to /dev before
633 starting the following:
635 For N in the list of disks
637 for M in the list of slices
638 MAKEDEV NsMa # eg ad0s1a
641 To rebuild everything
642 ---------------------
645 Except when it doesn't work.
647 To update from 3.x to 4.0 stable
648 --------------------------------
653 <follow directions to build/install a kernel>
654 <follow rebuild disk /dev entries above> [*]
658 make -DNOINFO installworld
661 [*] You may need to switch from wd to ad ala 19991210
666 This file contains a list, in reverse chronologocal order, of major
667 breakages in tracking -current. Not all things will be listed here,
668 and it only starts on November 18, 1998. If you have an earlier
669 version of FreeBSD, you are on your own to get to November 18, 1998.
671 Please filter your entries through Warner Losh (imp@village.org) so
672 that the style, formatting, etc of this file can be maintained.