[1.7.0-60] "git gc" still crashes with cmalloc error
I just upgraded to 1.7.0-60 and ran the same "git gc" command that was failing in: http://cygwin.com/ml/cygwin/2009-08/msg00620.html and I got a cmalloc error again. I captured strace output but I don't know how much of it you need. Here are the last few lines before the crash: 56 24175056 [main] git 9052 cygpsid::debug_print: get_sids_info: owner SID = S-1-5-21-1830819319-1975652134-394877016-22497 16 24175072 [main] git 9052 cygpsid::debug_print: get_sids_info: group SID = S-1-5-21-1830819319-1975652134-394877016-513 16 24175088 [main] git 9052 get_info_from_sd: ACL 124, uid 32497, gid 10513 24 24175112 [main] git 9052 fhandler_base::fstat_helper: 0 = fstat (, 0x22BBE0) st_atime=4A8A4022 st_size=2766869216, st_mode=0x8124, st_ino=27303072741378156, sizeof=96 32 24175144 [main] git 9052 MapView: 0x6D5C (status 0x0) = NtMapViewOfSection (h:65C, addr:0, len:33554432, off:5600, protect:80, type:0) 68 24175212 [main] git 9052 mmap64: 0x6D5C = mmap() 28 24175240 [main] git 9052 munmap: munmap (addr 7036, len 33554432) 976 24176216 [main] git 9052 build_fh_pc: fh 0x6120D36C 91 24176307 [main] git 9052 munmap: 0 = munmap(): 7036 25 24176332 [main] git 9052 mmap64: addr 0, len 33554432, prot 1, flags 2, fd 3, off 1325400064 779 24177111 [main] git 9052 seterrno_from_win_error: /ext/build/netrel/src/cygwin-1.7.0-60/winsup/cygwin/cygheap.cc:145 windows error 487 15 24177126 [main] git 9052 geterrno_from_win_error: windows error 487 == errno 22 15 24177141 [main] git 9052 __set_errno: void seterrno_from_win_error(const char*, int, DWORD):319 val 22 68 24177209 [main] git 9052 C:\cygwin2\bin\git.exe: *** fatal error - cmalloc would have returned NULL -- 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
Re: [1.7] "C:\cygwin\bin\git.exe: *** fatal error - could not load shell32, Win32 error 487"
I've seen this problem in cygwin 1.5 and it appeared to be related to the way that symlinks were implemented. It became such a problem that I had to remove all my use of symlinks in my git repository at that time. I switched to cygwin 1.7 and its symlinks seem to be much better behaved. Since you're seeing the problem in 1.7, I'll speculate based on my best guess as to what this error message means. In the 1.5 code, I saw this happen during cygwin's calls to NtCreateFile() when symlinks were being accessed. I suspect that NtCreateFile() is simply making some DLL call to another library to do the work and that DLL somehow can't be mapped into cygwin's address space. I tried remapping all the cygwin DLL addresses (I can't remember the command at the moment) but it didn't fix anything. Maybe someone on the list can shed more light on whether my theory is correct and whether there's anything that can be done to fix it. On 2009-10-01 08:37:56 -0400, Jon TURNEY said: I have a problem with git, which only seems to occur with the mesa repository (which is very large, which may be something to do with the problem). I am able to work with all the other X.Org repositories without problems. Here's a short script which demonstrates the problem for me: git clone git://anongit.freedesktop.org/git/mesa/mesa # repository is large, this may take some time cd mesa git checkout -f -b local 811aa02c7a0f4804189a8978395f07d27fb726ec touch blah git add blah git commit -m "blah" git checkout -f master fails with 2 [main] git 3624 C:\cygwin\bin\git.exe: *** fatal error - could not load shell32, Win32 error 487 Hangup # to repeat the failure rm .git/index.lock git checkout -f master I had a brief look at the relevant part of the cygwin source but I'm baffled as to how this could be happening. Suggestions on how to debug this and/or confirmations that it can reproduced appreciated. I've tried this with 1.7.0-61 and with the 2009-09-20 snapshot (I can't start anything with the 2009-09-24 snapshot, all processes exit with "The application failed to initialize properl (0xc022)") -- 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