public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
* rebaseall breaks some packages(?)
@ 2014-06-17  6:40 Katsumi Yamaoka
  2014-06-17  8:28 ` Marco Atzeri
                   ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: Katsumi Yamaoka @ 2014-06-17  6:40 UTC (permalink / raw)
  To: cygwin

Hi,

I updated the Cygwin installation on Win7 SP1 32-bit yesterday
(using setup-x86.exe) and got unable to use some commands.
For instance, when I tried to update the Emacs source by using
bzr+ssh I got:

$ cd emacs/trunk
$ bzr update
    0 [main] python2.7 3856 child_info_fork::abort: address\
    space needed by '_AES.dll' (0x5B0000) is already occupied
    bzr: ERROR: Don't know how to handle SSH connections. Please\
    set BZR_SSH environment variable.

And I got the following when I tried to run w3m in the background
from Emacs:

M-x w3m
    0 [main] emacs 7496 child_info_fork::abort: address space\
    needed by 'p11-kit-trust.so' (0x1630000) is already occupied
or
    0 [main] emacs 6448 child_info_fork::abort: address space\
    needed by 'gnome-keyring-pkcs11.dll' (0x1690000) is already\
    occupied

Rebaseall doesn't help.  A way to make those programs work I
found is only to reinstall the packages:
`gnome-keyring', `p11-kit-trust', `bzr', and `python'.

However, those reinstallations cause some other programs to not
work.  For those other programs, rebaseall does help.  Though it
breaks bzr, emacs-w3m, etc. again.  It's annoying.

Thanks in advance for your help.
Regards,

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

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: rebaseall breaks some packages(?)
  2014-06-17  6:40 rebaseall breaks some packages(?) Katsumi Yamaoka
@ 2014-06-17  8:28 ` Marco Atzeri
  2014-06-17  8:44   ` Achim Gratz
  2014-06-17 17:33   ` David Stacey
  2014-06-18  4:11 ` Katsumi Yamaoka
  2014-07-06  9:17 ` D. Boland
  2 siblings, 2 replies; 10+ messages in thread
From: Marco Atzeri @ 2014-06-17  8:28 UTC (permalink / raw)
  To: cygwin

On 17/06/2014 08:40, Katsumi Yamaoka wrote:
> Hi,
>
> I updated the Cygwin installation on Win7 SP1 32-bit yesterday
> (using setup-x86.exe) and got unable to use some commands.
> For instance, when I tried to update the Emacs source by using
> bzr+ssh I got:
>
> $ cd emacs/trunk
> $ bzr update
>      0 [main] python2.7 3856 child_info_fork::abort: address\
>      space needed by '_AES.dll' (0x5B0000) is already occupied
>      bzr: ERROR: Don't know how to handle SSH connections. Please\
>      set BZR_SSH environment variable.
>

(0x5B0000) is a very low address, I guess your rebase was not really
successful.

on my system the address is much higher
  $rebase -i /usr/lib/python2.7/site-packages/Crypto/Cipher/_AES.dll
/usr/lib/python2.7/site-packages/Crypto/Cipher/_AES.dll base 0x4b5b0000 
size 0x0                                                000e000


> Rebaseall doesn't help.

Sometime you need to full rebase from scratch.
Remove the rebase database /etc/rebase.db.i386
and rebaseall again.
Be sure to have not any running cygwin program

> Thanks in advance for your help.
> Regards,

Regards
Marco


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

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: rebaseall breaks some packages(?)
  2014-06-17  8:28 ` Marco Atzeri
@ 2014-06-17  8:44   ` Achim Gratz
  2014-06-17 17:33   ` David Stacey
  1 sibling, 0 replies; 10+ messages in thread
From: Achim Gratz @ 2014-06-17  8:44 UTC (permalink / raw)
  To: cygwin

Marco Atzeri <marco.atzeri <at> gmail.com> writes:
> (0x5B0000) is a very low address, I guess your rebase was not really
> successful.

Such low addresses are often a result of an address conflict or BLODA in my
experience.  If indeed the rebase positions the library at that address,
then a full rebase is in order to maybe come up with a better adress space
layout.


