Subject: Re: 1.6 miniroot won't boot
To: None <bouyer@antioche.lip6.fr, eeh@netbsd.org>
From: None <eeh@netbsd.org>
List: port-sparc64
Date: 06/07/2002 16:24:28
| On Fri, Jun 07, 2002 at 03:48:14PM -0000, eeh@netbsd.org wrote:
| > So you get the stack dump during the trace?  Neat!
| > 
| > | buf-read-file            
| > |
| > | and here it hangs.
| > 
| > I'm surpised debug isn't on in all the children as well.  Could you
| > try turning debug on in buf-read-file as well?
|
| Here it is:
| ok boot disk0:b -DV
| Boot device: /sbus/espdma@e,8400000/esp@e,8800000/sd@0,0:b  File and args: -DV
| The file just loaded does not appear to be executable.
| ok debug buf-read-file
| Stepper keys: <space> Down Up Continue Forth Go Help ? See $tring Quit
| ok " /ofwboot" do-boot
| NetBSD IEEE 1275 Bootblock
| Loading file /ofwboot
| from device /sbus@1f,0/espdma@e,8400000/esp@e,8800000/sd@0,0:b
| ufs-open complete
| .Looking for ofwboot in directory...
| : buf-read-file           ( 2 fffebca9 0 fffebca2 7 fff7bff0 )
| cur-offset                ( 2 fffebca9 0 fffebca2 7 fff7bff0 0 )
| swap                      ( 2 fffebca9 0 fffebca2 7 0 fff7bff0 )
| 2dup                      ( 2 fffebca9 0 fffebca2 7 0 fff7bff0 0 fff7bff0 )
| blkoff                    ( 2 fffebca9 0 fffebca2 7 0 fff7bff0 0 )
| -rot                      ( 2 fffebca9 0 fffebca2 7 0 0 fff7bff0 )
| 2dup                      ( 2 fffebca9 0 fffebca2 7 0 0 fff7bff0 0 fff7bff0 )
| lblkno                    ( 2 fffebca9 0 fffebca2 7 0 0 fff7bff0 0 )
| swap                      ( 2 fffebca9 0 fffebca2 7 0 0 0 fff7bff0 )
| 2dup                      ( 2 fffebca9 0 fffebca2 7 0 0 0 fff7bff0 0 fff7bff0 )
| cur-inode                 ( 2 fffebca9 0 fffebca2 7 0 0 0 fff7bff0 0 fff7bff0 fff73f60 )
| swap                      ( 2 fffebca9 0 fffebca2 7 0 0 0 fff7bff0 0 fff73f60 fff7bff0 )
| dblksize                  ( 2 fffebca9 0 fffebca2 7 0 0 0 fff7bff0 800 )
| rot                       ( 2 fffebca9 0 fffebca2 7 0 0 fff7bff0 800 0 )
| dup                       ( 2 fffebca9 0 fffebca2 7 0 0 fff7bff0 800 0 0 )
| cur-blockno               ( 2 fffebca9 0 fffebca2 7 0 0 fff7bff0 800 0 0 60 )
| l<>                       ( 2 fffebca9 0 fffebca2 7 0 0 fff7bff0 800 0 ffffffffffffffff )
| l->n                      ( 2 fffebca9 0 fffebca2 7 0 0 fff7bff0 800 0 ffffffffffffffff )
| if                        ( 2 fffebca9 0 fffebca2 7 0 0 fff7bff0 800 0 )
| block-map                 ( 2 fffebca9 0 fffebca2 7 0 0 fff7bff0 800 51 )
| dup                       ( 2 fffebca9 0 fffebca2 7 0 0 fff7bff0 800 51 51 )
| l0=                       ( 2 fffebca9 0 fffebca2 7 0 0 fff7bff0 800 51 0 )
| l->n                      ( 2 fffebca9 0 fffebca2 7 0 0 fff7bff0 800 51 0 )
| if                        ( 2 fffebca9 0 fffebca2 7 0 0 fff7bff0 800 51 )
| 2dup                      ( 2 fffebca9 0 fffebca2 7 0 0 fff7bff0 800 51 800 51 )
| sb-buf                    ( 2 fffebca9 0 fffebca2 7 0 0 fff7bff0 800 51 800 51 fff7bff0 )
| fsbtodb                   ( 2 fffebca9 0 fffebca2 7 0 0 fff7bff0 800 51 800 144 )
| cur-block                 ( 2 fffebca9 0 fffebca2 7 0 0 fff7bff0 800 51 800 144 fff73ff0 )
| -rot                      ( 2 fffebca9 0 fffebca2 7 0 0 fff7bff0 800 51 fff73ff0 800 144 )
| strategy                  ( 2 fffebca9 0 fffebca2 7 0 0 fff7bff0 800 51 0 )

Hm...  All strategy does is try to read a single block from the disk.
It's trying to read 0x800 bytes from 0x144 blocks in and deposit the
results at address fff73ff0.  It returns the amount read, which in this
case is 0, so it failed.  Could you try to debug strategy?  It appears
that the read operation on the disk is not succeeding.

Eduardo