g2p / git-fs

A filesystem interface to git repositories
GNU General Public License v2.0
232 stars 19 forks source link

Can't run git-fs, getting a malloc assertion failed. #3

Closed leemars closed 13 years ago

leemars commented 13 years ago

I run the latest master git-fs and get this error:

Mounting on ".git/fs"
git-fs: malloc.c:3096: sYSMALLOc: Assertion `(old_top == (((mbinptr) (((char *) &((av)->bins[((1) - 1) * 2])) - __builtin_offsetof (struct malloc_chunk, fd)))) && old_size == 0) || ((unsigned long) (old_size) >= (unsigned long)((((__builtin_offsetof (struct malloc_chunk, fd_nextsize))+((2 * (sizeof(size_t))) - 1)) & ~((2 * (sizeof(size_t))) - 1))) && ((old_top)->size & 0x1) && ((unsigned long)old_end & pagemask) == 0)' failed.
error: git-fs died of signal 6

Any hints?

g2p commented 13 years ago

That's unexpected, because git-fs doesn't use memory management directly. What is your platform? Distribution (version), architecture and kernel (uname -rvm), OCaml version, libfuse-dev version… I pushed a new version with some instructions at the bottom of the readme to help you debug this problem.

g2p commented 13 years ago

Also tell me if the CVS version of ocamlfuse solves this problem. There is one unreleased change and it seems related to garbage collection.

leemars commented 13 years ago

Thanks for your replies. I'm using Archlinux.

Here's the kernel info: [code[ $ uname -rvm 2.6.37-ARCH #1 SMP PREEMPT Fri Feb 18 16:58:42 UTC 2011 i686

Here's the packages' version related to git-fs: fuse 2.8.5-1 pcre-ocaml-6.2.2-1 ocaml-batteries-1.3.0-1 ocaml-ounit-1.1.0-4 ocaml-camomile-0.8.1-2 ocaml-findlib-1.2.6-4 camlidl-1.05-1 ocaml-3.12.0-1

It's so strange that it works well f I use the latest git-fs with "MALLOCCHECK=3 ./debug/git-fs debug", but I still get the same errors without "MALLOCCHECK=3" argument, regardless of using debug/git-fs or build/git-fs.

leemars commented 13 years ago

After I tried the CVS version of ocamlfuse, the problem solved. Seems like the problem of ocamlfuse, hooray~ :D