php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #43655 PHP segfaults in zend_llist_apply
Submitted: 2007-12-21 19:08 UTC Modified: 2007-12-30 01:00 UTC
From: dmitriy at forsalebyowner dot com Assigned:
Status: No Feedback Package: Reproducible crash
PHP Version: 5.2.5 OS: RHEL5.1
Private report: No CVE-ID: None
 [2007-12-21 19:08 UTC] dmitriy at forsalebyowner dot com
Description:
------------
PHP segfaults intermittently on some of the pages on our site. JUdging from strace output it seems to do so when loading Smarty templating engine, but I am not sure how to pinpoint a particular location in the code that causes the crash. I will attach backtrace and strace listing from a crashed Apache child. Please advise what other information I can submit to help fix this issue.

Actual result:
--------------
[root@staging tmp]# gdb /usr/sbin/httpd core.3756 
GNU gdb Red Hat Linux (6.5-25.el5rh)
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-redhat-linux-gnu"...Using host libthread_db library "/lib/libthread_db.so.1".


warning: Can't read pathname for load map: Input/output error.
Loaded symbols for /usr/sbin/httpd
Reading symbols from /lib/libm.so.6...done.
Loaded symbols for /lib/libm.so.6
Reading symbols from /lib/libpcre.so.0...done.
Loaded symbols for /lib/libpcre.so.0
Reading symbols from /lib/libselinux.so.1...done.
Loaded symbols for /lib/libselinux.so.1
Reading symbols from /usr/lib/libaprutil-1.so.0...done.
Loaded symbols for /usr/lib/libaprutil-1.so.0
Reading symbols from /lib/libcrypt.so.1...done.
Loaded symbols for /lib/libcrypt.so.1
Reading symbols from /usr/lib/libldap-2.3.so.0...done.
Loaded symbols for /usr/lib/libldap-2.3.so.0
Reading symbols from /usr/lib/liblber-2.3.so.0...done.
Loaded symbols for /usr/lib/liblber-2.3.so.0
Reading symbols from /lib/libdb-4.3.so...done.
Loaded symbols for /lib/libdb-4.3.so
Reading symbols from /lib/libexpat.so.0...done.
Loaded symbols for /lib/libexpat.so.0
Reading symbols from /usr/lib/libapr-1.so.0...done.
Loaded symbols for /usr/lib/libapr-1.so.0
Reading symbols from /lib/libpthread.so.0...done.
Loaded symbols for /lib/libpthread.so.0
Reading symbols from /lib/libdl.so.2...done.
Loaded symbols for /lib/libdl.so.2
Reading symbols from /lib/libc.so.6...done.
Loaded symbols for /lib/libc.so.6
Reading symbols from /lib/ld-linux.so.2...done.
Loaded symbols for /lib/ld-linux.so.2
Reading symbols from /lib/libsepol.so.1...done.
Loaded symbols for /lib/libsepol.so.1
Reading symbols from /lib/libuuid.so.1...done.
Loaded symbols for /lib/libuuid.so.1
Reading symbols from /lib/libresolv.so.2...done.
Loaded symbols for /lib/libresolv.so.2
Reading symbols from /usr/lib/libsasl2.so.2...done.
Loaded symbols for /usr/lib/libsasl2.so.2
Reading symbols from /lib/libssl.so.6...done.
Loaded symbols for /lib/libssl.so.6
Reading symbols from /lib/libcrypto.so.6...done.
Loaded symbols for /lib/libcrypto.so.6
Reading symbols from /usr/lib/libgssapi_krb5.so.2...done.
Loaded symbols for /usr/lib/libgssapi_krb5.so.2
Reading symbols from /usr/lib/libkrb5.so.3...done.
Loaded symbols for /usr/lib/libkrb5.so.3
Reading symbols from /lib/libcom_err.so.2...done.
Loaded symbols for /lib/libcom_err.so.2
Reading symbols from /usr/lib/libk5crypto.so.3...done.
Loaded symbols for /usr/lib/libk5crypto.so.3
Reading symbols from /usr/lib/libz.so.1...done.
Loaded symbols for /usr/lib/libz.so.1
Reading symbols from /usr/lib/libkrb5support.so.0...done.
Loaded symbols for /usr/lib/libkrb5support.so.0
Reading symbols from /lib/libkeyutils.so.1...done.
Loaded symbols for /lib/libkeyutils.so.1
Reading symbols from /lib/libnss_files.so.2...done.
Loaded symbols for /lib/libnss_files.so.2
Reading symbols from /usr/lib/libxml2.so.2...done.
Loaded symbols for /usr/lib/libxml2.so.2
Reading symbols from /usr/lib/httpd/modules/mod_alias.so...done.
Loaded symbols for /etc/httpd/modules/mod_alias.so
Reading symbols from /usr/lib/httpd/modules/mod_authz_host.so...done.
Loaded symbols for /etc/httpd/modules/mod_authz_host.so
Reading symbols from /usr/lib/httpd/modules/mod_autoindex.so...done.
Loaded symbols for /etc/httpd/modules/mod_autoindex.so
Reading symbols from /usr/lib/httpd/modules/mod_dav.so...done.
Loaded symbols for /etc/httpd/modules/mod_dav.so
Reading symbols from /usr/lib/httpd/modules/mod_dav_fs.so...done.
Loaded symbols for /etc/httpd/modules/mod_dav_fs.so
Reading symbols from /usr/lib/httpd/modules/mod_deflate.so...done.
Loaded symbols for /etc/httpd/modules/mod_deflate.so
Reading symbols from /usr/lib/httpd/modules/mod_dir.so...done.
Loaded symbols for /etc/httpd/modules/mod_dir.so
Reading symbols from /usr/lib/httpd/modules/mod_env.so...done.
Loaded symbols for /etc/httpd/modules/mod_env.so
Reading symbols from /usr/lib/httpd/modules/mod_expires.so...done.
Loaded symbols for /etc/httpd/modules/mod_expires.so
Reading symbols from /usr/lib/httpd/modules/mod_headers.so...done.
Loaded symbols for /etc/httpd/modules/mod_headers.so
Reading symbols from /usr/lib/httpd/modules/mod_include.so...done.
Loaded symbols for /etc/httpd/modules/mod_include.so
Reading symbols from /usr/lib/httpd/modules/mod_info.so...done.
Loaded symbols for /etc/httpd/modules/mod_info.so
Reading symbols from /usr/lib/httpd/modules/mod_log_config.so...done.
Loaded symbols for /etc/httpd/modules/mod_log_config.so
Reading symbols from /usr/lib/httpd/modules/mod_mime_magic.so...done.
Loaded symbols for /etc/httpd/modules/mod_mime_magic.so
Reading symbols from /usr/lib/httpd/modules/mod_mime.so...done.
Loaded symbols for /etc/httpd/modules/mod_mime.so
Reading symbols from /usr/lib/httpd/modules/mod_rewrite.so...done.
Loaded symbols for /etc/httpd/modules/mod_rewrite.so
Reading symbols from /usr/lib/httpd/modules/mod_setenvif.so...done.
Loaded symbols for /etc/httpd/modules/mod_setenvif.so
Reading symbols from /usr/lib/httpd/modules/mod_status.so...done.
Loaded symbols for /etc/httpd/modules/mod_status.so
Reading symbols from /usr/lib/httpd/modules/mod_unique_id.so...done.
Loaded symbols for /etc/httpd/modules/mod_unique_id.so
Reading symbols from /usr/lib/httpd/modules/mod_usertrack.so...done.
Loaded symbols for /etc/httpd/modules/mod_usertrack.so
Reading symbols from /usr/lib/httpd/modules/mod_ssl.so...done.
Loaded symbols for /etc/httpd/modules/mod_ssl.so
Reading symbols from /usr/lib/libdistcache.so.1...done.
Loaded symbols for /usr/lib/libdistcache.so.1
Reading symbols from /usr/lib/libnal.so.1...done.
Loaded symbols for /usr/lib/libnal.so.1
Reading symbols from /lib/libnsl.so.1...done.
Loaded symbols for /lib/libnsl.so.1
Reading symbols from /usr/lib/httpd/modules/libphp5.so...done.
Loaded symbols for /etc/httpd/modules/libphp5.so
Reading symbols from /usr/lib/libaspell.so.15...done.
Loaded symbols for /usr/lib/libaspell.so.15
Reading symbols from /usr/lib/libpspell.so.15...done.
Loaded symbols for /usr/lib/libpspell.so.15
Reading symbols from /usr/lib/libgmp.so.3...done.
Loaded symbols for /usr/lib/libgmp.so.3
Reading symbols from /usr/lib/libcurl.so.3...done.
Loaded symbols for /usr/lib/libcurl.so.3
Reading symbols from /usr/lib/libbz2.so.1...done.
Loaded symbols for /usr/lib/libbz2.so.1
Reading symbols from /usr/lib/libidn.so.11...done.
Loaded symbols for /usr/lib/libidn.so.11
Reading symbols from /usr/lib/libstdc++.so.6...done.
Loaded symbols for /usr/lib/libstdc++.so.6
Reading symbols from /lib/libgcc_s.so.1...done.
Loaded symbols for /lib/libgcc_s.so.1
Reading symbols from /usr/lib/php/modules/bcmath.so...done.
Loaded symbols for /usr/lib/php/modules/bcmath.so
Reading symbols from /usr/lib/php/modules/memcache.so...done.
Loaded symbols for /usr/lib/php/modules/memcache.so
Reading symbols from /usr/lib/php/modules/mysql.so...done.
Loaded symbols for /usr/lib/php/modules/mysql.so
Reading symbols from /usr/lib/libmysqlclient.so.15...done.
Loaded symbols for /usr/lib/libmysqlclient.so.15
Reading symbols from /usr/lib/php/modules/gd.so...done.
Loaded symbols for /usr/lib/php/modules/gd.so
Reading symbols from /usr/lib/libfreetype.so.6...done.
Loaded symbols for /usr/lib/libfreetype.so.6
Reading symbols from /usr/lib/libpng12.so.0...done.
Loaded symbols for /usr/lib/libpng12.so.0
Reading symbols from /usr/lib/libjpeg.so.62...done.
Loaded symbols for /usr/lib/libjpeg.so.62
Reading symbols from /usr/lib/php/modules/dom.so...done.
Loaded symbols for /usr/lib/php/modules/dom.so
Reading symbols from /usr/lib/php/modules/xmlrpc.so...done.
Loaded symbols for /usr/lib/php/modules/xmlrpc.so
Core was generated by `/usr/sbin/httpd'.
Program terminated with signal 11, Segmentation fault.
#0  zend_llist_apply (l=0x0, func=0x10d6490 <user_tick_function_call>) at /home/brewbuilder/rpms/BUILD/php-5.2.5/Zend/zend_llist.c:192
192     /home/brewbuilder/rpms/BUILD/php-5.2.5/Zend/zend_llist.c: No such file or directory.
        in /home/brewbuilder/rpms/BUILD/php-5.2.5/Zend/zend_llist.c
(gdb) bt full
#0  zend_llist_apply (l=0x0, func=0x10d6490 <user_tick_function_call>) at /home/brewbuilder/rpms/BUILD/php-5.2.5/Zend/zend_llist.c:192
        element = <value optimized out>
#1  0x010d3840 in run_user_tick_functions (tick_count=1) at /home/brewbuilder/rpms/BUILD/php-5.2.5/ext/standard/basic_functions.c:5327
No locals.
#2  0x0115aad8 in php_tick_iterator (data=0x93c9860, arg=0xbfbf0570) at /home/brewbuilder/rpms/BUILD/php-5.2.5/main/php_ticks.c:64
        func = (void (*)(int)) 0x10d3810 <run_user_tick_functions>
#3  0x01187b01 in zend_llist_apply_with_argument (l=0x12d6144, func=0x115aac0 <php_tick_iterator>, arg=0xbfbf0570)
    at /home/brewbuilder/rpms/BUILD/php-5.2.5/Zend/zend_llist.c:236
        element = (zend_llist_element *) 0x93c9858
#4  0x0115aab6 in php_run_ticks (count=1) at /home/brewbuilder/rpms/BUILD/php-5.2.5/main/php_ticks.c:71
No locals.
#5  0x011b1004 in ZEND_TICKS_SPEC_CONST_HANDLER (execute_data=0xbfbf078c) at /home/brewbuilder/rpms/BUILD/php-5.2.5/Zend/zend_vm_execute.h:2379
        opline = (zend_op *) 0x94e3174
#6  0x011b287d in execute (op_array=0x94d3084) at /home/brewbuilder/rpms/BUILD/php-5.2.5/Zend/zend_vm_execute.h:92
        execute_data = {opline = 0x94e3174, function_state = {function_symbol_table = 0x94d3118, function = 0x94d3084, reserved = {0xbfbf07b8, 0x1187f6d, 
      0x94d3118, 0xbfbf0810}}, fbc = 0x0, op_array = 0x94d3084, object = 0x0, Ts = 0xbfbf05c0, CVs = 0xbfbf05b0, original_in_execution = 1 '\001', 
  symbol_table = 0x12d65f0, prev_execute_data = 0xbfbf08dc, old_error_reporting = 0x0}
#7  0x011bdcf5 in ZEND_INCLUDE_OR_EVAL_SPEC_CONST_HANDLER (execute_data=0xbfbf08dc) at /home/brewbuilder/rpms/BUILD/php-5.2.5/Zend/zend_vm_execute.h:2039
        saved_object = (zval *) 0x0
        saved_function = (zend_function *) 0x94d3b64
        opline = (zend_op *) 0x94de7cc
        new_op_array = (zend_op_array *) 0x94d3084
        original_return_value = (zval **) 0xbfbf09e4
        inc_filename = <value optimized out>
        tmp_inc_filename = {value = {lval = 32, dval = -0.12122297286987349, str = {val = 0x20 <Address 0x20 out of bounds>, len = -1077999496}, ht = 0x20, 
    obj = {handle = 32, handlers = 0xbfbf0878}}, refcount = 19610192, type = 124 '|', is_ref = 218 '&#65533;'}
        failure_retval = 0 '\0'
#8  0x011b287d in execute (op_array=0x94d3b64) at /home/brewbuilder/rpms/BUILD/php-5.2.5/Zend/zend_vm_execute.h:92
        execute_data = {opline = 0x94de7cc, function_state = {function_symbol_table = 0x94d0a0c, function = 0x94d3084, reserved = {0xbfbf0908, 0x1187f6d, 
      0x94d0a0c, 0xbfbf0960}}, fbc = 0x0, op_array = 0x94d3b64, object = 0x0, Ts = 0xbfbf0890, CVs = 0xbfbf0880, original_in_execution = 1 '\001', 
  symbol_table = 0x12d65f0, prev_execute_data = 0xbfbf0afc, old_error_reporting = 0x0}
#9  0x011bdcf5 in ZEND_INCLUDE_OR_EVAL_SPEC_CONST_HANDLER (execute_data=0xbfbf0afc) at /home/brewbuilder/rpms/BUILD/php-5.2.5/Zend/zend_vm_execute.h:2039
        saved_object = (zval *) 0x0
        saved_function = (zend_function *) 0x94d3844
        opline = (zend_op *) 0x94d1fe0
        new_op_array = (zend_op_array *) 0x94d3b64
        original_return_value = (zval **) 0xbfbf0c24
        inc_filename = <value optimized out>
        tmp_inc_filename = {value = {lval = 2, dval = 1.3050851297291571e-307, str = {val = 0x2 <Address 0x2 out of bounds>, len = 3634720}, ht = 0x2, obj = {
      handle = 2, handlers = 0x377620}}, refcount = 3748128, type = 57 '9', is_ref = 0 '\0'}
        failure_retval = 0 '\0'
#10 0x011b287d in execute (op_array=0x94d3844) at /home/brewbuilder/rpms/BUILD/php-5.2.5/Zend/zend_vm_execute.h:92
        execute_data = {opline = 0x94d1fe0, function_state = {function_symbol_table = 0x94d0a0c, function = 0x94d3b64, reserved = {0xbfbf0b28, 0x1187f6d, 
      0x94d0a0c, 0xbfbf0b80}}, fbc = 0x0, op_array = 0x94d3844, object = 0x0, Ts = 0xbfbf09e0, CVs = 0xbfbf09d0, original_in_execution = 1 '\001', 
  symbol_table = 0x12d65f0, prev_execute_data = 0xbfbf117c, old_error_reporting = 0x0}
#11 0x011bdcf5 in ZEND_INCLUDE_OR_EVAL_SPEC_CONST_HANDLER (execute_data=0xbfbf117c) at /home/brewbuilder/rpms/BUILD/php-5.2.5/Zend/zend_vm_execute.h:2039
        saved_object = (zval *) 0x0
        saved_function = (zend_function *) 0x94d1074
        opline = (zend_op *) 0x94e07d4
        new_op_array = (zend_op_array *) 0x94d3844
        original_return_value = (zval **) 0xbfbf1930
        inc_filename = <value optimized out>
        tmp_inc_filename = {value = {lval = -1077998608, dval = 2.7053343204071055e-313, str = {val = 0xbfbf0bf0 "", len = 12}, ht = 0xbfbf0bf0, obj = {
      handle = 3216968688, handlers = 0xc}}, refcount = 105474587, type = 116 't', is_ref = 84 'T'}
        failure_retval = 0 '\0'
#12 0x011b287d in execute (op_array=0x94d1074) at /home/brewbuilder/rpms/BUILD/php-5.2.5/Zend/zend_vm_execute.h:92
---Type <return> to continue, or q <return> to quit---
        execute_data = {opline = 0x94e07d4, function_state = {function_symbol_table = 0x94d0a0c, function = 0x94d3844, reserved = {0xbfbf11a8, 0x1187f6d, 
      0x94d0a0c, 0xbfbf1210}}, fbc = 0x0, op_array = 0x94d1074, object = 0x0, Ts = 0xbfbf0c20, CVs = 0xbfbf0bf0, original_in_execution = 1 '\001', 
  symbol_table = 0x12d65f0, prev_execute_data = 0xbfbf194c, old_error_reporting = 0x0}
#13 0x011ea358 in ZEND_INCLUDE_OR_EVAL_SPEC_CV_HANDLER (execute_data=0xbfbf194c) at /home/brewbuilder/rpms/BUILD/php-5.2.5/Zend/zend_vm_execute.h:19833
        saved_object = (zval *) 0x0
        saved_function = (zend_function *) 0x92dd928
        opline = (zend_op *) 0x92e4f94
        new_op_array = (zend_op_array *) 0x94d1074
        original_return_value = (zval **) 0xbfbf19e4
        inc_filename = <value optimized out>
        tmp_inc_filename = {value = {lval = 154029864, dval = 7.6100864235999371e-316, str = {val = 0x92e4f28 "\004", len = 0}, ht = 0x92e4f28, obj = {
      handle = 154029864, handlers = 0x0}}, refcount = 0, type = 236 '&#65533;', is_ref = 29 '\035'}
        failure_retval = 0 '\0'
#14 0x011b287d in execute (op_array=0x92dd928) at /home/brewbuilder/rpms/BUILD/php-5.2.5/Zend/zend_vm_execute.h:92
        execute_data = {opline = 0x92e4f94, function_state = {function_symbol_table = 0x9304154, function = 0x94d1074, reserved = {0xbfbf1978, 0x1187f6d, 
      0x92ddb98, 0xbfbf3b04}}, fbc = 0x0, op_array = 0x92dd928, object = 0x0, Ts = 0xbfbf12b0, CVs = 0xbfbf1280, original_in_execution = 0 '\0', 
  symbol_table = 0x12d65f0, prev_execute_data = 0x0, old_error_reporting = 0x0}
#15 0x01191b1a in zend_execute_scripts (type=8, retval=<value optimized out>, file_count=3) at /home/brewbuilder/rpms/BUILD/php-5.2.5/Zend/zend.c:1134
        retval2 = (zval *) 0x1
        old_exception = (zval *) 0x1148c5f
        files = 0xbfbf1a10 "&#65533;;&#65533;&#65533;"
        i = 0
        file_handle = (zend_file_handle *) 0xbfbf3b04
        orig_op_array = (zend_op_array *) 0x0
        orig_retval_ptr_ptr = (zval **) 0x0
        local_retval = (zval *) 0x0
#16 0x0114acb3 in php_execute_script (primary_file=0xbfbf3bf8) at /home/brewbuilder/rpms/BUILD/php-5.2.5/main/main.c:2004
        realfile = "\000\000\000\000\000\000\000\000P:+\001&#65533;J3\t&#65533;*&#65533;&#65533;&#65533;*&#65533;&#65533;\236W\027\001&#65533;J3\t\000\000\000\000\230*&#65533;&#65533;\000\000\000\000\237\017\000\000\000\000\000\000&#65533;u\001\000&#65533;^J\t\000\000\000\000\000\000\000\000&#65533;&#65533;1\tn;\025\001&#65533;8M\t&#65533;&#65533;7\t\020\000\000\000P:+\001P:+\001&#65533;a-\001h:&#65533;&#65533;\024H\025\001&#65533;^J\t\237\017\000\000ecode\000&#65533;&#65533;\214\000\000\000&#65533;=&#65533;&#65533;\002\000\000\000&#65533;x\031\001getlastmod\000\000L=&#65533;&#65533;\214\000\000\000&#65533;=&#65533;&#65533;\002\000\000\000&#65533;x\031\001getmyinode\000\000L=&#65533;&#65533;\214\000\000\000\b\000\000\000\002\000\000\000"...
        prepend_file_p = (zend_file_handle *) 0xbfbf3b04
        append_file_p = (zend_file_handle *) 0x0
        prepend_file = {type = 5 '\005', filename = 0x92d2490 "__global.inc.php", opened_path = 0x0, handle = {fd = 154000120, fp = 0x92ddaf8, stream = {
      handle = 0x92ddaf8, reader = 0x11614e0 <_php_stream_read>, closer = 0x114bee0 <stream_closer_for_zend>, fteller = 0x114beb0 <stream_fteller_for_zend>, 
      interactive = 0}}, free_filename = 0 '\0'}
        append_file = {type = 0 '\0', filename = 0x0, opened_path = 0x0, handle = {fd = 0, fp = 0x0, stream = {handle = 0x0, reader = 0, closer = 0, 
      fteller = 0, interactive = 0}}, free_filename = 0 '\0'}
        old_cwd = 0xbfbf1a20 "/"
        retval = <value optimized out>
#17 0x0121706d in php_handler (r=0x9333728) at /home/brewbuilder/rpms/BUILD/php-5.2.5/sapi/apache2handler/sapi_apache2.c:631
        __bailout = {{__jmpbuf = {19610192, 152285084, 19543786, -1077986232, -1209853255, 159206899}, __mask_was_saved = 0, __saved_mask = {__val = {
        959972096, 875706417, 154272808, 893466433, 24, 10886500, 154351400, 154216984, 24, 5206153, 154351400, 154216984, 3216980984, 10800598, 154351344, 
        20, 154351800, 154351792, 154216984, 154217056, 154351800, 154351792, 154216984, 0, 151806712, 154272808, 154351400, 154272808, 154351792, 5264713, 
        154351792, 154216984}}}}
        ctx = (php_struct * volatile) 0x9320440
        conf = (void *) 0x931f370
        brigade = (apr_bucket_brigade * volatile) 0x9320a68
        bucket = <value optimized out>
        rv = <value optimized out>
        parent_req = (request_rec * volatile) 0x0
#18 0x00a4173d in ap_run_handler (r=0x9333728) at /home/brewbuilder/rpms/BUILD/httpd-2.2.6/server/config.c:157
        n = 5
        rv = <value optimized out>
#19 0x00a44ed7 in ap_invoke_handler (r=0x9333728) at /home/brewbuilder/rpms/BUILD/httpd-2.2.6/server/config.c:372
        handler = 0x0
---Type <return> to continue, or q <return> to quit---
        result = <value optimized out>
        old_handler = 0x913af90 "php5-script"
        ignore = <value optimized out>
#20 0x00a50ebe in ap_process_request (r=0x9333728) at /home/brewbuilder/rpms/BUILD/httpd-2.2.6/modules/http/http_request.c:258
        access_status = <value optimized out>
#21 0x00a4dcaf in ap_process_http_connection (c=0x9312a18) at /home/brewbuilder/rpms/BUILD/httpd-2.2.6/modules/http/http_core.c:184
        r = (request_rec *) 0x9333728
        csd = (apr_socket_t *) 0x9312880
#22 0x00a4932d in ap_run_process_connection (c=0x9312a18) at /home/brewbuilder/rpms/BUILD/httpd-2.2.6/server/connection.c:43
        n = 0
        rv = <value optimized out>
#23 0x00a4942c in ap_process_connection (c=0x9312a18, csd=0x9312880) at /home/brewbuilder/rpms/BUILD/httpd-2.2.6/server/connection.c:178
        rc = 0
#24 0x00a553b2 in child_main (child_num_arg=<value optimized out>) at /home/brewbuilder/rpms/BUILD/httpd-2.2.6/server/mpm/prefork/prefork.c:640
        numdesc = 1
        pdesc = (const apr_pollfd_t *) 0x9310930
        current_conn = (conn_rec *) 0x9312a18
        csd = (void *) 0x9312880
        ptrans = (apr_pool_t *) 0x9312848
        allocator = (apr_allocator_t *) 0x93107b8
        status = <value optimized out>
        i = 2
        lr = <value optimized out>
        pollset = (apr_pollset_t *) 0x93108d0
        sbh = (ap_sb_handle_t *) 0x93108c8
        bucket_alloc = (apr_bucket_alloc_t *) 0x9316bb0
        last_poll_idx = 1
#25 0x00a556c1 in make_child (s=0x90893f0, slot=6) at /home/brewbuilder/rpms/BUILD/httpd-2.2.6/server/mpm/prefork/prefork.c:736
        pid = 0
#26 0x00a560c3 in ap_mpm_run (_pconf=0x9087550, plog=0x90b5608, s=0x90893f0) at /home/brewbuilder/rpms/BUILD/httpd-2.2.6/server/mpm/prefork/prefork.c:871
        status = 0
        pid = {pid = -1, in = 0x90b5608, out = 0x90816e0, err = 0x2}
        child_slot = <value optimized out>
        exitwhy = APR_PROC_EXIT
        processed_status = <value optimized out>
        index = <value optimized out>
        remaining_children_to_start = 0
        rv = <value optimized out>
#27 0x00a2d26d in main (argc=1407551829, argv=0xf36e7ee8) at /home/brewbuilder/rpms/BUILD/httpd-2.2.6/server/main.c:730
        c = 0 '\0'
        configtestonly = 0
        confname = 0xa58560 "conf/httpd.conf"
        def_server_root = 0xa58570 "/etc/httpd"
        temp_error_log = 0x0
        error = <value optimized out>
        process = (process_rec *) 0x90855c8
        server_conf = <value optimized out>
        pglobal = (apr_pool_t *) 0x9085548
        pconf = (apr_pool_t *) 0x9087550
        plog = (apr_pool_t *) 0x90b5608
        ptemp = (apr_pool_t *) 0x90b9618
        pcommands = (apr_pool_t *) 0x9089558
        opt = (apr_getopt_t *) 0x90895f0
        rv = 0
        optarg = 0x9081520 " \025\b\t \025\b\t\001"
(gdb) 


Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2007-12-21 20:41 UTC] dmitriy at forsalebyowner dot com
Seems like we figured out which code is causing the crashes. Here is an excerpt.

$GLOBALS['_maxExecutionTime'] = time() + ini_get('max_execution_time');
set_time_limit(ini_get('max_execution_time') + 30);

function _checkTimeout() {
        if (time() < $GLOBALS['_maxExecutionTime']) {
                return;
        } else {
                echo '<div class="errorBox">The script has exceeded a maximum execution time of '.(ini_get('max_execution_time') - 30).' second(s)</div>';
                exit;
        }
}

register_tick_function('_checkTimeout');

declare (ticks = 1);
 [2007-12-30 01:00 UTC] php-bugs at lists dot php dot net
No feedback was provided for this bug for over a week, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".
 
PHP Copyright © 2001-2025 The PHP Group
All rights reserved.
Last updated: Fri Jul 18 19:00:03 2025 UTC