cygwin dlls address issue (cygconv-2.dll), unable to rebaseall

Ryan Johnson ryan.johnson@cs.utoronto.ca
Mon Nov 26 20:57:00 GMT 2012


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



More information about the Cygwin mailing list