malloc(): warning: recursive call

Ivan Voras ivoras at fer.hr
Sun Sep 3 17:52:09 PDT 2006


Stefan Bethke wrote:

> mail in malloc(): warning: recursive call
> Cosmic rays? Anything I could try to find the cause?

I know what it is, but you won't going to like it. As far as I
understand this happens when a process gets a signal in the middle of
using malloc(), and the signal handler also uses malloc(). The solution
would be not to use malloc() in a signal handler, but this is tricky
since unknown code can use malloc() (e.g. printf()?).

This appears to be "undefined" by standards, but GNU libc allows it
because it makes sense, while phkmalloc dissallows it, causing (me)
considerable problems with certain applications. I hope jemalloc is
better in this respect :)

I don't know how it happened in mail(1) if mail(1) is the FreeBSD version.



More information about the freebsd-stable mailing list