DynamoRIO / DynamoRIO/drmemory

CRASH GNAT on linux

Open
#1,433 1 comment 0 reactions 0 assignees View on GitHub
Bug-ToolCrash Hotlist-Release Migrated OpSys-Linux Priority-High
Dominant language
C
Stars
2.7k
Forks
290
PR merge metrics
No merged PRs in 30d

Description

_From [dmitriy....@gmail.com](https://code.google.com/u/110842994600406278847/) on January 31, 2014 09:00:07_

Dr. Memory version 1.6.1 -- build 2

The steps:
1. Download and install GNAT GPL 2013 for Linux. It could be installed to
$HOME/usr/gnat directory to do not dusturb system.
2. Build the attached program
gnatmake asynch_transfer.adb
3. See crush

$ ~/usr/drmem/bin/drmemory.pl -- ./asynch_transfer
~~Dr.M~~ Dr. Memory version 1.6.1
~~14580~~
~~14580~~ Error `#1`: UNINITIALIZED READ: reading 0xf6ffb091-0xf6ffb094 3 byte(s) within 0xf6ffb084-0xf6ffb094
~~14580~~ # 0 system call prctl
~~14580~~ # 1 libc.so.6!__GI___prctl
~~14580~~ # 2 system__tasking__stages__task_wrapper [../sysdeps/i386/start.S:118]
~~14580~~ Note: @0:00:00.452 in thread 14580

I used GNAT GPL x86-linux compiler on 64 bit Linux.

The problem is not gone in "-light" mode.
With -leaks_only -no_count_leaks -no_track_allocs problem persists too.

The most recent build http://build.chromium.org/p/client.drmemory/builds/drmemory-linux-r1689.tar.gz Give the same error

anisimkov@linux-jeud:~/Ada/test> ~/usr/DrMemory-package/bin/drmemory.pl -- ./asynch_transfer
~~Dr.M~~ Dr. Memory version 1.6.1689
~~15121~~
~~15121~~ Error `#1`: UNINITIALIZED READ: reading 0xf6ffb091-0xf6ffb094 3 byte(s) within 0xf6ffb084-0xf6ffb094
~~15121~~ # 0 system call prctl
~~15121~~ # 1 libc.so.6!__GI___prctl
~~15121~~ # 2 system__tasking__stages__task_wrapper [../sysdeps/i386/start.S:118]
~~15121~~ Note: @0:00:00.716 in thread 15121

Debug mode:
$ ~/usr/drmem/bin/drmemory.pl -debug -dr_debug -pause_at_assert -- ./asynch_transfer

~~Dr.M~~ Dr. Memory version 1.6.1
<(1+x) Handling our fault in a TRY at 0xf725fcad>
~~14736~~
~~14736~~ Error `#1`: UNINITIALIZED READ: reading 0xf6e49091-0xf6e49094 3 byte(s) within 0xf6e49084-0xf6e49094
~~14736~~ # 0 system call prctl
~~14736~~ # 1 libc.so.6!__GI___prctl
~~14736~~ # 2 system__tasking__stages__task_wrapper [../sysdeps/i386/start.S:118]
~~14736~~ Note: @0:00:02.524 in thread 14736
~~14736~~ ASSERT FAILURE (thread 14736): /work/drmemory_package/drmemory/alloc_drmem.c:1522: (cpt->sigaltstack < (byte_)mc.xsp || (ptr_int_t)cpt->sigaltstack - cpt->sigaltsize - mc.xsp > options.stack_swap_threshold) && (cpt->sigaltstack > (byte_)mc.xsp || mc.xsp - ((ptr_int_t)cpt->sigaltstack + cpt->sigaltsize) > options.stack_swap_threshold) (sigaltstack within swap threshold of esp)Dr. Memory is paused at an assert in pid=14730

**Attachment:** [asynch_transfer.adb](http://code.google.com/p/drmemory/issues/detail?id=1433)

_Original issue: http://code.google.com/p/drmemory/issues/detail?id=1433_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.