Re: Segmentation fault in PHP 7.0.3 (and earlier versions)
| From: | Rasmus Lerdorf | Date: | Sat, 06 Feb 2016 18:50:11 +0000 |
| Subject: | Re: Segmentation fault in PHP 7.0.3 (and earlier versions) | ||
| References: | 1 2 3 4 5 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-91101@lists.php.net to get a copy of this message | ||
On 02/06/2016 10:10 AM, Simon Svensson wrote:
> On 05/02/16 22:29, Rasmus Lerdorf wrote:
>> On 02/05/2016 11:39 AM, Simon Svensson wrote:
>>> I am unable to reproduce the error with this recompiled source, both
>>> with the /usr/local/php70/bin/php and /usr/local/php70-debug/bin/php.
>>> This is the same experience I had with earlier releases, where I have
>>> been unable to reproduce the segmentation faults when recompiling (but
>>> always have them occur from the ppa).
>>>
>>> Is there any guide for compiling the source? I could attempt to setup a
>>> new virtual machine with Ubuntu 14.04 (instead of php7dev's Debian) to
>>> reproduce the error, but I do know know the steps needed to compile
>>> everything.
>>>
>>> The newly build, and working, versions:
>>>
>>> /usr/local/php70/bin/php --version:
>>> PHP 7.0.4-dev (cli) (built: Feb 5 2016 19:14:08) ( NTS )
>>> Copyright (c) 1997-2016 The PHP Group
>>> Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
>>> with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend
>>> Technologies
>>>
>>> /usr/local/php70-debug/bin/php --version:
>>> PHP 7.0.4-dev (cli) (built: Feb 5 2016 19:19:10) ( NTS DEBUG )
>>> Copyright (c) 1997-2016 The PHP Group
>>> Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
>>> with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend
>>> Technologies
>>
>> "php -i" will show you the configure flags that were used to build it,
>> so you could try to match those to see if you can reproduce with sources
>> from php.net. Otherwise, if it is something that only happens with the
>> distro build then there isn't a while lot we can do to help you.
>>
>> -Rasmus
>>
>>
>
> An update to avoid leaving the thread hanging in suspense.
>
> I was in contact with Ondřej Surý, the author of the PPA I was using,
> and got help in grabbing build-logs so that I should be able to
> reproduce the compile locally, this time without all the optimization.
> However, since I still do not speak configure-ish I failed to resolve
> all packages/libraries needed for a complete build, but I managed to
> smash my keyboard enough to get a working configure & make.
>
> My test-suite now terminates like this:
>
> PHPUnit 4.8.21 by Sebastian Bergmann and contributors.
>
> Runtime: PHP 7.0.3
> Configuration: /root/web/phpunit.xml
>
> ........................................... 43 / 1229 ( 3%)
> ........................................... 86 / 1229 ( 6%)
> ........................................... 129 / 1229 ( 10%)
> ........................................... 172 / 1229 ( 13%)
> ........................................... 215 / 1229 ( 17%)
> ...............R........................... 258 / 1229 ( 20%)
> ........................................... 301 / 1229 ( 24%)
> ........................................... 344 / 1229 ( 27%)
> .R.R.....................R................. 387 / 1229 ( 31%)
> ........................................... 430 / 1229 ( 34%)
> ........................................... 473 / 1229 ( 38%)
> ........................................... 516 / 1229 ( 41%)
> ........................................... 559 / 1229 ( 45%)
> ........................................... 602 / 1229 ( 48%)
> ........................................... 645 / 1229 ( 52%)
> .php: /root/php-src/Zend/zend_execute.h:275:
> zend_vm_stack_free_call_frame_ex: Assertion
> `(executor_globals.vm_stack_top) > (zval *) (executor_globals.vm_stack)
> && (executor_globals.vm_stack_end) > (zval *)
> (executor_globals.vm_stack) && (executor_globals.vm_stack_top) <=
> (executor_globals.vm_stack_end)' failed.
> Aborted (core dumped)
>
> The failed assertion and my backtrace matches exactly that of
> https://bugs.php.net/bug.php?id=71474 which was fixed a few
> days ago,
> and is not part of the 7.0.3 release. It's part of the PHP-7.0 branch,
> so I presume this will be fixed in the 7.0.4 release.
>
> I've recompiled using the PHP-7.0 branch, and my test-suite works there.
> I look forward to the 7.0.4 release!
Thank you very much for your persistence on this. It is motivating for
us when people put a bit of effort into tracking down issues. And yes,
that fix will be in 7.0.4. It came in too late to be part of 7.0.3.
-Rasmus
Attachment: [application/pgp-signature] OpenPGP digital signature signature.asc
Attachment: [application/pgp-signature] OpenPGP digital signature signature.asc