Date: Thu, 19 Nov 1998 11:02:00 +0200 (SAT) From: Robert Nordier <rnordier@nordier.com> To: gallatin@cs.duke.edu (Andrew Gallatin) Cc: freebsd-current@FreeBSD.ORG, adrian@ubergeeks.com Subject: Re: /boot/loader & comconsole Message-ID: <199811190902.LAA03790@ceia.nordier.com> In-Reply-To: <13907.20799.296610.678439@grasshopper.cs.duke.edu> from Andrew Gallatin at "Nov 18, 98 06:25:36 pm"
next in thread | previous in thread | raw e-mail | index | archive | help
[I see Adrian has already responded to this, so I've added him to the cc list.] Andrew Gallatin wrote: > I'm in the process of upgrading a cluster of (nearly identical) PII's > to 3.0-CURRENT & am installing the new 3-stage bootstrap. On some of > the machines, using a comconsole wedges the bootloader solid ( well, > 2 ctrl-alt-deletes on the local keyboard will reboot the machine). > > My /boot.config looks like: > /boot/loader -h > > And /boot/boot.conf looks like: > set console=comconsole > autoboot 3 There seem to be two separate, and possibly unrelated issues, here. The first is that the *old* boot blocks are still being used, as shown by the actual messages displayed: > I see the following on console before it hangs: > > >> FreeBSD BOOT @ 0x10000: 638/65532 k of memory, serial console [ ... ] The corresponding line, for the new boot blocks, is simply >> FreeBSD/i386 BOOT Installing the new boot blocks at this stage is probably a good idea (and I think this was your intention), so you'll need to do a disklabel -B -b /boot/boot1 -s /boot/boot2 <slice> (as disklabel still installs from /usr/mdec rather than /boot by default). The whole boot issue is rather confused at the moment, so for anyone trying to follow this: "old boot blocks" : /sys/i386/boot/biosboot (install to /usr/mdec) "new boot blocks" : /sys/boot/i386/boot2 (install to /boot) "boot loader" : /sys/boot/i386/loader (install to /boot) > Boot default: 0:da(0,a)/boot/loader > Usage: bios_drive:interface(unit,partition)kernel_name options > <..snip..> > boot: > Booting 0:da(0,a)/boot/loader @ 0x100000 > text=0x1000 data=0x1a000 bss=0x0 symbols=[+0x0+0x4+0x0+0x4+0xff8c] > Can't find file /boot/loader.config > total=0x12af94 entry point=0x100000 > <wedge> > > And there it stops. If I don't set console=comconsole, everything > works great. One difference between boot loader and the old/new boot blocks, is that boot loader uses PC BIOS services (int 0x14) for comms; both lots of boot blocks do direct port I/O, instead. The trouble with using the BIOS is that the int 0x14 services (which tend to be used only to talk to serial printers under DOS) expect to do hardware handshaking. They therefore impose fussier cabling requirements than the boot blocks or the kernel have. (They don't work with the sloppy 2-wire, 9-pin null modem cables I have here, for instance.) [...] > The old bootstrap has no problem with a serial console on this box, > nor does any FreeBSD kernel I've ever used on these machines. The odd > thing is that of the 8 nearly identical machines I upgraded today, > only 2 had this problem. If your cables aren't identical, you might try swapping those and see if there's a difference. (FWIW, the wedge you're getting is just what I get myself, unless I use a better cable for boot loader.) > These machines are Dell Dimensions, all off the same pallette. I've > appended boot -v messages from the latest a.out kernel I had handy: > > Thanks for any help you can provide, Thanks for the feedback, and let us know how you go. If necessary, I can do some patches to get boot loader using the boot blocks serial routines, which may be a good idea anyway. -- Robert Nordier To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199811190902.LAA03790>