ID: 24792
User updated by: tilman dot giese at gmx dot de
Reported By: tilman dot giese at gmx dot de
-Status: Feedback
+Status: Open
Bug Type: mbstring related
Operating System: Linux
PHP Version: 4.3.2
New Comment:
As the segmentation fault only appears sporadically, it is not that
easy to find out which code can cause it. But I will try my very best
and inform you if I know anything. Meanwhile I compiled PHP with
debugging support and got the following gdb output:
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 114696 (LWP 28332)]
0x406d752f in _efree (ptr=0x2a, __zend_filename=0x407380de
"Zend/zend_language_scanner.c", __zend_lineno=2870,
__zend_orig_filename=0x0, __zend_orig_lineno=0) at
/tmp/php-4.3.3RC1/Zend/zend_alloc.c:241
241 CALCULATE_REAL_SIZE_AND_CACHE_INDEX(p->size);
(gdb) bt
#0 0x406d752f in _efree (ptr=0x2a, __zend_filename=0x407380de
"Zend/zend_language_scanner.c", __zend_lineno=2870,
__zend_orig_filename=0x0, __zend_orig_lineno=0) at
/tmp/php-4.3.3RC1/Zend/zend_alloc.c:241
#1 0x406c816c in shutdown_scanner (tsrm_ls=0x83a3608) at
Zend/zend_language_scanner.c:2870
#2 0x406edc57 in zend_deactivate (tsrm_ls=0x83a3608) at
/tmp/php-4.3.3RC1/Zend/zend.c:662
#3 0x406a97c8 in php_request_shutdown (dummy=0x0) at
/tmp/php-4.3.3RC1/main/main.c:996
#4 0x407083ba in php_apache_request_dtor (r=0x8496100,
tsrm_ls=0x83a3608)
at /tmp/php-4.3.3RC1/sapi/apache2handler/sapi_apache2.c:445
#5 0x40708769 in php_handler (r=0x8496100) at
/tmp/php-4.3.3RC1/sapi/apache2handler/sapi_apache2.c:541
#6 0x0806b6d8 in ap_run_handler ()
#7 0x0806bde9 in ap_invoke_handler ()
#8 0x08065e09 in ap_process_request ()
#9 0x08060afe in _start ()
#10 0x08076748 in ap_run_process_connection ()
#11 0x08076afe in ap_process_connection ()
#12 0x0806764f in ap_graceful_stop_signalled ()
#13 0x08067f15 in ap_graceful_stop_signalled ()
#14 0x402c06c6 in dummy_worker (opaque=0x2) at thread.c:127
#15 0x4033bd80 in pthread_start_thread () from /lib/libpthread.so.0
#16 0x4033be7e in pthread_start_thread_event () from
/lib/libpthread.so.0
(gdb)
Previous Comments:
------------------------------------------------------------------------
[2003-07-24 13:56:29] [EMAIL PROTECTED]
That is a possibility, besides phpMyAdmin do you have another other
preferably much smaller scripts that could be used to replicate the
crash?
------------------------------------------------------------------------
[2003-07-24 12:47:57] tilman dot giese at gmx dot de
After having compiled PHP about a hundred times, I found out that using
--enable-zend-multibyte causes the segmentation fault. Is the Zend
Multibyte Support thread safe?
------------------------------------------------------------------------
[2003-07-24 09:24:14] [EMAIL PROTECTED]
Thank you for taking the time to write to us, but this is not
a bug. Please double-check the documentation available at
http://www.php.net/manual/ and the instructions on how to report
a bug at http://bugs.php.net/how-to-report.php
Your phpinfo() does not reflect the configure line you have used. So it
does not appear you are using PHP you've compiled.
If you are only using PHP + MySQL then php should be thread safe,
however I still recommend to explicitly enable
--enable-experimental-zts
------------------------------------------------------------------------
[2003-07-24 09:19:55] tilman dot giese at gmx dot de
Looking at your configure script line 5723 enable_experimental_zts is
automatically activated if Apache does not use the prefork MPM (which
is the case). Besides, a phpinfo() says that thread safety has been
activated.
Concerning the extensions, I already wrote _only_ the MySQL extension
is loaded, no gd/ttf extension.
So everything should be thread safe now, should'n it?
------------------------------------------------------------------------
[2003-07-24 09:10:45] [EMAIL PROTECTED]
Thank you for taking the time to write to us, but this is not
a bug. Please double-check the documentation available at
http://www.php.net/manual/ and the instructions on how to report
a bug at http://bugs.php.net/how-to-report.php
You are using threaded environment, however you did not use the
--enable-experimental-zts flag which enables thread safety and you are
using extensions such as gd/tff that are know to be not thread safe.
Other extensions may be using non-thread-safe libraries as well.
The result is a random memory corruption that causes the crash you are
seeing.
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/24792
--
Edit this bug report at http://bugs.php.net/?id=24792&edit=1