Port-sparc archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: Booting on raid1 rootfs
On Sun, 23 Feb 2014, BERTRAND Joël wrote:
> Hello,
>
> I'm trying to install NetBSD on a SS20. I have built a raid1 system as
> I have done on several sparc64 without any trouble. Now, system is on raid0a
> but when my SS20 tries to boot, I only obtain :
>
> >> NetBSD/sparc Secondary Boot, Revision 1.15
> >>.....
> Booting netbsd
> : trying netbsd.gz
> Booting netbsd.gz
> : trying netbsd.old
> ....
>
> I have seen that sparc supports raid1 rootfs, but how can I install
> bootblock ? I have tried in /dev/rsd1a and in /dev/rsd1c without any success.
>
> Any idea ? I have only found old articles that don't give any
> solution.
Based on this output, the machine found the bootblock and second level
bootloader, but the second level bootloader wasn't able to find the
kernel.
On sparc64, the first level boot block is written in forth and walks the
filesystem structures to find the second level bootloader. The second
level bootloader then walks the filesystem structures to find the kernel.
(In theory we could load the kernel directly from the first level
bootblock, but we do some fancy stuff in the ELF loader to make sure text
and data pages are physically contiguous.)
On sparc32 (unless someone has changed things over the years) the first
level bootblock is a SPARC C+assembly language executable that has the
disk blocks containing the second level bootloader encoded in it. It just
reads those disk blocks and jumps to the program it loaded.
The second level boot loader then walks the filesystem structures to find
the kernel. It's this step that's failing. My guess is that the sparc
bootloader is missing some bits from libsa that jump over the 64KB empty
space that raidframe leaves when looking for the ufs superblock.
Eduardo
Home |
Main Index |
Thread Index |
Old Index