Regards,
Achim.


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

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: rebaseall breaks some packages(?)
  2014-06-17  8:28 ` Marco Atzeri
  2014-06-17  8:44   ` Achim Gratz
@ 2014-06-17 17:33   ` David Stacey
  2014-06-18  4:18     ` Katsumi Yamaoka
  1 sibling, 1 reply; 10+ messages in thread
From: David Stacey @ 2014-06-17 17:33 UTC (permalink / raw)
  To: cygwin

On 17/06/14 09:28, Marco Atzeri wrote:
> On 17/06/2014 08:40, Katsumi Yamaoka wrote:
>> Hi,
>>
>> I updated the Cygwin installation on Win7 SP1 32-bit yesterday
>> (using setup-x86.exe) and got unable to use some commands.
>> For instance, when I tried to update the Emacs source by using
>> bzr+ssh I got:
>>
>> $ cd emacs/trunk
>> $ bzr update
>>      0 [main] python2.7 3856 child_info_fork::abort: address\
>>      space needed by '_AES.dll' (0x5B0000) is already occupied
>>      bzr: ERROR: Don't know how to handle SSH connections. Please\
>>      set BZR_SSH environment variable.
>>
>
> (0x5B0000) is a very low address, I guess your rebase was not really
> successful.
>
> on my system the address is much higher
>  $rebase -i /usr/lib/python2.7/site-packages/Crypto/Cipher/_AES.dll
> /usr/lib/python2.7/site-packages/Crypto/Cipher/_AES.dll base 
> 0x4b5b0000 size 0x0                                                
> 000e000
>
>
>> Rebaseall doesn't help.
>
> Sometime you need to full rebase from scratch.
> Remove the rebase database /etc/rebase.db.i386
> and rebaseall again.
> Be sure to have not any running cygwin program

This might happen if you updated from rebase-4.4.0 to 4.4.1. The older 
version could have corrupt addresses in its database, which would cause 
errors of the kind you've experienced. The problem would get worse if 
other packages were added. Although the code is fixed, you'll need to 
delete the rebase database and run rebaseall again as Marco suggests.

Cheers,

Dave.


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

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: rebaseall breaks some packages(?)
  2014-06-17  6:40 rebaseall breaks some packages(?) Katsumi Yamaoka
  2014-06-17  8:28 ` Marco Atzeri
@ 2014-06-18  4:11 ` Katsumi Yamaoka
  2014-06-18  5:31   ` Katsumi Yamaoka
  2014-07-06  9:17 ` D. Boland
  2 siblings, 1 reply; 10+ messages in thread
From: Katsumi Yamaoka @ 2014-06-18  4:11 UTC (permalink / raw)
  To: cygwin

On Tue, 17 Jun 2014 15:40:25 +0900, Katsumi Yamaoka wrote:
[...]
> Rebaseall doesn't help.  A way to make those programs work I
> found is only to reinstall the packages:
> `gnome-keyring', `p11-kit-trust', `bzr', and `python'.

> However, those reinstallations cause some other programs to not
> work.  For those other programs, rebaseall does help.  Though it
> breaks bzr, emacs-w3m, etc. again.  It's annoying.

I did do nothing special; nevertheless all seems to be working
fine now.  It's a mystery, but I'm sorry for the noise anyway.

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

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: rebaseall breaks some packages(?)
  2014-06-17 17:33   ` David Stacey
@ 2014-06-18  4:18     ` Katsumi Yamaoka
  0 siblings, 0 replies; 10+ messages in thread
From: Katsumi Yamaoka @ 2014-06-18  4:18 UTC (permalink / raw)
  To: cygwin

On Tue, 17 Jun 2014 18:33:14 +0100, David Stacey wrote:
> On 17/06/14 09:28, Marco Atzeri wrote:
[...]
>> Sometime you need to full rebase from scratch.
>> Remove the rebase database /etc/rebase.db.i386
>> and rebaseall again.
>> Be sure to have not any running cygwin program

> This might happen if you updated from rebase-4.4.0 to 4.4.1. The older
> version could have corrupt addresses in its database, which would
> cause errors of the kind you've experienced. The problem would get
> worse if other packages were added. Although the code is fixed, you'll
> need to delete the rebase database and run rebaseall again as Marco
> suggests.

I'll try it when the trouble happens again.  Thanks a lot for
the suggestion.

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

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: rebaseall breaks some packages(?)
  2014-06-18  4:11 ` Katsumi Yamaoka
