php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #13875 Apache 1.3.22 will start outputing Segmentation fault (11)'s in error_log and sl
Submitted: 2001-10-30 11:54 UTC Modified: 2001-10-30 16:10 UTC
From: getdown at groovy dot org Assigned:
Status: Not a bug Package: Reproducible crash
PHP Version: 4.0.6 OS: Linux 2.4.12-ac1 Glibc 2.2.4 GCC
Private report: No CVE-ID: None
 [2001-10-30 11:54 UTC] getdown at groovy dot org
I cannot reproduce this bug 'on the fly', it just happens often when running
a gzip process on the server that takes up most of the CPU, then apache+php
will have the Segmentation fault (11)'s in the log.  It often won't die
there, or crash, but will still work and later start really spewing the
errors which then the server is inaccessable.  It will then often crash
after doing that for awhile, it seems to need a person accessing the php
pages during the high CPU load to start the 'downward spiral'.  I have 
a backtrace, it seems to be something to do with the passthru function,
since that is so far the place it always shows on the backtraces.  The
passthru function is being used to execute perl scripts on the webserver,
outputing html formatted text, there are arguments to those scripts too
which sometimes are not defined, which I don't think would be the problem,
but am not sure.  I can do more debugging, but may need instructions,
this is the first time I have done anything with gdb.

Details are below, thanks in advance,
Chris Kennedy <getdown@groovy.org>

PHP: version 4.0.6
--with-apache=/u1/sys/src/APACHE/apache_1.3.22
--with-yp
--with-mysql=/opt/mysql
--with-gdbm
--with-config-file-path=/opt/apache/conf
--enable-debug
--enable-ftp
--with-imap
--enable-trans-sid
--enable-calendar
--with-zlib
--with-ldap

APACHE: version 1.3.22
--prefix=/opt/apache
--activate-module=src/modules/php4/libphp4.a
--activate-module=src/modules/standard/mod_frontpage.c
--activate-module=src/modules/ssl/libssl.a

(gdb) run -X
Starting program: /opt/apache/bin/httpd -X
(gdb) bt

#0  0x40008a25 in _dl_lookup_versioned_symbol () from /lib/ld-linux.so.2
#1  0x4000b1fa in fixup () from /lib/ld-linux.so.2
#2  0x4000b3c0 in _dl_runtime_resolve () from /lib/ld-linux.so.2
#3  0x80f6bb7 in php_if_passthru (ht=1, return_value=0x837fac4, this_ptr=0x0,
    return_value_used=0) at exec.c:315
#4  0x818a21a in execute (op_array=0x8351dbc) at ./zend_execute.c:1504
#5  0x8150434 in zend_execute_scripts (type=8, file_count=3) at zend.c:752
#6  0x80a76ff in php_execute_script (primary_file=0xbffff908) at main.c:1206
#7  0x816137c in apache_php_module_main (r=0x8330144, display_source_mode=0)
    at sapi_apache.c:89
#8  0x80a4372 in send_php (r=0x8330144, display_source_mode=0,
    filename=0x8331c7c "/var/www/html/moninter/index.php") at mod_php4.c:536
#9  0x80a43aa in send_parsed_php (r=0x8330144) at mod_php4.c:547
#10 0x8194de9 in ap_invoke_handler (r=0x8330144) at http_config.c:517
#11 0x81aa20f in process_request_internal (r=0x8330144) at http_request.c:1311
#12 0x81aa27a in ap_process_request (r=0x8330144) at http_request.c:1327
#13 0x81a1050 in child_main (child_num_arg=0) at http_main.c:4555
#14 0x81a1235 in make_child (s=0x82c78c4, slot=0, now=1004390980)
    at http_main.c:4668
#15 0x81a13b6 in startup_children (number_to_start=5) at http_main.c:4750
#16 0x81a1a4d in standalone_main (argc=2, argv=0xbffffbe4) at http_main.c:5055
#17 0x81a22cc in main (argc=2, argv=0xbffffbe4) at http_main.c:5415
#18 0x40241551 in __libc_start_main () from //lib/libc.so.6

