Opened 15 years ago
Closed 15 years ago
Last modified 15 years ago
#2268 closed defect (fixed)
Ingr 1.5.0 Runtime failure on Solaris 10
|Reported by:||PeterHalls||Owned by:||ilucena|
|Severity:||normal||Keywords:||INGR Sparc Solaris|
|Cc:||warmerdam, Mateusz Łoskot|
When GDAL 1.5.0 is compiled on Sun Solaris (Sparc) 10 using the Sun Studio compiler version 5.9 Patch 124867-02 dated 2007.11.27. Programs linked to OGR fail at runtime with "Bus error (core dumped)". Running debugger on the core dump shows the failure to be "invalid address alignment" in SLIP.INIT_A called from IngrTypes.cpp line 64.
There are no such problems compiling with GCC.
Change History (3)
comment:1 by , 15 years ago
|Component:||default → GDAL_Raster|
|Keywords:||INGR Sparc Solaris added|
comment:2 by , 15 years ago
|Status:||new → closed|
I fix that problem at:
Peter, can you do a test for us?
comment:3 by , 15 years ago
|Milestone:||1.5.2 → 1.5.1|
I have taken the liberty of back porting this patch as r13972 in 1.5 branch in time for the 1.5.1 release.
I looked at line 64 of IngrTypes.cpp and it seems to be in the middle of the static initializer for a structure so I'm not sure that aspects tells us much. I don't know if there is much you can do on this without access to the system.
I will say that Sparc's are quick sensitive about pointer alignment. For instance, if you access through a double pointer that isn't on an 8byte memory boundary it will trigger an exception. I generally work around this with memcpy()s when pulling from potentially unaligned read buffers.
If you can think of a possible problem, I think Peter may be able to test a potential fix. If not, we might be able to get access to a Sparc test system at Telascience.