Bug #465

GMT 5.1.1 Linux 32 bits unusable

Added by Eduardo almost 4 years ago. Updated almost 4 years ago.

Status:ClosedStart date:2013-12-22
Priority:HighDue date:
Assignee:-% Done:

0%

Category:-
Target version:Candidate for next minor release
Affected version:5.1.x Platform:Linux

Description

In GMT 5.1.1_r12668 (also in 12666) only in Linux 32 bits (in Linux 64 bits works fine).

This produces no output:

psbasemap -R0/360/10/90 -JO180/90/30/18 -Ba0g0f0

This explodes:

pscoast -R0/360/10/90 -JO180/90/30/18 -Dl -A0/0/1 -Ba0g0f0 -G224/224/224

Even valgrind explodes...

20937 Memcheck, a memory error detector
20937 Copyright (C) 2002-2012, and GNU GPL'd, by Julian Seward et al.
20937 Using Valgrind-3.8.1 and LibVEX; rerun with h for copyright info
20937 Command: pscoast -R0/360/10/90 -JO180/90/30/18 -Dl -A0/0/1 -Ba0g0f0 -G224/224/224
20937
20937 Invalid write of size 8
20937 at 0x40C4BE5: GMT_iobl (gmt_proj.c:645)
20937 by 0x35E57973: ?
20937 Address 0xa2e3db0 is 0 bytes after a block of size 10,912 alloc'd
20937 at 0x402A9B5: calloc (vg_replace_malloc.c:593)
20937 by 0x40BD547: GMT_memory_func (gmt_memory.c:546)
20937 by 0xBE98FB0F: ?

20937
20937 Invalid read of size 8
20937 at 0x40C4D2C: GMT_ioblmrc (gmt_proj.c:618)
20937 by 0x415B1E8: GMT_xy_to_geo (gmt_map.c:2616)
20937 Address 0xa2e3db0 is 0 bytes after a block of size 10,912 alloc'd
20937 at 0x402A9B5: calloc (vg_replace_malloc.c:593)
20937 by 0x40BD547: GMT_memory_func (gmt_memory.c:546)
20937 by 0xBE98FB0F: ?
20937
20937 Invalid write of size 8
20937 at 0x40C4D30: GMT_ioblmrc (gmt_proj.c:618)
20937 by 0x415B1E8: GMT_xy_to_geo (gmt_map.c:2616)
20937 Address 0xa2e3db0 is 0 bytes after a block of size 10,912 alloc'd
20937 at 0x402A9B5: calloc (vg_replace_malloc.c:593)
20937 by 0x40BD547: GMT_memory_func (gmt_memory.c:546)
20937 by 0xBE98FB0F: ?

20937
20937 Invalid write of size 8
20937 at 0x40C4BE5: GMT_iobl (gmt_proj.c:645)
20937 by 0xB5E57973: ?
20937 Address 0xa2e3db8 is 8 bytes after a block of size 10,912 alloc'd
20937 at 0x402A9B5: calloc (vg_replace_malloc.c:593)
20937 by 0x40BD547: GMT_memory_func (gmt_memory.c:546)
20937 by 0xBE98FB0F: ?

20937
ERROR: Caught signal number 11 (Segmentation fault) at
/opt/apps/GMT/GMT-5-testing/bin/../lib/i386-linux-gnu/libgmt.so.5(GMT_iobl+0x145)[0x40c4be5]
[0xa4a2000]
--20937-
VALGRIND INTERNAL ERROR: Valgrind received a signal 11 (SIGSEGV) - exiting
--20937-- si_code=1; Faulting address: 0x404DFFFF; sp: 0x6281fde4

valgrind: the 'impossible' happened:
Killed by fatal signal
20937 at 0x38061DE4: unlinkBlock (m_mallocfree.c:290)
20937 by 0x380634E8: vgPlain_arena_malloc (m_mallocfree.c:1607)
20937 by 0x3809F63B: vgPlain_cli_malloc (replacemalloc_core.c:83)
20937 by 0x3802C8DA: vgMemCheck_new_block (mc_malloc_wrappers.c:263)
20937 by 0x3802CAB5: vgMemCheck_malloc (mc_malloc_wrappers.c:301)
20937 by 0x380A23F0: vgPlain_scheduler (scheduler.c:1665)
20937 by 0x380B38A7: run_a_thread_NORETURN (syswrap-linux.c:103)

sched status:
running_tid=1

Thread 1: status = VgTs_Runnable
20937 at 0x4028A28: malloc (vg_replace_malloc.c:270)
20937 by 0x400CE2C: _dl_map_object_deps (dl-deps.c:515)
20937 by 0x4012BA1: dl_open_worker (dl-open.c:276)
20937 by 0x400EB1D: _dl_catch_error (dl-error.c:177)
20937 by 0x535BBC0: do_dlopen (dl-libc.c:87)
20937 by 0x5224D0D: pthread_once (pthread_once.S:120)
20937 by 0x406631D: sig_handler (common_sighandler.c:166)
20937 by 0x35E57973: ???

Note: see also the FAQ in the source distribution.
It contains workarounds to several common problems.
In particular, if Valgrind aborted or crashed after
identifying problems in your program, there's a good chance
that fixing those problems will prevent Valgrind aborting or
crashing, especially if it happened in m_mallocfree.c.

If that doesn't help, please report this bug to: www.valgrind.org

In the bug report, send all the above text, the valgrind
version, and what OS and version you are using. Thanks.

Associated revisions

Revision 13250
Added by Paul over 3 years ago

Clarify that -T with no args will close all polygons; settles issue #465

History

#1 Updated by Paul almost 4 years ago

  • Status changed from New to Feedback

Would you be able to run psbasemap in ddd or equivalent and see which line it crashes in?

#2 Updated by Eduardo almost 4 years ago

(gdb) run
Starting program: /opt/apps/GMT/GMT-5-testing/bin/psbasemap -R0/360/0/90 -JS4/90/18 -Ba0g0f0
warning: Could not load shared library symbols for linux-gate.so.1.
Do you need "set solib-search-path" or "set sysroot"?
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/i386-linux-gnu/i686/cmov/libthread_db.so.1".
[Inferior 1 (process 7593) exited with code 073]

#3 Updated by Eduardo almost 4 years ago

I've playing with ddd and psbasemap error is near GMT_Call_Module in gmt_api.c At least this is the last function before the exit.

The weird is that neither running psbasemap with -Vd nor under valgring spits anything.

#4 Updated by Paul almost 4 years ago

Is this on 32-bit hardware or simulation? I don't think I have any 32-bit hardware anymore...I am trying to force -m32 in Ubuntu under Parallels but first installing upgrades.

#5 Updated by Eduardo almost 4 years ago

64 bits hardware with Debian Jessie (testing) 32 bits.

#6 Updated by Eduardo almost 4 years ago

I've tested in another 32 bits machine with the same result.

gcc 4.8.2-1
libc6 2.17-97

#7 Updated by Paul almost 4 years ago

  • Status changed from Feedback to In Progress

Should be fixed now, in r12670.

#8 Updated by Paul almost 4 years ago

  • Status changed from In Progress to Closed

Closing this one as moot.

Also available in: Atom PDF