summaryrefslogtreecommitdiff
path: root/sys/arch/i386/stand
diff options
context:
space:
mode:
authorTheo de Raadt <deraadt@cvs.openbsd.org>2007-05-29 00:03:14 +0000
committerTheo de Raadt <deraadt@cvs.openbsd.org>2007-05-29 00:03:14 +0000
commitc1f29978c6a9c09ae0accd6243fba6843793fc19 (patch)
treebdd786a8f16ee123595bd836f30f9011faab2caf /sys/arch/i386/stand
parent346f6a0569d7724812f218fac3414d8df48cc87e (diff)
remove support for many alternative kernel choices -- only try /bsd and
not the other stupid names. that feature was retarded. tested on a few architectures by a few people
Diffstat (limited to 'sys/arch/i386/stand')
-rw-r--r--sys/arch/i386/stand/boot/boot.811
-rw-r--r--sys/arch/i386/stand/cdboot/Makefile5
-rw-r--r--sys/arch/i386/stand/cdboot/cdboot.c125
3 files changed, 6 insertions, 135 deletions
diff --git a/sys/arch/i386/stand/boot/boot.8 b/sys/arch/i386/stand/boot/boot.8
index fccd421c520..f4880c457ee 100644
--- a/sys/arch/i386/stand/boot/boot.8
+++ b/sys/arch/i386/stand/boot/boot.8
@@ -1,4 +1,4 @@
-.\" $OpenBSD: boot.8,v 1.45 2007/04/27 10:08:34 tom Exp $
+.\" $OpenBSD: boot.8,v 1.46 2007/05/29 00:03:10 deraadt Exp $
.\"
.\" Copyright (c) 1997-2001 Michael Shalayeff
.\" All rights reserved.
@@ -135,13 +135,8 @@ By default,
.Nm
attempts to load the kernel executable
.Pa /bsd .
-If that fails, it will attempt to load
-.Pa /obsd
-and then
-.Pa /bsd.old .
-If it fails to find any of these files,
-and no alternative kernel image has been specified,
-the system will be unable to boot.
+If it fails to find the kernel and no alternative kernel image has
+been specified, the system will be unable to boot.
.Sh COMMANDS
The following commands are accepted at the
.Nm
diff --git a/sys/arch/i386/stand/cdboot/Makefile b/sys/arch/i386/stand/cdboot/Makefile
index 108f6dcf13c..5e2e9b82ac0 100644
--- a/sys/arch/i386/stand/cdboot/Makefile
+++ b/sys/arch/i386/stand/cdboot/Makefile
@@ -1,4 +1,4 @@
-# $OpenBSD: Makefile,v 1.4 2005/07/30 14:32:46 millert Exp $
+# $OpenBSD: Makefile,v 1.5 2007/05/29 00:03:10 deraadt Exp $
.include "${.CURDIR}/../Makefile.inc"
@@ -15,7 +15,7 @@ LDFLAGS+=-Ttext $(LINKADDR) -N -x -noinhibit-exec
CLEANFILES+= crt0.o
SRCS= srt0.S
-SRCS+= cdboot.c cmd.c vars.c bootarg.c conf.c
+SRCS+= boot.c cmd.c vars.c bootarg.c conf.c
S =${.CURDIR}/../../../..
SADIR= ${.CURDIR}/..
@@ -43,5 +43,6 @@ CPPFLAGS+=-DBOOTMAGIC=$(BOOTMAGIC) ${DEBUGFLAGS}
CPPFLAGS+=-DLINKADDR=${LINKADDR}
CFLAGS+=${SACFLAGS} -D__INTERNAL_LIBSA_CREAD
CFLAGS+=-DOSREV=\"${OSREV}\" -DMACHINE=\"${MACHINE}\"
+CFLAGS+=-DKERNEL=\"/${OSREV}/${MACHINE}/bsd.rd\"
#AFLAGS+=-Wa,-R
# AFLAGS+=-Wa,-a
diff --git a/sys/arch/i386/stand/cdboot/cdboot.c b/sys/arch/i386/stand/cdboot/cdboot.c
deleted file mode 100644
index 8b1f2e91f4f..00000000000
--- a/sys/arch/i386/stand/cdboot/cdboot.c
+++ /dev/null
@@ -1,125 +0,0 @@
-/* $OpenBSD: cdboot.c,v 1.1 2004/08/24 15:28:41 tom Exp $ */
-
-/*
- * Copyright (c) 2003 Dale Rahn
- * Copyright (c) 1997,1998 Michael Shalayeff
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- */
-
-#include <sys/param.h>
-#include <sys/reboot.h>
-#include <sys/stat.h>
-#include <libsa.h>
-#include <lib/libsa/loadfile.h>
-#include <lib/libkern/funcs.h>
-
-#include "../../../../stand/boot/cmd.h"
-
-static const char *const kernels[] = {
- "/" OSREV "/" MACHINE "/bsd.rd",
- "/bsd",
- "/obsd",
- "/bsd.old",
- NULL
-};
-
-char prog_ident[40];
-char *progname = "BOOT";
-
-extern const char version[];
-struct cmd_state cmd;
-
-/* bootprompt can be set by MD code to avoid prompt first time round */
-int bootprompt = 1;
-
-void
-boot(dev_t bootdev)
-{
- const char *bootfile = kernels[0];
- int i = 0, try = 0, st;
- u_long marks[MARK_MAX];
-
- machdep();
-
- snprintf(prog_ident, sizeof(prog_ident),
- ">> OpenBSD/" MACHINE " %s %s", progname, version);
- printf("%s\n", prog_ident);
-
- devboot(bootdev, cmd.bootdev);
- strlcpy(cmd.image, bootfile, sizeof(cmd.image));
- cmd.boothowto = 0;
- cmd.conf = "/etc/boot.conf";
- cmd.addr = (void *)DEFAULT_KERNEL_ADDRESS;
- cmd.timeout = 5;
-
- st = read_conf();
- if (!bootprompt)
- snprintf(cmd.path, sizeof cmd.path, "%s:%s",
- cmd.bootdev, cmd.image);
-
- while (1) {
- /* no boot.conf, or no boot cmd in there */
- if (bootprompt && st <= 0)
- do {
- printf("boot> ");
- } while(!getcmd());
- st = 0;
- bootprompt = 1; /* allow reselect should we fail */
-
- printf("booting %s: ", cmd.path);
- marks[MARK_START] = (u_long)cmd.addr;
- if (loadfile(cmd.path, marks, LOAD_ALL) >= 0)
- break;
-
- if (kernels[++i] == NULL) {
- try += 1;
- bootfile = kernels[i=0];
- } else
- bootfile = kernels[i];
- strlcpy(cmd.image, bootfile, sizeof(cmd.image));
- printf(" failed(%d). will try %s\n", errno, bootfile);
-
- if (try < 2) {
- if (cmd.timeout > 0)
- cmd.timeout++;
- } else {
- if (cmd.timeout)
- printf("Turning timeout off.\n");
- cmd.timeout = 0;
- }
- }
-
- /* exec */
- run_loadfile(marks, cmd.boothowto);
-}
-
-#ifdef _TEST
-int
-main()
-{
- boot(0);
- return 0;
-}
-#endif