Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 6 Dec 2000 20:39:39 -0800 (PST)
From:      Matt Dillon <dillon@earth.backplane.com>
To:        freebsd-stable@FreeBSD.ORG, freebsd-hackers@FreeBSD.ORG
Subject:   Re: More on BTX halted / crashes trying to use -stable /boot/loader
Message-ID:  <200012070439.eB74ddE69221@earth.backplane.com>
References:   <200012070203.eB7231C44996@earth.backplane.com>

next in thread | previous in thread | raw e-mail | index | archive | help
    Ah ha!  I think I found the culprit, but I'm not sure exactly where
    in the tftp code the problem is occuring.

    I have been setting LOADER_TFTP_SUPPORT in /etc/make.conf so my pxeboot
    file uses tftp to get the kernel rather then NFS (since NFS appears to
    only be able to get [rootfs]:/kernel, which is the wrong kernel for a
    diskless boot).

    The option works wonderfully for /boot/pxeboot.  But it turns out
    that the normal /boot/loader, when compiled with the above
    option, will crash horribly whenever it tries to open() a file and 
    can't find it in the UFS filesystem on disk... it falls through the
    filesystem list until it hits the tftp FS and BEWM.  Explosion.

    I sure would appreciate it if one of the bootstrap gurus could take 
    a look at what happens when the tftp open routine is called from a 
    normal disk-based /boot/loader!

						-Matt


:    I've experimented a bit more.  If I do an installworld and reboot,
:    the machine crashes in one of two ways (randomly):
:
:    #1 Crashes with a BTX error
:
:	int 5 err 0 efl 00010206 eip 00000012
:	eax 00000039 ebx 00023920 ecx 00023934 edx 00000000
:	esi 00000000 edi 0000000c ebp 000943c8 esp 000943cc
:	cs 002b ds 0033 es 0033 fs 0033 gs 0033 ss 0033
:	cs:eip  62 00 00 00 e8 05 04 00 00 90 31 c0 cd 30 58 01
:	ss:esp  1c 8a 01 00 00 00 00 00 6c 44 09 00 1a 00 00 00
:
:    #2 Loader has all sorts of 'can't find file BLAH' errors, stack undeflow
:    errors, and winds up at an 'ok ' prompt.
:
:    Trying to run commands from the prompt sometimes work, sometimes return
:    a 'stack underflow' error.
:
:    --
:
:    That's with the latest -stable /boot/loader.
:
:    If I take that machine and net-boot it, then mount / and copy a
:    /boot/loader from March 20th, then reboot the machine, the machine
:    now boots just fine.
:
:    If I put the -stable /boot/loader back into /boot, the machine dies.
:    If I put the March 20th /boot/loader in, the machine boots just fine.
:
:    Anybody have any ideas?  What happened to /boot/loader between March
:    and now?  I am at a loss.
:
:    -r-xr-xr-x   1 root  wheel  163840 Dec  6 17:33 loader.NEW
:    -r-xr-xr-x   1 root  wheel  143360 Dec  6 17:47 loader.OLD
:
:						-Matt


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200012070439.eB74ddE69221>