diff options
author | joerg <joerg@FreeBSD.org> | 1995-06-25 14:02:57 +0000 |
---|---|---|
committer | joerg <joerg@FreeBSD.org> | 1995-06-25 14:02:57 +0000 |
commit | c54e2295b7f2db09802e0bc1874072840e4d75f7 (patch) | |
tree | 11d2af9626479eeb2779d418af536370d62162a8 /sys/i386/boot/biosboot/boot.c | |
parent | adeb3e01da6a734bd8cba36acb8160a633948c35 (diff) | |
download | FreeBSD-src-c54e2295b7f2db09802e0bc1874072840e4d75f7.zip FreeBSD-src-c54e2295b7f2db09802e0bc1874072840e4d75f7.tar.gz |
Reset defaults in case of boot() is looping several times (e.g. the
user has entered a bogus kernel name in the first place).
Also fix the broken #ifdef FORCE_COMCONSOLE, it has been disabled by
accident. (NB: the keyboard probe remains disabled however.)
Few cosmetic fixes (declare functions to be void instead of int),
while i've been at this.
Pointed out by: wosch@cs.tu-berlin.de (Wolfram Schneider), for the init bug
Diffstat (limited to 'sys/i386/boot/biosboot/boot.c')
-rw-r--r-- | sys/i386/boot/biosboot/boot.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/sys/i386/boot/biosboot/boot.c b/sys/i386/boot/biosboot/boot.c index 723a829..c4e7b85 100644 --- a/sys/i386/boot/biosboot/boot.c +++ b/sys/i386/boot/biosboot/boot.c @@ -24,7 +24,7 @@ * the rights to redistribute these changes. * * from: Mach, [92/04/03 16:51:14 rvb] - * $Id: boot.c,v 1.43.2.1 1995/05/31 21:42:38 jkh Exp $ + * $Id: boot.c,v 1.44 1995/06/11 19:31:10 rgrimes Exp $ */ @@ -74,21 +74,20 @@ void boot(int drive) { int ret; - char *t; -#if 0 #ifndef FORCE_COMCONSOLE +#ifdef notyet if (probe_keyboard()) { init_serial(); loadflags |= RB_SERIAL; printf("\nNo keyboard found."); } -#else +#endif /* notyet */ +#else /* FORCE_COMCONSOLE */ init_serial(); loadflags |= RB_SERIAL; printf("\nSerial console forced."); -#endif -#endif +#endif /* FORCE_COMCONSOLE */ /* Pick up the story from the Bios on geometry of disks */ @@ -125,6 +124,8 @@ loadstart: ouraddr, bootinfo.bi_basemem, bootinfo.bi_extmem, devs[maj], unit, name); + name = dflname; /* re-initialize in case of loop */ + loadflags &= RB_SERIAL; /* clear all, but leave serial console */ getbootdev(namebuf, &loadflags); ret = openrd(); if (ret != 0) { |