[OpenBIOS] SOLVED: the mystery of Solaris on SPARC32 and the missing Forth arguments

Mark Cave-Ayland mark.cave-ayland at siriusit.co.uk
Sun Oct 31 19:30:43 CET 2010

Artyom Tarasenko wrote:

> I still think it's just an access to the unmapped memory region.
>> Even simpler than that: the reason the neverland code is being invoked is
>> because env->psret == 0 (i.e. traps are disabled), not because the MMU is in
>> no fault mode:
> This means that is a fault in a fault handler. The reason for it can
> be stack or something else getting exhausted while trying to process
> some trap. Or the trap handler tries to report the error over some
> non-existent device.

Can you take a look at the output of show-devs with OBP to try and 
figure out which device it is? Also would it be possible for you to 
enable DEBUG_UNALIGNED and DEBUG_UNASSIGNED in target-sparc/op_helper.c 
in qemu, boot as far as you can, and then send me the output?

Ah and another thing while I think about it: could you send me the 
output of the following too:

cd /virtual-memory

cd /memory

> Are you running with -nographic?


> Also Solaris boot option "-v" makes the boot more verbose.

Yes, I found this on your blog. The output with -vb looks like this:

Not a bootable ELF image
Loading a.out image...
Loaded 7680 bytes
entry point is 0x4000
bootpath: /iommu/sbus/espdma/esp/sd at 2,0:d

Jumping to entry point 00004000 for type 00000005...
switching to new context:
Size: 259040+54154+47486 Bytes
device auxio size -1
SunOS Release 5.8 Version Generic_108528-09 32-bit
Copyright 1983-2001 Sun Microsystems, Inc.  All rights reserved.
Ethernet address = 52:54:0:12:34:56
Using default device instance data

> OBP works without this hack.

Meh. Is there any improvement with the older versions of SunOS?



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