> bt full
#0  0x40008a25 in _dl_lookup_versioned_symbol () from /lib/ld-linux.so.2
No symbol table info available.
#1  0x4000b1fa in fixup () from /lib/ld-linux.so.2
No symbol table info available.
#2  0x4000b3c0 in _dl_runtime_resolve () from /lib/ld-linux.so.2
No symbol table info available.
#3  0x80f6bb7 in php_if_passthru (ht=1, return_value=0x837fac4, this_ptr=0x0,
    return_value_used=0) at exec.c:315
        arg1 = (pval **) 0x833d63c
        arg2 = (pval **) 0xc
        arg_count = 1
        ret = -1073747940
#4  0x818a21a in execute (op_array=0x8351dbc) at ./zend_execute.c:1504
        original_return_value = (zval **) 0x8390154
        return_value_used = 0
        opline = (zend_op *) 0x839013c
        end = (zend_op *) 0x8390574
        function_state = {function_symbol_table = 0x0, function = 0x82f9ad8,
  reserved = {0x82c33a8, 0xbffff908, 0x815aaf4, 0x0}}
        fbc = (zend_function *) 0x0
        object = {ptr = 0x0}
        Ts = (temp_variable *) 0xbfffe544
        original_in_execution = 0 '\000'
#5  0x8150434 in zend_execute_scripts (type=8, file_count=3) at zend.c:752

        files = 0xbfffe874
        i = 1
        file_handle = (zend_file_handle *) 0xbffff908
        orig_op_array = (zend_op_array *) 0x0
#6  0x80a76ff in php_execute_script (primary_file=0xbffff908) at main.c:1206
        prepend_file_p = (zend_file_handle *) 0x0
        append_file_p = (zend_file_handle *) 0x0
        prepend_file = {type = 210 'O',
  filename = 0x8010100 <Address 0x8010100 out of bounds>,
  opened_path = 0x821a173 "", handle = {fd = -1073743652, fp = 0xbffff8dc},
  free_filename = 184 ','}
        append_file = {type = 188 '<BC>',
  filename = 0x814fd08 "\203<C4>\020\211<EC>]A\220U\211<E5>\203<EC>\b<C7>\005
pened_path = 0x82c37c0 "5", handle = {fd = 135603192, fp = 0x81523f8},
  free_filename = 212 'O'}
        old_cwd = 0xbfffe884 "/root"
#7  0x816137c in apache_php_module_main (r=0x8330144, display_source_mode=0)
    at sapi_apache.c:89
        file_handle = {type = 2 '\002',
  filename = 0x8331c7c "/var/www/html/moninter/index.php",
  opened_path = 0x8351fbc "P\212j", handle = {fd = 137698856, fp = 0x8351e28},
  free_filename = 0 '\000'}
#8  0x80a4372 in send_php (r=0x8330144, display_source_mode=0,
    filename=0x8331c7c "/var/www/html/moninter/index.php") at mod_php4.c:536
        retval = 0
        per_dir_conf = (HashTable *) 0x832e038
#9  0x80a43aa in send_parsed_php (r=0x8330144) at mod_php4.c:547
No locals.
#10 0x8194de9 in ap_invoke_handler (r=0x8330144) at http_config.c:517
        handp = (fast_handler_rec *) 0x8334fac
        handler = 0x8331f2c "application/x-httpd-php"
        p = 0x0
        handler_len = 23
        result = 500
#11 0x81aa20f in process_request_internal (r=0x8330144) at http_request.c:1311
        access_status = 0
#12 0x81aa27a in ap_process_request (r=0x8330144) at http_request.c:1327
        old_stat = 3
#13 0x81a1050 in child_main (child_num_arg=0) at http_main.c:4555
        conn_io = (BUFF *) 0x82ea6ac
        r = (request_rec *) 0x8330144
        clen = 16
        sa_server = {sa_family = 2,
  sa_data = "\000P\n\000\000<FF>\001\000\000$\017\000\000"}
