There is a possiblility that the mysql library has been unloaded by the DSO loader before the cleanup function that tries to call mysql_thread_end() is called, casusing a segmentation fault. In my particular usecase I've been trying to use a module using a dbd backend for mysql together with the module mod_auth_mysql. The mysql library is dynamically linked when the mod_auth_mysql is loaded, and is unlikned before the cleanup in mod_dbd_mysql is called, leaving a call to an unloaded library. Backtrace of the crash: [Switching to Thread 0xb7d02b50 (LWP 16503)] 0xb7add81d in ?? () (gdb) bt #0 0xb7add81d in ?? () #1 0xb7c44787 in thread_end (data=0x0) at dbd/apr_dbd_mysql.c:1260 #2 0xb7eb9fcb in apr_pool_destroy (pool=0x954a090) at memory/unix/apr_pools.c:2314 #3 0xb7eba22d in apr_pool_terminate () at memory/unix/apr_pools.c:605 #4 0xb7ebc16a in apr_terminate () at misc/unix/start.c:82 #5 0x08065a59 in destroy_and_exit_process (process=0x954e130, process_exit_value=0) at main.c:271 #6 0x08066b78 in main (argc=Cannot access memory at address 0x0 ) at main.c:654 /Viktor