Bug #79034 [Com]: PHP Fatal error: CPU doesn't support SSE2 in Unknown on line 0

From: Date: Thu, 09 Jan 2020 09:28:13 +0000
Subject: Bug #79034 [Com]: PHP Fatal error: CPU doesn't support SSE2 in Unknown on line 0
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-224803@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=79034&edit=1

 ID:                 79034
 Comment by:         bugreports at gmail dot com
 Reported by:        bugreports at gmail dot com
 Summary:            PHP Fatal error:  CPU doesn't support SSE2 in
                     Unknown on line 0
 Status:             Feedback
 Type:               Bug
 Package:            opcache
 Operating System:   Linux
 PHP Version:        master-Git-2019-12-26 (Git)
 Block user comment: N
 Private report:     N

 New Comment:

PHP 8.0 MASTER is still broken, i don't get why a offending change after which a predictable
environment which worked before with 7.2/7.3/7.4/8.0 HEAD with and without JIT worked perfectly fine
has now all sort of memory curruptions and sgefaults isn't simply reverted that long

i used to build 7.2-8.0 nearly daily for weeks until that breakage


Previous Comments:
------------------------------------------------------------------------
[2019-12-31 00:02:39] bugreports at gmail dot com

tried current MASTER, still random issues, differnt runs, different errors without any change and
"Trying to access array offset on value of type array" is something not possible normally
i guess

one time even the whole test-suite passed and in the middle of the PGO-profiling spider a
demo-website segfault

-----------------------------------

removing that two lines from "php.ini" and everything is fine

opcache.jit_buffer_size          = 50000000
opcache.jit                      = 1235

-----------------------------------

PHP Fatal error:  CPU doesn't support SSE2 in Unknown on line 
Trying to access array offset on value of type array
profile.sh: line 267: 322863 Segmentation fault

------------------------------------------------------------------------
[2019-12-30 12:35:26] nikic@php.net

I've fixed one JIT issue in https://github.com/php/php-src/commit/6c6d36bb94ffeefdbfacaa3fb75e1af64fbf7fe4,
but that one was introduced after the referenced commit.

------------------------------------------------------------------------
[2019-12-26 15:39:18] bugreports at gmail dot com

here we go (besdies that someone could review the compiler warnings on Fedora 30 with GCC9 which
increased with 7.4 and 8.0: https://pastebin.com/Zjt48kKi)

BROKEN: 2 days ago  Dmitry Stogov Build call graph before type inference
OK:     2 days ago  Xinchen Hui Implemented FR #78638 (__PHP_Incomplete_Class should...

the results are all sorts of weird behavior with enabled opcache-jit and "CPU doesn't
support SSE2 in Unknown" is only one, it goes from random "1885613 Segmentation
fault" over strange behavior in acpu where after apcu_delete() a call of apcu_fetch() still
receives the record to "TypeError: substr() expects parameter 1 to be string, int given"
when foreach() over a apcu stored array which for sure contains only strings and sometimes all of
them mixed

side note:
2 days ago i added '-fno-semantic-interposition' because of https://fedoraproject.org/wiki/Changes/PythonNoSemanticInterpositionSpeedup
and that causes problems too, in fact "Implemented FR #78638 (__PHP_Incomplete_Class
should..." had the same behavior and switch to "-fsemantic-interposition" *ssemd* to
fix all the troubles - but it didn't really

------------------------------------------------------------------------
[2019-12-26 14:03:04] bugreports at gmail dot com

i'm about to dig it out, what i can say for now is that it breaks JIT

comment that two out and all including apcu works fine
;opcache.jit_buffer_size  = 50000000
;opcache.jit = 1235

i first thought the big cleanup commit from today is likely but it's broken before and
"substr() expects parameter 1 to be string, int given" in apcu-related code iterating
through a array which for sure has string keys as well as that after apcu_delete() values still
exists smells like memory corruption

------------------------------------------------------------------------
[2019-12-26 13:16:41] nikic@php.net

There haven't been any recent changes to the CPU detection code. Can you please bisect which
commit introduced the issue? There were only a handful of commits since Dec 22 and none really look
relevant.

------------------------------------------------------------------------


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=79034


--
Edit this bug report at https://bugs.php.net/bug.php?id=79034&edit=1


Thread (12 messages)

« previous php.bugs (#224803) next »