X-Recipient: archive-cygwin@delorie.com
X-SWARE-Spam-Status: No, hits=-2.3 required=5.0	tests=AWL,BAYES_00,KHOP_RCVD_UNTRUST,KHOP_THREADED,RCVD_IN_DNSWL_LOW,RP_MATCHES_RCVD,SPF_NEUTRAL
X-Spam-Check-By: sourceware.org
Message-ID: <50B3D7C1.3040607@cs.utoronto.ca>
Date: Mon, 26 Nov 2012 15:57:37 -0500
From: Ryan Johnson <ryan.johnson@cs.utoronto.ca>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/17.0 Thunderbird/17.0
MIME-Version: 1.0
To: cygwin@cygwin.com
Subject: Re: cygwin dlls address issue (cygconv-2.dll), unable to rebaseall
References: <CADEZfNj7pq1udfPX_9A4Ef6SCJOaX2Lc2xRhWBNGKY1qmVMiAQ@mail.gmail.com>	<50B3A263.5020109@cs.utoronto.ca>	<CADEZfNg-jDeqRhP43EANm95oXbPV=LdZx7iz9+4OiVH+qZNdbQ@mail.gmail.com>	<50B3CD06.1040605@cs.utoronto.ca> <CAG0O4LvsqiXXLNwS9c70RHams0263psigkA6G3ojLHBYWmh0DA@mail.gmail.com>
In-Reply-To: <CAG0O4LvsqiXXLNwS9c70RHams0263psigkA6G3ojLHBYWmh0DA@mail.gmail.com>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
X-IsSubscribed: yes
Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe@cygwin.com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-help@cygwin.com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner@cygwin.com
Mail-Followup-To: cygwin@cygwin.com
Delivered-To: mailing list cygwin@cygwin.com

Wow... double dose of TOFU

On 26/11/2012 3:37 PM, Massi wrote:
> I have the very same problem, not at startup, but when compiling a few
> packages.
> Killing all the windows aplications and processes would help with some packages,
> but not all. Which makes cygwin completely useless.

What does the output of `rebase -is' show? Any conflicts (marked with 
'*')? Mine uses the address range 0x5fe50000..0x6fff7000, with 
cygiconv-2.dll residing at 0x67200000. Which made me notice that...

  On 26/11/2012 11:33 AM, Piren wrote:
>>>>>      0 [main] bash 6156 child_info_fork::abort:
>>>>> C:\cygwin\bin\cygiconv-2.dll: Loaded to different address:
>>>>> parent(0x490000) != child(0x630000)
>>>>> bash: fork: retry: Resource temporarily unavailable
... OP's base addresses seem to be missing a trailing zero digit. Or 
two. What kind of rebase run would have done that?

Those low addresses are really crowded with Windows stuff, it's no 
wonder forks are failing when dlls land there; for me, 0x630000 is in 
the middle of a thread stack, and 0x490000 is the middle of the default 
Windows heap. Granted, both are subject to ASLR, but I tried multiple 
times and there was always something at those two addresses.

For both of you, what gets printed if you fire up cmd.exe, cd to the 
cygwin/bin dir, and invoke `cat /proc/self/maps' ? That should always 
succeed, because it doesn't call fork().

Ryan


--
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

