PHP 4.0 Bug #8334 Updated: Segmentation faults on page load
| From: | augustz at bigfoot dot com | Date: | Fri, 22 Dec 2000 21:33:51 +0000 |
| Subject: | PHP 4.0 Bug #8334 Updated: Segmentation faults on page load | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-42149@lists.php.net to get a copy of this message | ||
ID: 8334
User Update by: augustz@bigfoot.com
Status: Open
Bug Type: Reproduceable crash
Description: Segmentation faults on page load
Without ob_gzhander things work fine with at least zlib compiled in.
Previous Comments:
---------------------------------------------------------------------------
[2000-12-21 21:36:32] augustz@bigfoot.com
output_buffering = Off
output_handler = ob_gzhandler
I'll send along the entire php.ini via email. Havn't had a chance to try without the
ob_gzhandler line, will try that this weekend sometime.
---------------------------------------------------------------------------
[2000-12-20 14:25:28] jmoore@php.net
Hi,
Could you please supply your php.ini file. There were some problems with the ob so that section is
of special interest.. I thought these issues were resolved.
James
---------------------------------------------------------------------------
[2000-12-20 11:20:53] augustz@bigfoot.com
Compiling without imap, mcrypt and zlib seems to solve the problem. Compiling with zlib alone breaks
leads to seg faults.
Zlib is a popular addon, especially if the inbuilt obgzhandler requires it. If this slipped by the
QA team I'd be suprised...
Backtrace with zlib (no imap/mcrypt).
[Wed Dec 20 11:18:30 2000] [warn] Loaded DSO modules/libphp4.so uses plain Apache 1.3 API, this
module might crash under EAPI! (please recompile it with -DEAPI)
Program received signal SIGSEGV, Segmentation fault.
0x4024e4c6 in call_user_function_ex (function_table=0x80bd750, object_pp=0x0,
function_name=0x80d33dc, retval_ptr_ptr=0xbffffb0c,
param_count=1, params=0xbffffb04, no_separation=1, symbol_table=0x0) at zend_execute_API.c:449
449 ((zend_internal_function *)
function_state.function)->handler(param_count, *retval_ptr_ptr, *object_pp, 1 ELS_CC);
(gdb) bt
#0 0x4024e4c6 in call_user_function_ex (function_table=0x80bd750, object_pp=0x0,
function_name=0x80d33dc,
retval_ptr_ptr=0xbffffb0c, param_count=1, params=0xbffffb04, no_separation=1, symbol_table=0x0)
at zend_execute_API.c:449
#1 0x402fb869 in php_end_ob_buffer (send_buffer=1) at output.c:131
#2 0x402fbb0c in php_end_ob_buffers (send_buffer=1) at output.c:191
#3 0x4026d0f8 in apache_php_module_main (r=0x80e081c, display_source_mode=0) at sapi_apache.c:95
#4 0x4026dca5 in send_php (r=0x80e081c, display_source_mode=0, filename=0x80e224c
"/home/httpd/html/phpinfo.php")
at mod_php4.c:506
#5 0x4026dce5 in send_parsed_php (r=0x80e081c) at mod_php4.c:517
#6 0x805345e in ap_invoke_handler ()
#7 0x80618fb in ap_some_auth_required ()
#8 0x8061958 in ap_process_request ()
#9 0x805b940 in ap_child_terminate ()
#10 0x805baa7 in ap_child_terminate ()
#11 0x805bba8 in ap_child_terminate ()
#12 0x805c058 in ap_child_terminate ()
#13 0x805c65f in main ()
#14 0x400b99ab in __libc_start_main () at ../sysdeps/generic/libc-start.c:122
---------------------------------------------------------------------------
[2000-12-20 10:51:43] augustz@bigfoot.com
Went ahead and compiled without the mcrypt extension Jani's suggestions and partly because I
see it just before the error catching on the backtrace and also on. We get a cleaner backtrace on
load, and I still see the same problem.
Starting program: /usr/sbin/httpd -X
[Wed Dec 20 10:49:26 2000] [warn] Loaded DSO modules/libphp4.so uses plain Apache 1.3 API, this
module might crash under EAPI! (please recompile it with -DEAPI)
Program received signal SIGSEGV, Segmentation fault.
0x4026a606 in call_user_function_ex () from /etc/httpd/modules/libphp4.so
(gdb) bt
#0 0x4026a606 in call_user_function_ex () from /etc/httpd/modules/libphp4.so
#1 0x40327e49 in php_end_ob_buffer () from /etc/httpd/modules/libphp4.so
#2 0x403280ec in php_end_ob_buffers () from /etc/httpd/modules/libphp4.so
#3 0x40289238 in apache_php_module_main () from /etc/httpd/modules/libphp4.so
#4 0x40289de5 in send_php () from /etc/httpd/modules/libphp4.so
#5 0x40289e25 in send_parsed_php () from /etc/httpd/modules/libphp4.so
#6 0x805345e in ap_invoke_handler ()
#7 0x80618fb in ap_some_auth_required ()
#8 0x8061958 in ap_process_request ()
#9 0x805b940 in ap_child_terminate ()
#10 0x805baa7 in ap_child_terminate ()
#11 0x805bba8 in ap_child_terminate ()
#12 0x805c058 in ap_child_terminate ()
#13 0x805c65f in main ()
#14 0x400b99ab in __libc_start_main () at ../sysdeps/generic/libc-start.c:122
(gdb) kill
Kill the program being debugged? (y or n) y
(gdb) quit
---------------------------------------------------------------------------
[2000-12-20 09:26:40] augustz@bigfoot.com
Not sure if this is usefull... changed compile to --with-debug and did not strip the debug symbols
from the final lib, but I don't think it made much difference on the backtrace.
[Wed Dec 20 09:24:27 2000] [warn] Loaded DSO modules/libphp4.so uses plain Apache 1.3 API, this
module might crash under EAPI! (please recompile it with -DEAPI)
Error while mapping shared library sections:
h$: No such file or directory.
Error while reading shared library symbols:
h$: No such file or directory.
warning: find_solib: Can't read pathname for load map: Input/output error
Cannot access memory at address 0x706.
(gdb) bt
#0 0x4000adc0 in _dl_debug_state () at dl-debug.c:47
#1 0x4000aadb in _dl_catch_error () at dl-error.c:99
#2 0x40180345 in _dl_open () at dl-open.c:283
#3 0x4009e3d3 in dlopen_doit (a=0xbfffdeb4) at dlopen.c:41
#4 0x4000aadb in _dl_catch_error () at dl-error.c:99
#5 0x4009e8b9 in _dlerror_run (operate=0x4009e3a8 <dlopen_doit>, args=0xbfffdeb4) at
dlerror.c:125
#6 0x4009e393 in __dlopen_check (file=0x8109688 "/usr/local/lib/libmcrypt/safer-sk64.so",
mode=257) at dlopen.c:53
#7 0x40442f31 in ?? () from /usr/lib/libltdl.so.0
#8 0x4044344d in ?? () from /usr/lib/libltdl.so.0
#9 0x40443840 in ?? () from /usr/lib/libltdl.so.0
#10 0x4044427a in ?? () from /usr/lib/libltdl.so.0
#11 0x404443dc in ?? () from /usr/lib/libltdl.so.0
#12 0x403ea283 in mcrypt_module_get_algo_supported_key_sizes () from /usr/lib/libltdl.so.0
#13 0x403e9c16 in ?? () from /usr/local/lib/libmcrypt.so.4
#14 0x403e98fe in ?? () from /usr/local/lib/libmcrypt.so.4
#15 0x4029787d in php_info_mcrypt (zend_module=0x80b6980) at mcrypt.c:351
#16 0x402da938 in _display_module_info (module=0x80b6980, arg=0xbfffe93c) at info.c:50
#17 0x4027181a in zend_hash_apply_with_argument (ht=0x403cc900, apply_func=0x402da900
<_display_module_info>, argument=0xbfffe93c)
at zend_hash.c:711
#18 0x402daf8a in php_print_info (flag=-1) at info.c:256
#19 0x402db6fd in php_if_phpinfo (ht=0, return_value=0x8106fec, this_ptr=0x0, return_value_used=0)
at info.c:464
#20 0x402602b6 in execute (op_array=0x8106f84) at ./zend_execute.c:1519
#21 0x4026e2d0 in zend_execute_scripts (type=8, file_count=3) at zend.c:729
#22 0x4027f391 in php_execute_script (primary_file=0xbffffb34) at main.c:1221
#23 0x4027be32 in apache_php_module_main (r=0x80e4a14, display_source_mode=0) at sapi_apache.c:89
#24 0x4027c6fb in send_php (r=0x80e4a14, display_source_mode=0, filename=0x0) at mod_php4.c:506
#25 0x4027c72c in send_parsed_php (r=0x80e4a14) at mod_php4.c:517
#26 0x805345e in ap_invoke_handler ()
#27 0x80618fb in ap_some_auth_required ()
#28 0x8061958 in ap_process_request ()
#29 0x805b940 in ap_child_terminate ()
#30 0x805baa7 in ap_child_terminate ()
#31 0x805bba8 in ap_child_terminate ()
#32 0x805c058 in ap_child_terminate ()
#33 0x805c65f in main ()
#34 0x400b99ab in __libc_start_main () at ../sysdeps/generic/libc-start.c:122
---------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view the rest of the comments,
please view the bug report online.
Full Bug description available at: http://bugs.php.net/?id=8334