Ticket #2268 (closed defect: fixed)

Opened 2 months ago

Last modified 2 months ago

Ingr 1.5.0 Runtime failure on Solaris 10

Reported by: PeterHalls Assigned to: ilucena
Priority: normal Milestone: 1.5.1
Component: GDAL_Raster Version: 1.5.0
Severity: normal Keywords: INGR Sparc Solaris
Cc: warmerdam, mloskot

Description

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

03/11/08 12:19:02 changed by warmerdam

  • keywords set to INGR Sparc Solaris.
  • owner changed from warmerdam to ilucena.
  • component changed from default to GDAL_Raster.
  • cc set to warmerdam, mloskot.
  • milestone set to 1.5.2.

Ivan,

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.

03/11/08 13:50:54 changed by ilucena

  • status changed from new to closed.
  • resolution set to fixed.

I fix that problem at:

http://trac.osgeo.org/gdal/changeset/13965

Peter, can you do a test for us?

03/12/08 10:14:58 changed by warmerdam

  • milestone changed from 1.5.2 to 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.