"}
        lr = (listen_rec *) 0x0
#14 0x81a1235 in make_child (s=0x82c78c4, slot=0, now=1004390980)
    at http_main.c:4668
        pid = 0
#15 0x81a13b6 in startup_children (number_to_start=5) at http_main.c:4750
        i = 0
        now = 1004390980
#16 0x81a1a4d in standalone_main (argc=2, argv=0xbffffbe4) at http_main.c:5055
        remaining_children_to_start = 5
#17 0x81a22cc in main (argc=2, argv=0xbffffbe4) at http_main.c:5415
        c = -1
        sock_in = 1073787840
        sock_out = 1077208412
        s = 0xbffffcca "httpd"
#18 0x40241551 in __libc_start_main () from //lib/libc.so.6
 

Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2001-10-30 12:43 UTC] getdown at groovy dot org
I have now tried the latest snapshot, 20011030, and gotten a
crash and backtrace, it isn't the passthru, since this did the
Segmentation Fault on an opendir() call.

#0  0x40008a25 in _dl_lookup_versioned_symbol () from /lib/ld-linux.so.2
#1  0x4000b1fa in fixup () from /lib/ld-linux.so.2
#2  0x4000b3c0 in _dl_runtime_resolve () from /lib/ld-linux.so.2
#3  0x80f503c in zif_opendir (ht=1, return_value=0x837ae0c, this_ptr=0x0,
    return_value_used=1) at dir.c:192
#4  0x8191e22 in execute (op_array=0x837ad44) at zend_execute.c:1598
#5  0x816c80a in zend_execute_scripts (type=8, retval=0x0, file_count=3)
    at zend.c:814
#6  0x80a715e in php_execute_script (primary_file=0xbffff7b0) at main.c:1310
#7  0x817876c in apache_php_module_main (r=0x8337b74, display_source_mode=0)
    at sapi_apache.c:90
#8  0x80a3792 in send_php (r=0x8337b74, display_source_mode=0,
    filename=0x8339614 "/var/www/html/ModemStats/fuu.php") at mod_php4.c:575
#9  0x80a37f5 in send_parsed_php (r=0x8337b74) at mod_php4.c:590
#10 0x819c2b3 in ap_invoke_handler (r=0x8337b74) at http_config.c:517
#11 0x81b0ebb in process_request_internal (r=0x8337b74) at http_request.c:1311
#12 0x81b0f30 in ap_process_request (r=0x8337b74) at http_request.c:1327
#13 0x81a812d in child_main (child_num_arg=0) at http_main.c:4555
#14 0x81a8304 in make_child (s=0x82cac44, slot=0, now=1004462146)
    at http_main.c:4668
#15 0x81a847b in startup_children (number_to_start=5) at http_main.c:4750
#16 0x81a8b14 in standalone_main (argc=2, argv=0xbffffbe4) at http_main.c:5055
#17 0x81a937e in main (argc=2, argv=0xbffffbe4) at http_main.c:5415
#18 0x40244551 in __libc_start_main () from //lib/libc.so.6


 [2001-10-30 13:08 UTC] cynic@php.net
Signal 11 is almost exclusively a mark of a problematic memory subsytem: faulty or mismatched chips. Are you sure this is not the case?
 [2001-10-30 15:49 UTC] getdown at groovy dot org
I have pretty much concluded that this was a memory issue with
my sdram, having two chips and having only one in at a time it
turned out that only one of them seemed to produce these problems.
I had found a way I think would reproduce the error, seemed to, so
if it happens again now with the good memory in then I will know
my testing had not worked and will reopen the bug report.  I will
be pretty sure the memory was the problem if it doesn't crash for
a few days, since that hasn't happened since running the high CPU
processes on the machine with apache+php.

Thanks,
Chris Kennedy

 [2001-10-30 16:10 UTC] derick@php.net
Marking it bogus, as it is no bug in PHP.

Derick
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Thu Apr 18 09:01:27 2024 UTC