[OpenBIOS] SOLVED: the mystery of Solaris on SPARC32 and the missing Forth arguments
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:
> 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