php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #34149 Hang (100% CPU) in malloc_consolidate
Submitted: 2005-08-16 11:40 UTC Modified: 2005-08-24 01:00 UTC
Votes:1
Avg. Score:5.0 ± 0.0
Reproduced:1 of 1 (100.0%)
Same Version:1 (100.0%)
Same OS:1 (100.0%)
From: mikael at chl dot chalmers dot se Assigned:
Status: No Feedback Package: Apache2 related
PHP Version: 4.4.0 OS: Linux 2.6.10-ac9
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: mikael at chl dot chalmers dot se
New email:
PHP Version: OS:

 

 [2005-08-16 11:40 UTC] mikael at chl dot chalmers dot se
Description:
------------
After some time (hours on a busy site), Apache processes hanged in malloc_consolidate() appear. Don't know if this really is a problem in PHP but we're hoping to get some clues, since both the backtraces we've extracted goes through libphp4.so (in php_handler() and mtx_append())

The problem appeared after upgrading from PHP 4.3.8 to 4.4.0 and the only ./configure difference was the need to add --with-imap-ssl to get 4.4.0 to build

Reproduce code:
---------------
Intermediate problem, hard to reproduce

Actual result:
--------------
If need be we can recompile apache/apr with debug symbols to try and extract more information and variable values. We have a couple of coredumps saved as it is. 

These are the two difference backtraces we've seen so far.

#0 0xb7b9c35e in malloc_consolidate () from /lib/tls/libc.so.6
#1 0xb7b9bb29 in _int_malloc () from /lib/tls/libc.so.6
#2 0xb7b9aecd in malloc () from /lib/tls/libc.so.6
#3 0xb7d0a692 in allocator_alloc () from /usr/local/apache2/lib/libapr-0.so.0
#4 0xb7e00652 in apr_bucket_alloc () from /usr/local/apache2/lib/libaprutil-0.so.0
#5 0xb7e00063 in apr_brigade_writev () from /usr/local/apache2/lib/libaprutil-0.so.0
#6 0x08065119 in basic_http_header ()
#7 0x08062752 in ap_http_header_filter ()
#8 0x08075c6c in ap_pass_brigade ()
#9 0x080784cf in ap_content_length_filter ()
#10 0x08075c6c in ap_pass_brigade ()
#11 0x08063ff4 in ap_byterange_filter ()
#12 0x08075c6c in ap_pass_brigade ()
#13 0x08075c6c in ap_pass_brigade ()
#14 0xb77da099 in php_handler () from /foobar/web/mychl/modules/libphp4.so
#15 0x08068b70 in ap_invoke_handler ()
#16 0x080662b5 in ap_internal_redirect ()
#17 0xb7ab2b7e in handler_redirect () from /foobar/web/mychl/modules/mod_rewrite.so
#18 0x08068b70 in ap_invoke_handler ()
#19 0x0806604b in ap_process_request ()
#20 0x08060ebc in ap_process_http_connection ()
#21 0x08073b65 in ap_process_connection ()
#22 0x0806867a in child_main ()
#23 0x080679a5 in make_child ()
#24 0x08067bfa in perform_idle_server_maintenance ()
#25 0x080674bd in ap_mpm_run ()
#26 0x0806e9e3 in main ()


#0 0xb7b9c364 in malloc_consolidate () from /lib/tls/libc.so.6
#1 0xb7b9bb29 in _int_malloc () from /lib/tls/libc.so.6
#2 0xb7b9aecd in malloc () from /lib/tls/libc.so.6
#3 0xb7d0a692 in allocator_alloc () from /usr/local/apache2/lib/libapr-0.so.0
#4 0xb7d099a1 in apr_pool_create_ex () from /usr/local/apache2/lib/libapr-0.so.0
#5 0x0807f7b4 in core_output_filter ()
#6 0x08075c6c in ap_pass_brigade ()
#7 0x080628c7 in ap_http_header_filter ()
#8 0x08075c6c in ap_pass_brigade ()
#9 0x080784cf in ap_content_length_filter ()
#10 0x08075c6c in ap_pass_brigade ()
#11 0x08063ff4 in ap_byterange_filter ()
#12 0x08075c6c in ap_pass_brigade ()
#13 0x08075c6c in ap_pass_brigade ()
#14 0xb77da099 in mtx_append () from /foobar/web/mychl/modules/libphp4.so
#15 0x08068b70 in ap_invoke_handler ()
#16 0x080662b5 in ap_internal_redirect ()
#17 0xb7ab2b7e in handler_redirect () from /foobar/web/mychl/modules/mod_rewrite.so
#18 0x08068b70 in ap_invoke_handler ()
#19 0x0806604b in ap_process_request ()
#20 0x08060ebc in ap_process_http_connection ()
#21 0x08073b65 in ap_process_connection ()
#22 0x0806867a in child_main ()
#23 0x080679a5 in make_child ()
#24 0x08067bfa in perform_idle_server_maintenance ()
#25 0x080674bd in ap_mpm_run ()
#26 0x0806e9e3 in main ()


env CFLAGS="-O3 -march=i686" ./configure \
--with-apxs2=/usr/local/apache2/bin/apxs \
--disable-cgi \
--with-cpdflib=/usr/local \
--enable-ftp \
--with-gd \
--with-ttf=/usr \
--enable-gd-native-ttf \
--with-imap \
--with-imap-ssl \
--with-kerberos=/usr/kerberos \
--with-ldap \
--with-mysql=/usr/local/mysql-4.1 \
--with-oci8 \
--with-iodbc=/usr/local \
--enable-sockets \
--enable-yp \
--with-jpeg-dir=/usr \
--with-zlib-dir=/usr \
--with-png-dir=/usr \
--with-gettext \
--enable-exif \
--with-openssl \
--enable-pcntl \
--with-xmlrpc \
--enable-mbstring

Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2005-08-16 15:20 UTC] tony2001@php.net
Any info on how to reproduce it would be very good.
 [2005-08-24 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 May 09 13:01:28 2025 UTC