diff options
author | bde <bde@FreeBSD.org> | 1999-04-15 14:52:24 +0000 |
---|---|---|
committer | bde <bde@FreeBSD.org> | 1999-04-15 14:52:24 +0000 |
commit | 2633265e241ab13d0313291561267bfc28dd3843 (patch) | |
tree | aeb0a16c9a60d1ad5ac74ccf23138f43713c332d /sys/i386 | |
parent | 6087319c1f2e21cdaf71f0f1b250d9426ca83720 (diff) | |
download | FreeBSD-src-2633265e241ab13d0313291561267bfc28dd3843.zip FreeBSD-src-2633265e241ab13d0313291561267bfc28dd3843.tar.gz |
Made booting with -a work for all configurations. Previously it
only worked for configurations with "swap on generic".
usr.sbin/config/config.y:
- ignore all "swap [on] device ...' specifications except for
warning about them. They haven't done anything related to swap
for almost 4 years, and were previously silently ignored,
except for "swap on generic" which stopped swap${KERNEL}.c
from being generated. Code to support swapping is now deader
than before.
usr.sbin/config/mkswapconf.c:
- don't generate a dummy setconf() function in swap${KERNEL}.c.
sys/i386/conf/files.i386:
- swapgeneric.c is now standard. It should be merged into autoconf.c
so that it doesn't conflict with swap${KERNEL}.c for kernels named
"generic".
sys/i386/i386/autoconf.c:
- don't call setroot() for mfs roots. Since setroot() doesn't do anything
harmful, this was just a waste of time, except possibly for booting with
-a it may have helped prevent an undesireable call to setconf() by
finding a bogus rootdev.
- honor -a for ffs roots. -a now overrides all other ways of specifying
the root device. Previously, -r had precedence over -a, and the -a
handling was usually a no-op.
- don't honor -a for non-ffs roots, since it would currently just get in
the way of a clean panic.
sys/i386/i386/swapgeneric.c:
- don't declare things that are now always declared in swap${KERNEL}.c.
Don't decide things that are now decided in autoconf.c. Code to
support the "generic" case is now dead instead of useless.
Diffstat (limited to 'sys/i386')
-rw-r--r-- | sys/i386/conf/Makefile.i386 | 4 | ||||
-rw-r--r-- | sys/i386/conf/files.i386 | 3 | ||||
-rw-r--r-- | sys/i386/i386/autoconf.c | 30 | ||||
-rw-r--r-- | sys/i386/i386/swapgeneric.c | 6 |
4 files changed, 11 insertions, 32 deletions
diff --git a/sys/i386/conf/Makefile.i386 b/sys/i386/conf/Makefile.i386 index d15c2bf..9c9ba23 100644 --- a/sys/i386/conf/Makefile.i386 +++ b/sys/i386/conf/Makefile.i386 @@ -1,7 +1,7 @@ # Makefile.i386 -- with config changes. # Copyright 1990 W. Jolitz # from: @(#)Makefile.i386 7.1 5/10/91 -# $Id: Makefile.i386,v 1.143 1999/04/11 03:40:10 grog Exp $ +# $Id: Makefile.i386,v 1.144 1999/04/13 18:25:08 peter Exp $ # # Makefile for FreeBSD # @@ -17,7 +17,7 @@ # # Which version of config(8) is required. -%VERSREQ= 300011 +%VERSREQ= 300012 KERNFORMAT?= elf diff --git a/sys/i386/conf/files.i386 b/sys/i386/conf/files.i386 index 76a745f..81f360e 100644 --- a/sys/i386/conf/files.i386 +++ b/sys/i386/conf/files.i386 @@ -1,7 +1,7 @@ # This file tells config what files go into building a kernel, # files marked standard are always included. # -# $Id: files.i386,v 1.233 1999/04/07 03:55:36 msmith Exp $ +# $Id: files.i386,v 1.234 1999/04/13 19:38:10 peter Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -96,6 +96,7 @@ i386/i386/pmap.c standard i386/i386/procfs_machdep.c standard i386/i386/simplelock.s optional smp i386/i386/support.s standard +i386/i386/swapgeneric.c standard i386/i386/swtch.s standard i386/i386/sys_machdep.c standard i386/i386/trap.c standard diff --git a/sys/i386/i386/autoconf.c b/sys/i386/i386/autoconf.c index 528e270..fc7ab85 100644 --- a/sys/i386/i386/autoconf.c +++ b/sys/i386/i386/autoconf.c @@ -34,7 +34,7 @@ * SUCH DAMAGE. * * from: @(#)autoconf.c 7.1 (Berkeley) 5/9/91 - * $Id: autoconf.c,v 1.110 1998/10/26 07:05:34 bde Exp $ + * $Id: autoconf.c,v 1.111 1999/01/19 00:10:59 peter Exp $ */ /* @@ -333,19 +333,9 @@ cpu_rootconf() if (!mountrootfsname) { if (bootverbose) printf("Considering MFS root f/s.\n"); - if (mfs_getimage()) { + if (mfs_getimage()) mountrootfsname = "mfs"; - /* - * Ignore the -a flag if this kernel isn't compiled - * with a generic root/swap configuration: if we skip - * setroot() and we aren't a generic kernel, chaos - * will ensue because setconf() will be a no-op. - * (rootdev is always initialized to NODEV in a - * generic configuration, so we test for that.) - */ - if ((boothowto & RB_ASKNAME) == 0 || rootdev != NODEV) - setroot(); - } else if (bootverbose) + else if (bootverbose) printf("No MFS image available as root f/s.\n"); } #endif @@ -370,15 +360,9 @@ cpu_rootconf() mountrootfsname = "ufs"; if (bootverbose) printf("Considering FFS root f/s.\n"); - /* - * Ignore the -a flag if this kernel isn't compiled - * with a generic root/swap configuration: if we skip - * setroot() and we aren't a generic kernel, chaos - * will ensue because setconf() will be a no-op. - * (rootdev is always initialized to NODEV in a - * generic configuration, so we test for that.) - */ - if ((boothowto & RB_ASKNAME) == 0 || rootdev != NODEV) + if (boothowto & RB_ASKNAME) + setconf(); + else setroot(); } #endif @@ -386,8 +370,6 @@ cpu_rootconf() if (!mountrootfsname) { panic("Nobody wants to mount my root for me"); } - - setconf(); } diff --git a/sys/i386/i386/swapgeneric.c b/sys/i386/i386/swapgeneric.c index c21120d..3353c5a 100644 --- a/sys/i386/i386/swapgeneric.c +++ b/sys/i386/i386/swapgeneric.c @@ -34,7 +34,7 @@ * SUCH DAMAGE. * * from: @(#)swapgeneric.c 5.5 (Berkeley) 5/9/91 - * $Id: swapgeneric.c,v 1.25 1998/10/25 19:26:18 bde Exp $ + * $Id: swapgeneric.c,v 1.26 1999/04/14 15:20:03 bde Exp $ */ #include <sys/param.h> @@ -60,8 +60,6 @@ /* * Generic configuration; all in one */ -dev_t rootdev = NODEV; -dev_t dumpdev = NODEV; void gets __P((char *)); @@ -99,8 +97,6 @@ void setconf(void) char *cp; int bd, unit; - if (rootdev != NODEV) - return; if (boothowto & RB_ASKNAME) { char name[128]; retry: |