@ 2014-06-18  5:31   ` Katsumi Yamaoka
  0 siblings, 0 replies; 10+ messages in thread
From: Katsumi Yamaoka @ 2014-06-18  5:31 UTC (permalink / raw)
  To: cygwin

On Wed, 18 Jun 2014 13:11:44 +0900, Katsumi Yamaoka wrote:
> I did do nothing special; nevertheless all seems to be working
> fine now.  It's a mystery, but I'm sorry for the noise anyway.

A similar trouble happened after performing setup-x86.exe, that
updated a couple of packages and ran autorebase.bat.  Rebaseall
from scratch didn't help but re-installing gnome-keyring,
p11-kit-trust, bzr, and python made the system normal.  Sigh.

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

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: rebaseall breaks some packages(?)
  2014-06-17  6:40 rebaseall breaks some packages(?) Katsumi Yamaoka
  2014-06-17  8:28 ` Marco Atzeri
  2014-06-18  4:11 ` Katsumi Yamaoka
@ 2014-07-06  9:17 ` D. Boland
  2014-07-06 18:35   ` Andrey Repin
  2 siblings, 1 reply; 10+ messages in thread
From: D. Boland @ 2014-07-06  9:17 UTC (permalink / raw)
  To: cygwin

Hi Katsumi,

Katsumi Yamaoka wrote:

> However, those reinstallations cause some other programs to not
> work.  For those other programs, rebaseall does help.  Though it
> breaks bzr, emacs-w3m, etc. again.  It's annoying.
> 
> Thanks in advance for your help.
> Regards,

I agree. It's annoying. See this post also:

http://cygwin.com/ml/cygwin/2009-11/msg00894.html

I'm a developer of Windows software for 15 years now, and my clients never had to
rebase my binaries.

I'm also a Linux teacher and I use Cygwin in class. My students (100+) repeatedly
got these errors, so I switched to an improved version of apt-cyg, which does not
rebase. I'm a happy teacher now.

What's the deal with this "rebasing" anyway? Every compiler has a built-in mechanism
to create unique offsets. Windows itself also rebases binaries at load-time. 

On the other hand, why not rebase at compile-time? Rebasing should not be the
responsibility of the user, but of the developer. See this article:

http://harshdeep.wordpress.com/2007/05/14/thou-shalt-rebase-thy-dll/

Hmm.. This turned out to be a rant. I'm sorry for hijacking your thread.

Daniel


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

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: rebaseall breaks some packages(?)
  2014-07-06  9:17 ` D. Boland
@ 2014-07-06 18:35   ` Andrey Repin
  2014-07-06 19:19     ` Marco Atzeri
  0 siblings, 1 reply; 10+ messages in thread
From: Andrey Repin @ 2014-07-06 18:35 UTC (permalink / raw)
  To: D. Boland, cygwin

Greetings, D. Boland!

>> However, those reinstallations cause some other programs to not
>> work.  For those other programs, rebaseall does help.  Though it
>> breaks bzr, emacs-w3m, etc. again.  It's annoying.
>> 
>> Thanks in advance for your help.
>> Regards,

> I agree. It's annoying. See this post also:

> http://cygwin.com/ml/cygwin/2009-11/msg00894.html

4.5, soon 5 years. There was a lot of work over rebase and it's cooperation
with setup. Can you reproduce this issue today?

> I'm a developer of Windows software for 15 years now, and my clients never had to
> rebase my binaries.

> I'm also a Linux teacher and I use Cygwin in class.

I suggest a Linux VM, since you are a teacher.
Strongly suggest.

