|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
[2011-12-30 19:10 UTC] fedora at famillecollet dot com
Description:
------------
With PHP build in ZTS mode, apache in worker mode segfault during launch
Test script:
---------------
$ gdb /usr/sbin/httpd.worker
(gdb) run -X
Expected result:
----------------
no error
Actual result:
--------------
(gdb) run -X
...
Program received signal SIGSEGV, Segmentation fault.
0x00007fffec8ca897 in _zend_hash_add_or_update (ht=0x55555585a2e8, arKey=<optimized out>, nKeyLength=17, pData=0x7fffffffde70, nDataSize=24, pDest=0x0, flag=1)
at /usr/src/debug/php5.4-201112300630/Zend/zend_hash.c:268
268 HANDLE_BLOCK_INTERRUPTIONS();
(gdb) bt
#0 0x00007fffec8ca897 in _zend_hash_add_or_update
(ht=0x55555585a2e8, arKey=<optimized out>, nKeyLength=17,
pData=0x7fffffffde70, nDataSize=24, pDest=0x0, flag=1)
at /usr/src/debug/php5.4-201112300630/Zend/zend_hash.c:268
#1 0x00007fffec979217 in real_value_hnd
(cmd=0x7fffffffe1a0, dummy=0x55555585a2e8, name=0x5555558c40b8
"register_globals", value=0x7fffffffded0 "0", status=4)
at /usr/src/debug/php5.4-201112300630/sapi/apache2handler/apache_config.c:73
#2 0x00007fffec9792ae in real_flag_hnd
(cmd=0x7fffffffe1a0, dummy=0x55555585a2e8, arg1=0x5555558c40b8
"register_globals", arg2=0x5555558c40d0 "off", status=<optimized out>)
at /usr/src/debug/php5.4-201112300630/sapi/apache2handler/apache_config.c:98
#3 0x0000555555580483 in invoke_cmd
(cmd=0x7fffecc918f8, parms=0x7fffffffe1a0, mconfig=0x55555585a2e8,
args=0x55555582f224 "")
at /usr/src/debug/httpd-2.2.21/server/config.c:810
#4 0x00005555555826fa in ap_walk_config_sub (section_vector=0x5555557dc798,
parms=0x7fffffffe1a0, current=0x55555582f1d0)
at /usr/src/debug/httpd-2.2.21/server/config.c:1163
#5 ap_walk_config (current=0x55555582f1d0, parms=0x7fffffffe1a0,
section_vector=0x5555557dc798)
at /usr/src/debug/httpd-2.2.21/server/config.c:1196
#6 0x0000555555583612 in ap_process_config_tree (s=<optimized out>,
conftree=<optimized out>, p=0x5555557b7158, ptemp=<optimized out>)
at /usr/src/debug/httpd-2.2.21/server/config.c:1765
#7 0x000055555556c314 in main (argc=2, argv=0x7fffffffe418)
at /usr/src/debug/httpd-2.2.21/server/main.c:644
Patchesbug60627.patch (last revision 2012-01-04 07:46 UTC by laruence@php.net)Pull RequestsHistoryAllCommentsChangesGit/SVN commits
|
|||||||||||||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Sat Oct 25 00:00:02 2025 UTC |
OK, managed to get gdb into the zone: # gdb /usr/local/apache2/bin/httpd GNU gdb 6.8 ... This GDB was configured as "i386-pc-solaris2.11"... (gdb) run -X Starting program: /usr/local/apache2/bin/httpd -X warning: Lowest section in /lib/libpthread.so.1 is .dynamic at 00000074 warning: Lowest section in /lib/libdl.so.1 is .dynamic at 00000074 warning: Lowest section in /lib/librt.so.1 is .dynamic at 00000074 warning: Lowest section in /lib/libthread.so.1 is .dynamic at 00000074 Program received signal SIGSEGV, Segmentation fault. 0xfe8956bb in mutex_lock_impl () from /lib/libc.so.1 (gdb) bt #0 0xfe8956bb in mutex_lock_impl () from /lib/libc.so.1 #1 0xfe895938 in pthread_mutex_lock () from /lib/libc.so.1 #2 0xfe14088d in tsrm_mutex_lock (mutexp=0x0) at /opt/build.d/php-5/tmp/php5.4-201201041430/TSRM/TSRM.c:391 #3 0xfe140e85 in ts_resource_ex (id=0, th_id=0x0) at /opt/build.d/php-5/tmp/php5.4-201201041430/TSRM/TSRM.c:391 #4 0xfe1c3538 in _zend_hash_add_or_update (ht=0x8267cc8, arKey=0x8267cf0 "open_basedir", nKeyLength=13, pData=0x8047894, nDataSize=12, pDest=0x0, flag=1) at /opt/build.d/php-5/tmp/php5.4-201201041430/Zend/zend_hash.c:617 #5 0xfe280bbe in real_value_hnd (dummy=0x8267cc8, name=0x8267cf0 "open_basedir", value=0x8267d00 "/data/web/markus:/usr/local/apache2/php/lib/php", status=4) at /opt/build.d/php-5/tmp/php5.4-201201041430/sapi/apache2handler/apache_config.c:73 #6 0x0808fa2a in invoke_cmd (cmd=0xfe560cf0, parms=0x8047c70, mconfig=0x8267cc8, args=0x81a1656 "") at config.c:316 #7 0x08267cc8 in ?? () #8 0x08267cf0 in ?? () #9 0x08267d00 in ?? () #10 0x00000004 in ?? () #11 0x00000000 in ?? ()fwiw, here's file and linkeage info: # file /usr/local/apache2/modules/libphp5.so /usr/local/apache2/modules/libphp5.so: ELF 32-bit LSB dynamic lib 80386 Version 1, dynamically linked, not stripped # ldd /usr/local/apache2/modules/libphp5.so libcrypt.so.1 => /usr/lib/libcrypt.so.1 libc-client.so => /usr/local/imap/lib/libc-client.so libresolv.so.2 => /lib/libresolv.so.2 librt.so.1 => /lib/librt.so.1 libmysqlclient.so.18 => /usr/local/mysql/lib/libmysqlclient.so.18 libcrypto.so.1.0.0 => /usr/local/ssl/lib/libcrypto.so.1.0.0 libssl.so.1.0.0 => /usr/local/ssl/lib/libssl.so.1.0.0 libpam.so.1 => /lib/libpam.so.1 libintl.so.8 => /opt/csw/lib/libintl.so.8 libdb-4.7.so => /opt/csw/lib/libdb-4.7.so libz.so => /opt/csw/lib/libz.so libm.so.2 => /lib/libm.so.2 libnsl.so.1 => /lib/libnsl.so.1 libsocket.so.1 => /lib/libsocket.so.1 libxml2.so.2 => /lib/libxml2.so.2 libc.so.1 => /lib/libc.so.1 libgcc_s.so.1 => /opt/csw/lib/libgcc_s.so.1 libgen.so.1 => /lib/libgen.so.1 libmd.so.1 => /lib/libmd.so.1 libthread.so.1 => /lib/libthread.so.1 libz.so.1 => /lib/libz.so.1 libdl.so.1 => /lib/libdl.so.1 libiconv.so.2 => /opt/csw/lib/libiconv.so.2 libpthread.so.1 => /lib/libpthread.so.1 libmp.so.2 => /lib/libmp.so.2