I have cygwin and git. I'm trying to commit with git to svn - git svn dcommit
. But it fails with strange error:
$ git svn dcommit 4 [main] perl 5536 C:\cygwin\bin\perl.exe: *** fatal error - unable to remap \\?\C:\cygwin\lib\perl5\5.10\i686-cygwin\auto\List\Util\Util.dll to same address as parent: 0xA20000 != 0xB40000 Stack trace: Frame Function Args 0088B508 6102749B (0088B508, 00000000, 00000000, 00000000) 0088B7F8 6102749B (61177B80, 00008000, 00000000, 61179977) 0088C828 61004AFB (611A136C, 6125AB3C, 00A20000, 00B40000) End of stack trace
How can I fix it ? Thanks.
P.S. My system is windows 7 64 bit.
Update
reabase
helped. but I had to reboot after executing rebase.
Did you try a rebaseall
like described here?
When you are working with Cygwin, sometimes you will get an error like this
unable to remap some.dll to same address as parent someapp 4292 fork:
child 3964 - died waiting for dll loading, errno 11"
Then you would need to run rebaseall.
In order to run it, close all your Cygwin windows, Execute<cygwin_home>\bin\ash.exe
. It will open a new console window. Executerebaseall
there.
Once it has completed, you can go back to running Cygwin again without any issues :-)
The OP gor reports he had to reboot to make rebaseall
work.
Dan Moulding mentions in the comments:
I'll just add that closing all Cygwin windows may not be sufficient.
You should make sure all Cygwin processes and services are terminated and/or stopped (ps -a
fromash
should show nothing butash
andps
) before rebasing.
rsenna reports in the comments:
For an explanation of why this is needed, see
fatal error - unable to remap to same address as parent
: Cygwin, Ruby on Rails, System callsSo what actually is happening?
Well, in this case, the problem was a result of the way Windows manages its.dll
's.Windows uses
ASLR
(address space layout randomization) to manage its.dll
's. It loads your dll's into different areas of memory every time you boot your computer.
If this gets out of whack then the next time you look for that.dll
- you can crash your system. Or if you look in the wrong place, you can crash your system.
So how can this system get out of whack? Well, running your cygwin setup program can affect record keeping, especially if theASLR
has changed but Cygwin is holding on to an older copy (this can happen when setup doesn't complete).ASLR is a great defense against malware or hackers. Hackers can't constantly try new addresses for your
.dll
's without crashing your system.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With