Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to fix "address space is already occupied" error on fetch/commit?

Tags:

git

cygwin

Started recently, basically every time I try to fetch or commit it gives me this weird error. It'll continuously try to "refetch/recommit" until I give up and CtrlC.

C:\cygwin\home\git\new_trunk>git sf
      1 [main] perl 760 child_info_fork::abort: address space needed by 'cygreadline7.dll' (0x960000) is already occupied

C:\cygwin\home\git\new_trunk>git svn dcommit
      1 [main] perl 2672 child_info_fork::abort: address space needed by 'cygreadline7.dll' (0x980000) is already occupied

Any idea why this is happening?

like image 391
iCodeLikeImDrunk Avatar asked Jun 19 '12 18:06

iCodeLikeImDrunk


3 Answers

Rebasing my Cygwin install solved this for me. I followed the doc Rebaseall, running dash as admin from Windows Explorer and then issuing the following:

/usr/bin/rebaseall -v

P.S.: No Cygwin service should be running for this to work.

like image 143
Tarc Avatar answered Sep 23 '22 10:09

Tarc


Take a look at this Cygwin FAQ section and this too. In my case, disabling Avast's Behavior and Filesystem Realtime shields and then restarting Cygwin was the answer.

So, probably, you are running windows programs that hooks their DLLs into forked processes, disrupting addresses and thus causing fork to malfunction.

like image 42
nshy Avatar answered Sep 24 '22 10:09

nshy


I had this same fork() problem when my virus scanner, Symantec Endpoint Protection, was upgraded to 64-bit, but I was still running the 32-bit version of Cygwin. 'Rebaseall' didn't help. Upgrading to the 64-bit version of Cygwin has fixed the problem for me.

like image 45
JRS Avatar answered Sep 24 '22 10:09

JRS