PHP 4.0 Bug #5253: apache segfaults in/after call to dlclose
| From: | mme at myprog dot de | Date: | Wed, 28 Jun 2000 21:42:18 +0000 |
| Subject: | PHP 4.0 Bug #5253: apache segfaults in/after call to dlclose | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-22576@lists.php.net to get a copy of this message | ||
From: mme@myprog.de
Operating system: Linux 2.2.12 (RedHat 6.1 vanilla)
PHP version: 4.0.0 Release
PHP Bug Type: Dynamic loading related
Bug description: apache segfaults in/after call to dlclose
Using the following configure line:
./configure --prefix=/usr/local/packages/php-4.0RC1 --with-gnu-ld --with-apxs
=/usr/local/packages/apache-1.3.12/bin/apxs --with-exec-dir=/usr/local/packages/
php-4.0RC1/bin --with-config-file-path=/usr/local/packages/php-4.0RC1/lib/ --ena
ble-sigchild --with-oci8=/mnt/disk/oracle/product/8.1.6 --enable-versioning
we set up PHP with Oracle support.
Unfortunately, apache decides to bomb afterwards.
Using gdb I traced the problem to a place in os.c,
within the function as_os_dso_unload.
When unloading the php module during startup
(don't know exactly why apache does this), dlclose
crashes. The exact backtrace at this point is:
#0 0x4000a6d1 in _dl_debug_state () at dl-debug.c:56
#1 0x401b14e6 in _dl_close (map=0x8053db8) at dl-close.c:195
#2 0x400d20c0 in dlclose_doit (handle=0x8053db8) at dlclose.c:26
#3 0x4000a3eb in _dl_catch_error (errstring=0x400d3d00,
operate=0x400d20a8 <dlclose_doit>, args=0x8053db8) at dl-error.c:141
#4 0x400d2549 in _dlerror_run (operate=0x400d20a8 <dlclose_doit>,
args=0x8053db8) at dlerror.c:125
#5 0x400d208e in dlclose (handle=0x8053db8) at dlclose.c:32
#6 0x400426f5 in ap_os_dso_unload (handle=0x8053db8) at os.c:133
#7 0x4001d615 in unload_module (modi=0x804bd54) at mod_so.c:181
#8 0x4001f75e in run_cleanups (c=0x804c4cc) at alloc.c:1706
#9 0x4001dced in ap_clear_pool (a=0x804bb7c) at alloc.c:531
#10 0x400305af in standalone_main (argc=2, argv=0xbffffc44) at http_main.c:4611
#11 0x400310e5 in ap_main (argc=2, argv=0xbffffc44) at http_main.c:4978
#12 0x80487dd in main (argc=2, argv=0xbffffc44) at main/http_main.c:6902
Apache version is 1.3.12.
It seems, that the problem is only present when using
a php module with Oracle support compiled in.
Any ideas?