Edit report at https://bugs.php.net/bug.php?id=68921&edit=1
ID: 68921
Comment by: der at internethering dot de
Reported by: public at grik dot net
Summary: segfault
Status: Open
Type: Bug
Package: Reproducible crash
Operating System: Cent OS 6
PHP Version: 5.6.6
Block user comment: N
Private report: N
New Comment:
Yet not fixed in 5.6.16:
curl -d '' -H 'Content-Type:' https://le-h.de/t.php
-> Error 503
#0 0x0000000000adcc79 in _zval_dtor_func (zvalue=0x7f03c5b5d268, __zend_filename=0x10cb078
"/tmp/distccd_ghnfGr/var/phpbuild/portage/dev-lang/php-5.6.16/work/sapis-build/fpm/Zend/zend_execute.h",
__zend_lineno=79)
at /var/phpbuild/portage/dev-lang/php-5.6.16/work/sapis-build/fpm/Zend/zend_variables.c:36
36 CHECK_ZVAL_STRING_REL(zvalue);
(gdb) bt
#0 0x0000000000adcc79 in _zval_dtor_func (zvalue=0x7f03c5b5d268, __zend_filename=0x10cb078
"/tmp/distccd_ghnfGr/var/phpbuild/portage/dev-lang/php-5.6.16/work/sapis-build/fpm/Zend/zend_execute.h",
__zend_lineno=79)
at /var/phpbuild/portage/dev-lang/php-5.6.16/work/sapis-build/fpm/Zend/zend_variables.c:36
#1 0x0000000000ac4769 in _zval_dtor (zvalue=0x7f03c5b5d268, __zend_filename=0x10cb078
"/tmp/distccd_ghnfGr/var/phpbuild/portage/dev-lang/php-5.6.16/work/sapis-build/fpm/Zend/zend_execute.h",
__zend_lineno=79)
at
/tmp/distccd_ghnfGr/var/phpbuild/portage/dev-lang/php-5.6.16/work/sapis-build/fpm/Zend/zend_variables.h:35
#2 0x0000000000ac4861 in i_zval_ptr_dtor (zval_ptr=0x7f03c5b5d268, __zend_filename=0x10cd470
"/var/phpbuild/portage/dev-lang/php-5.6.16/work/sapis-build/fpm/Zend/zend_variables.c",
__zend_lineno=188, tsrm_ls=0x2baf0c0)
at
/tmp/distccd_ghnfGr/var/phpbuild/portage/dev-lang/php-5.6.16/work/sapis-build/fpm/Zend/zend_execute.h:79
#3 0x0000000000ac6aa5 in _zval_ptr_dtor (zval_ptr=0x7f03c5b5d560, __zend_filename=0x10cd470
"/var/phpbuild/portage/dev-lang/php-5.6.16/work/sapis-build/fpm/Zend/zend_variables.c",
__zend_lineno=188)
at /var/phpbuild/portage/dev-lang/php-5.6.16/work/sapis-build/fpm/Zend/zend_execute_API.c:424
#4 0x0000000000add256 in _zval_ptr_dtor_wrapper (zval_ptr=0x7f03c5b5d560) at
/var/phpbuild/portage/dev-lang/php-5.6.16/work/sapis-build/fpm/Zend/zend_variables.c:188
#5 0x0000000000af589c in i_zend_hash_bucket_delete (ht=0x2bb2928, p=0x7f03c5b5d548) at
/var/phpbuild/portage/dev-lang/php-5.6.16/work/sapis-build/fpm/Zend/zend_hash.c:182
#6 0x0000000000af5976 in zend_hash_bucket_delete (ht=0x2bb2928, p=0x7f03c5b5d548) at
/var/phpbuild/portage/dev-lang/php-5.6.16/work/sapis-build/fpm/Zend/zend_hash.c:192
#7 0x0000000000af783a in zend_hash_graceful_reverse_destroy (ht=0x2bb2928) at
/var/phpbuild/portage/dev-lang/php-5.6.16/work/sapis-build/fpm/Zend/zend_hash.c:613
#8 0x0000000000ac5b27 in shutdown_executor (tsrm_ls=0x2baf0c0) at
/var/phpbuild/portage/dev-lang/php-5.6.16/work/sapis-build/fpm/Zend/zend_execute_API.c:244
#9 0x0000000000ae0893 in zend_deactivate (tsrm_ls=0x2baf0c0) at
/var/phpbuild/portage/dev-lang/php-5.6.16/work/sapis-build/fpm/Zend/zend.c:960
#10 0x0000000000a19882 in php_request_shutdown (dummy=0x0) at
/var/phpbuild/portage/dev-lang/php-5.6.16/work/sapis-build/fpm/main/main.c:1883
#11 0x0000000000bcdba6 in main (argc=4, argv=0x7ffddd839a68) at
/var/phpbuild/portage/dev-lang/php-5.6.16/work/sapis-build/fpm/sapi/fpm/fpm/fpm_main.c:1992
Previous Comments:
------------------------------------------------------------------------
[2015-06-12 09:47:21] andrey at kostin dot email
Not fixed in 5.6.10:
curl -X POST http://example.com/script.php
WARNING: [pool www] child 12008 exited on signal 11 (SIGSEGV - core dumped) after 1166.718710
seconds from start
------------------------------------------------------------------------
[2015-06-03 21:59:32] andrey at kostin dot email
I experience the same problem with PHP 5.6.9 under Ubuntu 14.04 with no 3rd-party libraries
installed. Test script contains the following code:
<?php
echo 'ok';
?>
Request: curl --data "param1=value1" http://example.com/script.php
Response: ok
Request: curl --data "" http://example.com/script.php
Response:
<html>
<head><title>502 Bad Gateway</title></head>
<body bgcolor="white">
<center><h1>502 Bad Gateway</h1></center>
<hr><center>nginx/1.8.0</center>
</body>
</html>
PHP log contains the following:
[04-Jun-2015 00:54:07] WARNING: [pool www] child 16781 exited on signal 11 (SIGSEGV - core dumped)
after 45.570352 seconds from start
Setting always_populate_raw_post_data to -1 solves the problem.
------------------------------------------------------------------------
[2015-03-06 15:27:14] public at grik dot net
The t.php file is empty. The issue is not relevant to the content of a script.
I compiled 5.6 over 5.5 and did not update php.ini. In 5.5 the value for
always_populate_raw_post_data was "no", for in 5.6 it has to be "-1"
------------------------------------------------------------------------
[2015-03-06 14:41:45] laruence@php.net
please show us what the t.php 's contents is
------------------------------------------------------------------------
[2015-03-03 21:06:21] public at grik dot net
The problem is related to always_populate_raw_post_data option
When I edited php.ini and set always_populate_raw_post_data = -1 the segfault does not repeat.
Setting "always_populate_raw_post_data = off" as php.ini offers does not help, though.
Here is an php-fpm -i output when segfault occurs:
http://pastebin.com/z4uvtErx
here's the valgrind log
http://pastebin.com/RdNJZRX5
While I was making the valgrind log I saw errors:
[root@hotelfm hotelfm.ru]# valgrind --tool=memcheck --num-callers=30 --log-file=php.log
/usr/local/sbin/php-fpm -F -e
[03-Mar-2015 20:48:29] WARNING: [pool www] child 21793 said into stderr: "NOTICE: PHP message:
PHP Deprecated: Automatically populating $HTTP_RAW_POST_DATA is deprecated and will be removed in a
future version. To avoid this warning set 'always_populate_raw_post_data' to
'-1' in php.ini and use the php://input stream instead. in Unknown on line 0"
[03-Mar-2015 20:48:29] WARNING: [pool www] child 21793 said into stderr: "Unknown(0) :
Deprecated - Automatically populating $HTTP_RAW_POST_DATA is deprecated and will be removed in a
future version. To avoid this warning set 'always_populate_raw_post_data' to
'-1' in php.ini and use the php://input stream instead."
[03-Mar-2015 20:48:29] WARNING: [pool www] child 21793 said into stderr: ""
[03-Mar-2015 20:48:29] WARNING: [pool www] child 21793 said into stderr: "NOTICE: PHP message:
PHP Warning: Cannot modify header information - headers already sent in Unknown on line 0"
[03-Mar-2015 20:48:29] WARNING: [pool www] child 21793 said into stderr: "Unknown(0) : Warning
- Cannot modify header information - headers already sent"
[03-Mar-2015 20:48:29] WARNING: [pool www] child 21793 said into stderr: ""
[03-Mar-2015 20:48:30] WARNING: [pool www] child 21793 exited on signal 11 (SIGSEGV) after 18.506098
seconds from start
------------------------------------------------------------------------
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
https://bugs.php.net/bug.php?id=68921
--
Edit this bug report at https://bugs.php.net/bug.php?id=68921&edit=1