Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 31 Dec 2007 14:20:51 -0800
From:      Julian Elischer <julian@elischer.org>
To:        Markus Hoenicka <markus.hoenicka@mhoenicka.de>
Cc:        freebsd-hackers@freebsd.org
Subject:   Re: dlopen(), atexit() crash on FreeBSD (testcase included)
Message-ID:  <47796B43.9050704@elischer.org>
In-Reply-To: <18297.20596.564077.568365@yeti.mininet>
References:  <18297.6718.750894.937199@yeti.mininet>	<20071231142620.39f2fbd2@kan.dnsalias.net> <18297.20596.564077.568365@yeti.mininet>

next in thread | previous in thread | raw e-mail | index | archive | help
Markus Hoenicka wrote:
> Alexander Kabaev writes:
>  > As designed. atexit should not be used by shared objects that do not
>  > expect themselves to live until actual exit() happens. ELF provides
>  > proper _init/_fini sections to support shared object
>  > initialization/destruction.
>  > 
> 
> That is, the only real solution to this problem is to convince the
> Firebird folks to remove their atexit() calls from the client
> libraries? I'll try, but I'm not very confident this is going to
> work. Also, I'm wondering how other OSes handle this. I don't see this
> code crash on Linux, contrary to its design as you say.
> 
> Thanks anyway to you, and to Jason Evans, for your replies.

Not sure but I'd guess that each library calls its at_exit entrypoints
as part of its unload handling.

> 
> regards,
> Markus
> 




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?47796B43.9050704>