This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: rebaseall failure?


Doug,

On Wed, Jul 27, 2005 at 03:35:40PM -0400, Doug Philips wrote:
> On Wednesday, July 27, 2005, at 03:05PM, Jason Tishler indited:
> >If sh.exe is really bash.exe, then this is why cygiconv-2.dll is in
> >use.  The question is why is sh.exe running in the first place?
> 
> Indeed. And why does putting that dll at the end of the list make any
> difference?

AFAICT, it doesn't.  See below...

On Tue, Jul 26, 2005 at 07:26:17PM -0400, Douglas Philips wrote:
> I copied rebaseall and had my copy just save the zcat filtered output
> into /tmp/rebase.lst .
> I then moved /usr/bin/cygiconv-2.dll to the very end of the list and
> ran:
> $ rebase -d -b 0x70000000 -o 0x10000 -T /tmp/rebase.lst

The above worked because you invoked rebase directly instead of
rebaseall, not because you changed the order of the DLLs rebased.

> My next line of inquiry resulted in putting a 'sleep' in just before
> the rebase invocation.  Huh, that fixed it. Weird.

The sleep gave the sh.exe process time to exit.  You "fixed" it but in
an open-loop way that is still prone to failure.

> Then I went looking, and what happens just before rebase is called?
> zcat and egrep are called.
> zcat is a link to gzip which is a .exe file.
> egrep, however, is a shell script
> $ cd /usr/bin
> $ cat egrep
> #!/bin/sh
> exec grep -E ${1+"$@"}
> $ 

The above is causing the problem.  Why is egrep a shell script on your
system?  It should be a symlink:

    $ ls -l /usr/bin/egrep 
    lrwxrwxrwx    1 jtishler Users           4 Mar 29  2004 /usr/bin/egrep -> grep

Either restored the symlink or change the trigger line to:

    #!/bin/ash

> So apparently the shell isn't shutting down fast enough before rebase
> is invoked.

This seems to be the case.

> Of course none of this fixes my real problem with why Python is unable
> to get a lock...

I was able to reproduce your problem.  So far, I found from stracing the
following:

    7743  884473 [main] python2.4 3916 __set_errno: int semaphore::_trywait():1761 val 11

Unfortunately, I won't have the time to debug further for a while.  And,
to be honest, I'm lacking the motivation too...

Jason

-- 
PGP/GPG Key: http://www.tishler.net/jason/pubkey.asc or key servers
Fingerprint: 7A73 1405 7F2B E669 C19D  8784 1AFD E4CC ECF4 8EF6

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]