[oi-dev] libmapmalloc and libumem

stes@PANDORA.BE stes at telenet.be
Sun Aug 8 08:46:01 UTC 2021


When I compiled OpenSmalltalk on OpenIndiana, initially it seemed to work but there were sometimes malloc() errors, pointing to some form of memory corruption.

The names of the OpenSmalltalk packages are cog-spur and stack-spur.

Those are also the names that the principal developer of OpenSmalltalk (Eliot Miranda) also uses.

Both cog-spur and stack-spur were sometimes working fine for a while, then crashing either without error message or with some malloc error.
 
I ran cog-spur and stack-spur under valgrind, a tool to debug malloc, but valgrind did not find a problem.

Fortunately I discovered a while ago that OpenIndiana has multiple malloc() libraries.

Since I link against libmapmalloc, a malloc() implementation that only uses mmap() and not brk() or sbrk() , the situation is much better.

The packages are now much more stable and I have not seen a malloc() error any longer although that these are hard to reproduce problems.

Perhaps I should be using libumem instead of libmapmalloc.

Has anyone recommendations on perhaps preference for libumem on OI instead of libmapmalloc ?

David Stes



More information about the oi-dev mailing list