[OpenBIOS] Solaris 9: failed boot with strange device names

Mark Cave-Ayland mark.cave-ayland at siriusit.co.uk
Sun Aug 22 23:37:11 CEST 2010

Tarl Neustaedter wrote:

>  On 2010-8-15 9:21 AM, Mark Cave-Ayland wrote:
>> [...]
>> The part I'm missing is how Fcode calling the CIF "open" word can 
>> invoke the "open" word within the /packages/ufs-file-system package 
>> which should do the right thing - anyone have any bright ideas?
> There is an interpose missing in there...
> Ah, yes. The scsidisk.fth does an open-package of "disk-label" (found in 
> obp/pkg/boot/sunlabel.fth of the open-sourced openboot), which in turn 
> does an interpose of "ufs-file-system". The interpose means that 
> subsequent calls to open and any other functions get directed to the 
> interposing package, which can only get to the scsidisk package by 
> $call-parent.

Right. I've just managed to fix the memory issue I found in the Solaris 
9 Fcode (it was a bug in the SPARC64 CIF implementation) and added a 
similar interpose behaviour described above. I'm now please to report 
that the Solaris 9 kernel from a Solaris 9 install CD starts to run, 
although it dies quite early on:

OpenBIOS for Sparc64
Configuration device id QEMU version 1 machine id 0
kernel cmdline
UUID: 00000000-0000-0000-0000-000000000000
Welcome to OpenBIOS v1.0 built on Aug 22 2010 21:23
   Type 'help' for detailed information

0 > boot Trying cdrom:f...
Not a bootable ELF image
Not a bootable a.out image

Loading FCode image...
Loaded 5936 bytes
entry point is 0x4000
open isn't unique.

Jumping to entry point 0000000000100000 for type 0000000000000001...
switching to new context: entry point 0x100000 stack 0x00000000ffe02b59
panic - boot: Cannot get list.

-1 >

Turning on the CIF debugging shows a couple of property lookups before 
this point, but nothing that gives much of a hint as to why the boot fails.



Mark Cave-Ayland - Senior Technical Architect
PostgreSQL - PostGIS
Sirius Corporation plc - control through freedom
t: +44 870 608 0063

Sirius Labs: http://www.siriusit.co.uk/labs

More information about the OpenBIOS mailing list