Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: Jonas Maebe <jonas.maebe@elis.ugent.be>
To: gdb@sourceware.org
Subject: Re: program does not crash when attached to gdbserver
Date: Sat, 13 Jun 2009 08:50:00 -0000	[thread overview]
Message-ID: <A1DA41FB-F1C0-4B54-91C4-7878E6BB5305@elis.ugent.be> (raw)
In-Reply-To: <DF49191A-3B41-4E40-892A-E631EA0D7343@cyclaero.com>


On 13 Jun 2009, at 00:55, Dr. Rolf Jansen wrote:

> The problem is that the application crashes consistently after a  
> certain sequence of user interactions if it runs by its own.  
> However, the same binary does not crash, once it is attached to  
> gdbserver, and it does not crash even when continuing  with a couple  
> of stress tests beyound the point at which it would have crashed  
> without gdbserver.
>
> It would help so much to find the bug if the program would crash  
> into gdb and if gdb could show me the related source code. This  
> usually works quite well, for example when writing to memory at NULL.
>
> Perhaps somebody has an idea about what type of bug might cause the  
> behaviour described above.

As you surmise below: probably using uninitialised and/or freed memory.

> There was a debugger for Mac OS Classic called MacsBug, that had a  
> setting for scrambling the memory, so that accessing released memory  
> would immediately result into a crash. I cannot seem to find a  
> similar feature in gdb. Does gdb have any settings, that I can try?

In general, this is a feature of the compiler and/or run time, rather  
than of the debugger (the debugger cannot know how the memory manager  
of your run time works, so unless you exclusively use OS or OS- 
supplied library functions, it cannot scramble anything). E.g., in  
case of the Free Pascal Compiler, there are the -gttt (scramble all  
local variables on function entry) and -gh (use the heaptrc unit,  
which, a.o., scrambles all freed memory) options.

For GCC, you can have a look which of these work on your target  
platform: http://en.wikipedia.org/wiki/Memory_debugger

Regarding scrambling local variables on function entry, I believe that  
recent GCC's support doing that as well, but I don't know the command  
line option by heart.


Jonas


  reply	other threads:[~2009-06-13  8:50 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-12 22:55 Dr. Rolf Jansen
2009-06-13  8:50 ` Jonas Maebe [this message]
2009-06-13 13:54   ` Dr. Rolf Jansen
2009-06-13 15:26     ` Jonas Maebe
2009-06-13 18:02       ` Dr. Rolf Jansen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=A1DA41FB-F1C0-4B54-91C4-7878E6BB5305@elis.ugent.be \
    --to=jonas.maebe@elis.ugent.be \
    --cc=gdb@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox