9.2 Boot Problem
Chris H
bsd-lists at bsdforge.com
Wed Apr 9 22:59:57 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.
This might be too simple-minded. But I can't see any reason you couldn't
simply move all the /boot/*.4th files to say /boot/*4th.92 and say,
/boot/menu.rc to /boot/menu.rc.92 and /boot/loader.rc to /boot/loader.rc.92
Then simply copy the equivalents from the 9.1, or better the 9.0 CD/DVD
to /boot and see if that doesn't give it to you. It'd also better help
isolate the actual /cause/ if nothing else.
--Chris
>
>
>
>
More information about the freebsd-stable
mailing list