> My students (100+) repeatedly got these errors,

Which are "these errors"? And how long you are using Cygwin?
If you are using it from before the setup/rebase changes, may be, it's time to
do a fresh install and see, if that would improve the situation?
Or switch to x86-64 cygwin, which have a bit better situation with memory
layout.

> so I switched to an improved
> version of apt-cyg, which does not rebase. I'm a happy teacher now.

Unlikely it's true. More likely, it automatically rebase, but you did not
notice.

> What's the deal with this "rebasing" anyway? Every compiler has a built-in
> mechanism to create unique offsets. Windows itself also rebases binaries at
> load-time. 

Windows and POSIX models require different load techniques.
Cygwin provide POSIX compatibility layer.

> On the other hand, why not rebase at compile-time?

Because it's not possible for two reasons.
First, packages are compiled in many different places, and second - there's
just not enough memory to place every possible Cygwin library in 32-bit
address space. Neither it's feasible, as noone need every cygwin package at
once.

> Rebasing should not be the responsibility of the user, but of the developer.

Cygwin users are developers. That's the intended audience, anyway.

> See this article:

> http://harshdeep.wordpress.com/2007/05/14/thou-shalt-rebase-thy-dll/

> Hmm.. This turned out to be a rant. I'm sorry for hijacking your thread.

It's a simple misunderstanding, overweighted with lack of information.
If you do a search through the mailing list, you can find much better
explanations for the reasons of rebase, than mine.


--
WBR,
Andrey Repin (anrdaemon@yandex.ru) 06.07.2014, <22:18>

Sorry for my terrible english...


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

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: rebaseall breaks some packages(?)
  2014-07-06 18:35   ` Andrey Repin
@ 2014-07-06 19:19     ` Marco Atzeri
  0 siblings, 0 replies; 10+ messages in thread
From: Marco Atzeri @ 2014-07-06 19:19 UTC (permalink / raw)
  To: cygwin

On 06/07/2014 20:34, Andrey Repin wrote:
> Greetings, D. Boland!
>
>
>> My students (100+) repeatedly got these errors,

than eventually they should ask help here..

>> What's the deal with this "rebasing" anyway? Every compiler has a built-in
>> mechanism to create unique offsets. Windows itself also rebases binaries at
>> load-time.
>
> Windows and POSIX models require different load techniques.
> Cygwin provide POSIX compatibility layer.

On Posix the fork is a fundamental function.
Fork requires that all dll's on children process
are reloaded at the same address used in the father process.
Windows make this very difficult and rebase align
dll loading spaces in NOT overlapping ones making collision
and fork failures more unlikely.

>> On the other hand, why not rebase at compile-time?

on 32 bit, we will not have enough space anyway.
On both platform  we should syncronize all the package maintainers at a 
certain point for all distributed shared library, titanic job and 
useless as the first upgrade of any shared library package will require
likely a different address space.

>> Rebasing should not be the responsibility of the user, but of the developer.
It is currently done by setup. But sometime things go wrong
and a you need a fresh restart.
Think of it like car tires, usually you don't touch them
but if the tire breaks you need to change it.

> Cygwin users are developers. That's the intended audience, anyway.

That is clearly a wrong assumptions.
If our user were all developers we will be very few.
I expect very few users of my packages to be software developers

> --
> WBR,
> Andrey Repin (anrdaemon@yandex.ru) 06.07.2014, <22:18>

Regards
Marco

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

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2014-07-06 19:19 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-06-17  6:40 rebaseall breaks some packages(?) Katsumi Yamaoka
2014-06-17  8:28 ` Marco Atzeri
2014-06-17  8:44   ` Achim Gratz
2014-06-17 17:33   ` David Stacey
2014-06-18  4:18     ` Katsumi Yamaoka
2014-06-18  4:11 ` Katsumi Yamaoka
2014-06-18  5:31   ` Katsumi Yamaoka
2014-07-06  9:17 ` D. Boland
2014-07-06 18:35   ` Andrey Repin
2014-07-06 19:19     ` Marco Atzeri

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).