Re: [Flightgear-devel] Nasal big-endian problem (still)

2005-06-22 Thread Andy Ross
Martin Spott wrote:
> Andy Ross wrote:
> > If someone can set me up with ssh access to a shell account (no need
> > to run the whole fgfs binary) on a Mac or SGI or whatnot, let me
> > know.  :)
>
> I could offer an account on an UltraSparc with GCC,

As long as the compiler generates 32 bit executables (64 bit works
fine already) I'll take it. :)

Here's a public key for the .ssh/authorized_keys2 file:

ssh-rsa 
B3NzaC1yc2EBIwAAAIEA4LS3Mn9Xps3uPmqlnt3AI0j0dFTEiXzolDWW6aAZL/oRn2b/nh0zdF3onvxxeVDAc+UvyxETqQGGW9GXOgoJosiQb820RIOXn632bW08ia4Vcq1D7776aN6CzEwO420WxT7d2+OI8iDE2n4vj4cE9OyM5k8wSK0Nbef+QNp78PM=
 [EMAIL PROTECTED]

This shouldn't be too hard to figure out.  There are three structure
layouts, and two of them work fine.

Andy

___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d


Re: [Flightgear-devel] Nasal big-endian problem (still)

2005-06-21 Thread Martin Spott
Andy Ross wrote:
> Martin Spott wrote:

>> Man, am I happy that I'm not the only one with disabled throttle on
>> IRIX   :-)
> 
> Hrm.  I kinda assumed when the reports stopped that this was just a
> symptom of a version skew or unsynchronized checkout. :(

I tried to investigate the problem but failed to dig further into it
because of too little spare time 

> Unfortunately I've since switched jobs, and don't have access to a big
> endian machine to test with any more.  If someone can set me up with
> ssh access to a shell account (no need to run the whole fgfs binary)
> on a Mac or SGI or whatnot, let me know. :)

I could offer an account on an UltraSparc with GCC,

Martin.
-- 
 Unix _IS_ user friendly - it's just selective about who its friends are !
--

___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d


Re: [Flightgear-devel] Nasal big-endian problem (still)

2005-06-21 Thread Erik Hofman

Andy Ross wrote:


Hrm.  I kinda assumed when the reports stopped that this was just a
symptom of a version skew or unsynchronized checkout. :(


I was waiting for a faster CPU to arrive which should speedup testing, 
but it takes longer than I had anticipated.



Try this: hard-code the definition at the top of nasal.h to be
*little* endian.  This will produce unsafe code*, but it should work.
This will tell us that the problem is definitely the endianness
handling.


Tried that, it gives me the same result (and an additional segmentation 
fault, twice).



* It will be possible to create a special number value that "looks
  like" a reference, and therefore cause the interpreter to follow an
  arbitrary pointer.  But the chance of that happening accidentally is
  1 in 2^32, so the test should certainly work.

I'm a little suspicious, though, because the structure layout code
didn't change with these Nasal updates (and because the 64 bit layout
works fine on my laptop).  I'm wondering if something else is being
triggered in the MIPS port.


I've checked the CVS tree for changes but the union itself didn't 
change, only the structs is is referring to. The IRIX compilers are 
particularly snappy about uninitialized pointers, but since it didn't 
trigger a segmentation fault in the big-endian test I think we can 
safely say that's not the problem.



What seems to be happening is that something is clobbering a reference
that points to live data, so the garbage collector cleans up the
namespace hash incorrectly and you get undefined symbol errors.
Almost any kind of memory corruption issue can cause this.

Unfortunately I've since switched jobs, and don't have access to a big
endian machine to test with any more.  If someone can set me up with
ssh access to a shell account (no need to run the whole fgfs binary)
on a Mac or SGI or whatnot, let me know. :)


Didn't sourceforge provide shell access to different machines for 
developers (including at least a Mac)?


Erik

___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d


Re: [Flightgear-devel] Nasal big-endian problem (still)

2005-06-21 Thread Andy Ross
Martin Spott wrote:
> Erik Hofman wrote:
> > I've tried several approaches to get Nasal working for big-endian
> > (32-bit)  systems but they all fail. I don't see a way to get this
> > working and this makes FlightGear unusable for IRIX at least:
>
> Man, am I happy that I'm not the only one with disabled throttle on
> IRIX   :-)

Hrm.  I kinda assumed when the reports stopped that this was just a
symptom of a version skew or unsynchronized checkout. :(

Try this: hard-code the definition at the top of nasal.h to be
*little* endian.  This will produce unsafe code*, but it should work.
This will tell us that the problem is definitely the endianness
handling.

* It will be possible to create a special number value that "looks
  like" a reference, and therefore cause the interpreter to follow an
  arbitrary pointer.  But the chance of that happening accidentally is
  1 in 2^32, so the test should certainly work.

I'm a little suspicious, though, because the structure layout code
didn't change with these Nasal updates (and because the 64 bit layout
works fine on my laptop).  I'm wondering if something else is being
triggered in the MIPS port.

What seems to be happening is that something is clobbering a reference
that points to live data, so the garbage collector cleans up the
namespace hash incorrectly and you get undefined symbol errors.
Almost any kind of memory corruption issue can cause this.

Unfortunately I've since switched jobs, and don't have access to a big
endian machine to test with any more.  If someone can set me up with
ssh access to a shell account (no need to run the whole fgfs binary)
on a Mac or SGI or whatnot, let me know. :)

Andy


___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d


Re: [Flightgear-devel] Nasal big-endian problem (still)

2005-06-21 Thread Martin Spott
Erik Hofman wrote:

> I've tried several approaches to get Nasal working for big-endian 
> (32-bit)  systems but they all fail. I don't see a way to get this 
> working and this makes FlightGear unusable for IRIX at least:

Man, am I happy that I'm not the only one with disabled throttle on
IRIX  :-)

Martin.
-- 
 Unix _IS_ user friendly - it's just selective about who its friends are !
--

___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d