Comment 11 for bug 1266492

Revision history for this message
In , Darryl L. Miles (darryl-miles) wrote :

This fancy backtrace stuff is nice and all but... the process must die!

Can't the pthread_once use a non-blocking lock ?

Can the lock be a recursive type ?

Can pthread_trylock() used in this non-critial path ? if already locked, and

if possible to check if locked by our thread-id ?

then we immediately abort the process (causing execution of the process to die, like it should). No backtrace is emitted, great!

How do I stop this fancy backtrace stuff from working ? I want to setup an environment variable to turn it off as a workaround ?

How do I make this fancy backtrace stuff work, by preloading the dlopen() stuff it might need, during initialization of malloc() ? I want to setup an environment variable for that too.

There is no need to actually fix the bug, you are over thinking the issue. But this fancy stuff needs to be turned off or preloaded, before the process gets into an undefined state (due to memory bug).