9.2 Boot Problem
Doug Hardie
bc979 at lafn.org
Wed Apr 9 22:48:06 UTC 2014
On 9 April 2014, at 15:15, <dteske at FreeBSD.org> wrote:
>
>
>> -----Original Message-----
>> From: Doug Hardie [mailto:bc979 at lafn.org]
>> Sent: Wednesday, April 9, 2014 3:09 PM
>> To: Chris H
>> Cc: dteske at FreeBSD.org; freebsd-stable at FreeBSD.org
>> Subject: Re: 9.2 Boot Problem
>>
>>
>> On 9 April 2014, at 14:40, "Chris H" <bsd-lists at bsdforge.com> wrote:
>>
>>>>
>>>>
>>>>> -----Original Message-----
>>>>> From: Chris H [mailto:bsd-lists at bsdforge.com]
>>>>> Sent: Wednesday, April 9, 2014 2:31 PM
>>>>> To: dteske at FreeBSD.org
>>>>> Cc: 'Doug Hardie'; freebsd-stable at FreeBSD.org
>>>>> Subject: RE: 9.2 Boot Problem
>>>>>
>>>>>>
>>>>>>
>>>>>>> -----Original Message-----
>>>>>>> From: Chris H [mailto:bsd-lists at bsdforge.com]
>>>>>>> Sent: Wednesday, April 9, 2014 2:03 PM
>>>>>>> To: Doug Hardie
>>>>>>> Cc: freebsd-stable at freebsd.org List
>>>>>>> Subject: Re: 9.2 Boot Problem
>>>>>>>
>>>>>>>>
>>>>>>>> On 9 April 2014, at 13:49, "Chris H" <bsd-lists at bsdforge.com>
> wrote:
>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On 9 April 2014, at 11:29, "Chris H" <bsd-lists at bsdforge.com>
>> wrote:
>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> On 4 April 2014, at 21:08, Doug Hardie <bc979 at lafn.org> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> I put this out on Questions, but got no responses. Hopefully
>>>>>>>>>>>>> someone here has some ideas.
>>>>>>>>>>>>>
>>>>>>>>>>>>> FreeBSD 9.2. All of my systems are hanging during boot
>>>>>>>>>>>>> right after the screen that has the picture. Its as if
>>>>>>>>>>>>> someone hit a space on the keyboard. However, these
>> systems
>>>>>>>>>>>>> have no
>>>>> keyboard.
>>>>>>>>>>>>> If I plug one in, or use the serial console, and enter a
>>>>>>>>>>>>> return, the boot continues properly.
>>>>>>>>>>>>>
>>>>>>>>>>>>> The boot menu is displayed along with Beastie. However, the
>>>>>>>>>>>>> line that says Autoboot in n seconds. never appears. It
>>>>>>>>>>>>> just stops there. These are all new installs from CD systems.
>>>>>>>>>>>>> I just used freebsd-update to take a toy server from 9.1 to
>>>>>>>>>>>>> 9.2 and it doesn't exhibit this behavior. It boots properly.
>>>>>>>>>>>>> I have updated one of the production servers with the latest
>>>>>>>>>>>>> 9.2 changes and it still has the issue. I first thought
>>>>>>>>>>>>> that some config file did not get updated properly on the
>>>>>>>>>>>>> CD. I have dug around through the 4th files and don't see
>>>>>>>>>>>>> anything obvious that would cause this. I have now verified
>>>>>>>>>>>>> that all the 4th files in boot are identical (except for the
>>>>>>>>>>>>> version number. They are slightly different). I don't
>>>>>>>>>>>>> believe this is a BIOS setting issue as FreeBSD 7.2 didn't
>>>>>>>>>>>>> exhibit this behavior. All
>>>>>>>>>>>>> 4
>>>>>>>>>>>>> systems are on totally different motherboards.
>>>>>>>>>>>>>
>>>>>>>>>>>>> I tried setting loader_logo="none" in /boot/config.rc and
>>>>>>>>>>>>> that eliminated the menu and Beastie. I think the system
>>>>>>>>>>>>> completed
>>>>>>> booting, but the serial console was then dead.
>>>>>>>>>>>>> It
>>>>>>>>>>>>> did not respond or output anything. I had to remove that
>>>>>>>>>>>>> and reboot to get the console back again.
>>>>>>>>>>>>>
>>>>>>>>>>>>> I need to get this fixed as these are production servers
>>>>>>>>>>>>> that are essentially unmanned so its difficult to get them
>>>>>>>>>>>>> back up
>>>>> again.
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> No response here either. Surely someone must know the
>> loader.
>>>>>>>>>>>> I
>>>>>>> have been digging
>>>>>>>>>>>> through
>>>>>>>>>>>> the code, and can't find any differences between the systems
>>>>>>>>>>>> that
>>>>>>> work and those that
>>>>>>>>>>>> don't.
>>>>>>>>>>>> Is there any way to debug this? Is there a way to find out
>>>>>>>>>>>> where the
>>>>>>> loader is sitting
>>>>>>>>>>>> waiting on input from the terminal. That might give a clue
>>>>>>>>>>>> as to why it
>>>>>>> didn't
>>>>>>>>>>>> autoboot.
>>>>>>>>>>>>
>>>>>>>>>>> OK. This is the first I've seen of your post. I'm not going to
>>>>>>>>>>> profess being an expert. But I might suggest adding the
>>>>>>>>>>> following to
>>>>>>>>>>> loader.conf(5)
>>>>>>>>>>>
>>>>>>>>>>> verbose_loading="YES"
>>>>>>>>>>> boot_verbose="YES"
>>>>>>>>>>>
>>>>>>>>>>> This raises the "noise level". Maybe that will help to provide
>>>>>>>>>>> you with a bit more information, as to what, or if, your
>>>>>>>>>>> booting. DO have a look through /boot/defaults/loader.conf for
>>>>>>>>>>> more hints, as to what, and
>>>>>>> how
>>>>>>>>>>> you can control the boot process. As well as
>> /etc/defaults/rc.conf.
>>>>>>>>>>> In fact, you can pre-decide what, and how, to boot. Even
>>>>>>>>>>> passing by the boot menu entirely.
>>>>>>>>>>
>>>>>>>>>> Thanks Chris. I did that and here is what I get:
>>>>>>>>>>
>>>>>>>>>> Rebooting...
>>>>>>>>>> cpu_reset: Stopping other CPUs
>>>>>>>>>> /boot.config: -Dh
>>>>>>>>>> Consoles: internal video/keyboard serial port BIOS drive A: is
>>>>>>>>>> disk0 BIOS drive C: is disk1 BIOS 640kB/2087360kB available
>>>>>>>>>> memory
>>>>>>>>>>
>>>>>>>>>> FreeBSD/x86 bootstrap loader, Revision 1.1 (doug at zool.lafn.org,
>>>>>>>>>> Tue Apr 8 20:30:20 PDT 2014) Loading
>>>>>>>>>> /boot/defaults/loader.conf
>>>>>>>>>> Warning: unable to open file /boot/loader.conf.local
>>>>>>>>>> /boot/kernel/kernel text=0xdb3171 data=0xf3c04+0xbb770
>>>>>>> syms=[0x4+0xeda80+0x4+0x1b8ebf]
>>>>>>>>>> zpool_cache...failed!
>>>>>>>>>> \
>>>>>>>>>> H[Esc]ape to loader prompt_ _____ _____
>>>>>>>>>> | ____| | _ \ / ____| __ \
>>>>>>>>>> | |___ _ __ ___ ___ | |_) | (___ | | | |
>>>>>>>>>> | ___| '__/ _ \/ _ \| _ < \___ \| | | |
>>>>>>>>>> | | | | | __/ __/| |_) |____) | |__| |
>>>>>>>>>> | | | | | | || | | |
>>>>>>>>>> |_| |_| \___|\___||____/|_____/|_____/ ```
> `
>>>>>>>>>> s`
> `.....---.......--.``` -/
>>>>>>>>>> + Welcome to FreeBSD + +o .--`
> /y:` +.
>>>>>>>>>> | | yo`:. :o
> `+-
>>>>>>>>>> | 1. Boot Multi User [Enter] | y/ 3;46H /
>>>>>>>>>> | 2.-- / |
>>>>>>>>>> | |
>>>>>>>>>> | 4. Reboot | `:
> :`
>>>>>>>>>> | | `:
> :`
>>>>>>>>>> | Options: /
> /
>>>>>>>>>> | 5. Configure Boot [O]ptions... .-
> -.
>>>>>>>>>> | --
> -.
>>>>>>>>>> | `:`
> `:`
>>>>>>>>>> | .--
> `--.
>>>>>>>>>> |
> .---.....----.
>>>>>>>>>> +-----------------------------------------+
>>>>>>>>>>
>>>>>>>>>> FreeBSD `Nakatomi
>>>>>>>>>> Socrates' 9.2
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Now it waits for a return. I have tried changing the logo,
>>>>>>>>>> setting the
>>>>>>> autoboot timeout
>>>>>>>>>> and
>>>>>>>>>> a couple others. The only thing that did anything different
>>>>>>>>>> was setting
>>>>>>> the logo to an
>>>>>>>>>> invalid value. Basically the console was dead after that, but
>>>>>>>>>> the system
>>>>>>> did boot. I
>>>>>>>>>> never
>>>>>>>>>> see the Auto Boot in n seconds message. Its also interesting
>>>>>>>>>> that the list
>>>>>>> of options
>>>>>>>>>> above
>>>>>>>>>> appears incomplete. On the working system, items 1 through 5
>>>>>>>>>> are all
>>>>>>> present. I have
>>>>>>>>>> now
>>>>>>>>>> checked all the cksum's for all the files in /boot and they are
>>>>>>>>>> all the
>>>>> same.
>>>>>>>>>>
>>>>>>>>> Hmmm. Looks like you're going to make me do all your research,
>>>>>>>>> for
>>>>> you.
>>>>>>> ;)
>>>>>>>>> You /did/ read the contents of /boot/defaults/loader.conf. Yes?
>>>>>>>>> I'm
>>>>>>> guessing
>>>>>>>>> that you've also already read loader.4th(8), and the other related
>> info.
>>>>>>>>> Now this is pure supposition; as it appears that you're looking
>>>>>>>>> for a serial console. I'd /speculate/ that you want to turn all
>>>>>>>>> that NASTY ANSI stuff
>>>>>>> OFF
>>>>>>>>> That's why your not seeing the complete menu -- hear that Devin!
>>>>>>>>> I'm going to post just this much for now, just to get you started.
>>>>>>>>> I know what else you need/are looking for. But need to find the
>>>>>>>>> /correct/ syntax
>>>>>>> --
>>>>>>>>> paraphrasing, just won't get it. :)\
>>>>>>>>
>>>>>>>> Setting loader_color="NO" (from man page) does give back the
> full
>>>>> menu.
>>>>>>> Still waits for
>>>>>>>> return after the version name. I haven't found in the forth
>>>>>>>> where it is
>>>>>>> reading the
>>>>>>>> keyboard. Yes, I have to use a serial console. These machines
>>>>>>>> are about
>>>>>>> 100 miles away.
>>>>>>>> Something is stopping the autoboot from even starting.
>>>>>>>
>>>>>>> See my reply to this. I think I've given you the hints you need --
>>>>>>> fingers crossed. :)
>>>>>>>
>>>>>>
>>>>>> He's using console=comconsole (serial boot).
>>>>>> When that is the case, loader_color is automatically set to NO.
>>>>>> There's no reason to set both loader_color=NO and console=
>> comconsole.
>>>>>> The code that does this is here:
>>>>>>
>>>>>>
>>>>>
>> https://urldefense.proofpoint.com/v1/url?u=http://svnweb.freebsd.org
>>>>> /b
>>>>>>
>>>>>
>> ase/release/9.2.0/sys/boot/forth/color.4th?revision%3D255898%26view%
>>>>> 3D
>>>>>>
>>>>>
>> markup&k=%2FbkpAUdJWZuiTILCq%2FFnQg%3D%3D%0A&r=Mrjs6vR4%2Faj
>>>>> 2Ns9%2FssH
>>>>>>
>>>>>
>> Jjg%3D%3D%0A&m=Sb5WGVC5%2BWtjRcyJpnVxPn6RX4sdiUdLbrbhmjen5T
>>>>> k%3D%0A&s=7
>>>>>> 093c40428c7d3ff090a2b2ecf2383b6f8eb570b313f498f1e5fdd1af84c3103
>>>>>> Line 48 within the loader_color? function:
>>>>>> boot_serial? if FALSE else TRUE then
>>>>>>
>>>>>> As for answering the quandary of where the keyboard is polled
>>>>>> during the timeout countdown, that's the getkey function in here:
>>>>>>
>>>>>>
>>>>>
>> https://urldefense.proofpoint.com/v1/url?u=http://svnweb.freebsd.org
>>>>> /b
>>>>>>
>>>>>
>> ase/release/9.2.0/sys/boot/forth/menu.4th?revision%3D255898%26view%3
>>>>> Dm
>>>>>>
>>>>>
>> arkup&k=%2FbkpAUdJWZuiTILCq%2FFnQg%3D%3D%0A&r=Mrjs6vR4%2Faj2
>>>>> Ns9%2FssHJ
>>>>>>
>>>>>
>> jg%3D%3D%0A&m=Sb5WGVC5%2BWtjRcyJpnVxPn6RX4sdiUdLbrbhmjen5Tk
>>>>> %3D%0A&s=54
>>>>>> b92411337a79a77d0308c0f50c147845f246a911bd6b888aa3f6a08c3299b6
>>>>>
>>>>> Hi Devin. I was hoping you'd join the conversation. :) I
>>>>> /personally/ didn't suggest that he issue both color=NO /and/
>> boot_serial.
>>>>> In fact, I only suggested using loader_logo="beastiebw" as that's
>>>>> how I managed to /finally/ get a usable boot menu, when I first
>>>>> attempted to use/install 9.2. I'd have written a pr(1). But as the
>>>>> /whole/ experience was new -- hardware /and/ 9.2. I just wrote it
>>>>> off. But now I suspect that there may be more to it.
>>>>>
>>>>> Thanks for chiming in.
>>>>>
>>>>
>>>> Just for clarification... do I need to debug a broken feature?
>>>> Do we know what combination causes boot to hang?
>>>
>>> I think we're still "debugging" it. I see no indication he's got a
>>> /normally/ functioning boot, yet.
>>
>> The only thing not functioning is autoboot. It stops and no visible
> autoboot
>> message is displayed. Entering a return resumes the boot and all is fine
> after
>> that. The autoboot message may be displayed and then immediately
>> removed. It appeared that might be the case once, but haven't been able
> to
>> capture that as the system clears the line immediately. Most of the time
> the
>> flash is not visible. Once it was, but was gone before I could read it.
>>
>> Note, I have 4 systems exhibiting this behavior and one that is not. The
> 4
>> with the problem were upgraded from 9.1 and probably through several RCs
>> and then to 9.2. The working one was a new install.
>>
>> I have not been able to find any differences in /boot between the working
>> and non-working systems.
>>
>
> You've looked at Forth files, but what about md5-comparison of the x86 boot
> sectors? (boot0, boot0sio, etc.)
>
> And also, the one thing that strikes me here is... the boot code that is
> written
> to the disk. This won't be updated through a general buildworld/installworld
> combo nor through a freebsd-update approach.
>
> Wondering if it's worth writing an updated bootcode to your boot part.
>
> I can't recall if I wrote the enhancements that appear in 9.2 *on* 9.2 or if
> (done often) I wrote them on a 9.0-R box and then re-tested on a 9.2.
> --
> Devin
I used:
gpart bootcode -b /boot/pmbr -p /boot/gptboot -i 1 ada0
and then rebooted the system. Same issue - hangs with no autoboot message.
More information about the freebsd-stable
mailing list