Subject: Re: Rebase 1.5-1: Causes invalid page fault
From: Jason Tishler <[email-masked]>
To: Nicholas Wourms <[email-masked]>
Cc: [email-masked]
Date: Tue, 18 Jun 2002 08:39:00 -0400

Nicholas,

On Tue, Jun 18, 2002 at 04:51:16AM -0700, Nicholas Wourms wrote:
> First a question:  In the archives you were never clear about which
> dll's should *NEVER* be included in the list to be rebased?

I recommend skipping the DLLs that get corrupted by rebasing.  Back in
February, I determined that the following DLLs should be skipped:

    cygcurl-2.dll
    libW11.dll

Since there have been many new packages added since then, one needs to
determine if more DLLs need to be skipped too.

Additionally, it was recommended on cygwin-apps to avoid rebasing
cygwin1.dll.  Note, however that I have determined empirically that
rebasing cygwin1.dll does not corrupt it.

Unfortunately, the above is just a workaround.  We really need to figure
out why some DLLs get corrupted by rebasing.  I have evidence that it
may have something to due to with stripping.  I arrived at this
hypothesis because the PostgreSQL DLLs get corrupted if I rebase them
when they are stripped but do not when unstripped.  On the other hand,
may other DLLs (e.g., all of the Python ones) can be rebased after
stripping.

> Also, since these types of questions are coming up every now and then,
> I'm willing to write a faq the list on how to use rebase, if you
> want....

Yes, please.  I'm willing to review your drafts.

> As to my particular issue, I went and recompiled rebase without stripping
> it and included debugging symbols.
> [snip]
> Ok next, I ran gdb on it and here are the results with a backtrace:
> Program received signal SIGILL, Illegal instruction.
> 
> 0x00000002 in ?? ()
> (gdb) bt
> #0  0x00000002 in ?? ()
> #1  0x7b967382 in _libkernel32_a_iname ()
> #2  0x7b96711b in _libkernel32_a_iname ()
> #3  0x0040154c in main (argc=43, argv=0x8a0a20) at rebase.c:58
> 
> I hope that this might provide some better information for you.  Is there
> any other source of information that can help resolve this problem?

OK, the above indicates that rebase.exe is blowing up in the call to
ReBaseImage().  So, either these is a problem with ReBaseImage() (under
Me) or bad arguments are being passed.  Can you get the values of the
arguments?

Thanks,
Jason

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/