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 55
I was having this issue but running rebaseall wouldn't fix the problem. I was attempting to run git svn dcommit and seeing the remap errors mentioned no matter how many times I ran rebaseall and/or rebooted.
Here's a sample of what I saw. Note the reference to address 0x6FA00000
$ git svn dcommit Committing to 844 [main] perl 1136 C:\cygwin\bin\perl.exe: * fatal error - unable to remap C:\cygwin\bin\cygdb-4.5.dll to same address as parent: 0x58B40000 != **0x6FA00000 Stack trace: Frame
Function Args 0082B458 6102792B (0082B458, 00000000, 00000000, 00000000) 0082B748 6102792B (6117DC60, 00008000, 00000000, 6117F977) 0082C778 61004F3B (611A6FAC, 61247BCC, 58B40000, 6FA00000) End of stack trace 3 [main] perl 4680 fork: child 1136 - died waiting for dll loading, errno 11
I don't think it's important but I'm running on Windows7 Enterprise 32 bit using my company's corporate image.
I was able to fix this following the advice I found on the Chromium wiki:
http://code.google.com/p/chromium/wiki/CygwinDllRemappingFailure
I used ListDlls.exe (http://technet.microsoft.com/en-us/sysinternals/bb896656.aspx) from cygwin to capture output of DLLs loaded in running processes and grep'ed for the address causing issues:
$ ./ListDlls.exe | tee foo
$ cat foo | grep 6fa000...
0x6fa00000 0x3c000 9.05.0005.9574 C:\PROGRA~1\Sophos\SOPHOS~1\SOPHOS~1.DLL
This matched load address of a DLL provided by Sophos Security which my IT group has running on our machines by default and was the cause of the failure. rebaseall didn't have a chance to fix the problem because the Sophos provided DLL isn't part of cygwin.
The Chromium wiki said to choose a base address less than the DLL causing the issue so I picked 0x60000000. You may have to pick a different base address depending on the offending DLL you might see.
I reran rebaseall from a cmd.exe prompt and no other cygwin processes running.
c:\cygwin\bin>ash /usr/bin/rebaseall -b 0x60000000
After restarting my cygwin shell git svn dcommit worked.