This is the mail archive of the
mailing list for the Cygwin project.
Re: Need tips debugging a crash porting an app to cygwin caused by sth overwriting a function
- From: Dalibor Topic <robilad at kaffe dot org>
- To: cygwin at cygwin dot com
- Date: Wed, 17 Dec 2003 22:57:40 +0100
- Subject: Re: Need tips debugging a crash porting an app to cygwin caused by sth overwriting a function
- References: <3FE0A59A.email@example.com> <20031217213508.GE6296@redhat.com>
Christopher Faylor wrote:
On Wed, Dec 17, 2003 at 07:51:06PM +0100, Dalibor Topic wrote:
I try runing kaffe in gdb in order to run the java compiler, and quite
quickly, it crashes, when it enters the findJarFiles function, with a
SIGSEGV. The disassembly of the function shows that it's been modified
to have a few bad opcodes at the start.
Of course, I'd like to know what causes those opcodes to be modified.
I've tried watch and awatch findJarFiles, awatch *(long *) findJarFiles,
but despite gdb saying that it's setting a hardware watchpoint, I don't
get a break in gdb until the function call crashes, which is too late.
So I'm wondering what kind of tips experienced Cygwin developers could
offer to nail the bug down.
Use 'display' to show the contents of the memory location being modified
and either single step or use binary search techniques to see when the
location is modified.
This isn't a cygwin technique. It's just a debugging technique.
Thanks for the quick, insightful reply.
I was hoping for some silver bullet, but now it seems like I'll have to
learn to script gdb to do what you propose. Automated debugging, and all
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html