How to use newconfig patch
Last update: $Date: 1999/08/11 14:57:29 $
This patch is intended for testing only. The kernel with this patch can be
compiled and booted in the 4.0-current or 3.1-RELEASE system, but has some
- If you are using 3.1-RELEASE system, because of changes in 4.0-current
you have to install new /boot.
And cannot use the `ps' command in 3.1-RELEASE.
- ATAPI devices are not supported.
- Supported SCSI cards are limited. Only several SCSI devices are
tested. Also CAM has not been rewritten in newconfig.
- Device supported are still very limited. Please see
device list for details.
- Alpha is not supported.
- You cannot use UserConfig.
- Some commands cannot be used (e.g. dset), and some works with limited
functionality (e.g. vmstat).
- There are probably many more undiscovered problems.
How to make newconfig kernel
When first time you boot with newconfig kernel, booting in single user
mode is recommended.
When you use SCSI system, you will get some messages like,
- Have a working FreeBSD 4.0-current or FreeBSD 3.1-RELEASE system.
We strongly suggest you to backup your data and also use of *latest*
- Prepare source codes of FreeBSD 4.0-current at the time of
990410 00:00:00 JST. You can get them from CVS repository or
- Extract source codes into /usr/src. You need /usr/src/sys
and /usr/src/include as a minimum.
Don't forget to make backups if you have any local changes.
If you use sys4c990410.tar.gz,
# cd /usr/src/
# mv sys sys.ORG
# mv include include.ORG
# tar xzvf somewhere/sys4c990410.tar.gz
- Get the patch kit. You can find the patch at
We strongly recommend use of *latest* patch kit.
- Apply the newconfig patch.
# cd /usr/src
# zcat somewhere/newconf_30_981225.diff.gz | patch -p1
Check if the patch has been applied correctly.
# find . -name '*.rej' -print
- Make config.new
# cd /usr/src/usr.sbin/config.new
# make install BINDIR=/usr/sbin
Do not forget to rehash if you use csh and friends.
- Edit your kernel configuration file for config.new.
Sample configuration files are:
/usr/src/sys/i386/conf/NEWCONF (for PC)
/usr/src/sys/pc98/conf/NEWCONF98 (for NEC PC98)
The syntax is different from that of conventional config,
so please refer to the supplied samples.
Note: You cannot use UserConfig with newconfig yet.
# cd /usr/src/i386/conf
# cp NEWCONF MYCONF
# vi MYCONF
- Invoke config.new
# config.new MYCONF
- Make kernel
# cd ../../compile/MYCONF
# make depend
- If you are using 3.1-RELEASE, install new /boot,
# cd /usr/src/sys/boot
# make install
If the compiler complains about -Os in /usr/src/sys/boot/i386/boot2
directory. Try to change the `-Os' option to `-O'.
- Copy the kernel into root directory with
another name and reboot.
We recommend you do not do 'make install', as it is dangerous to have
newconfig kernel as /kernel. For example:
# cd /usr/src/sys/compile/MYCONF
# cp kernel /kernel.newconf
(probe14:ncr0:0:15:0): COMMAND FAILED (6 ff) @0xf085de00.
but they are because of hard coding and can be safely ignored.
Copyright (C) 1998, 1999 The FreeBSD Project (Japan).
All rights reserved.
$Date: 1999/08/11 14:57:29 $