Bug #80422 [Opn]: php_opcache.dll crashes when using Apache 2.4 with JIT

From: Date: Fri, 27 Nov 2020 11:39:05 +0000
Subject: Bug #80422 [Opn]: php_opcache.dll crashes when using Apache 2.4 with JIT
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-230681@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=80422&edit=1 ID: 80422 Updated by: nikic@php.net Reported by: martin at radiok2r dot de Summary: php_opcache.dll crashes when using Apache 2.4 with JIT Status: Open Type: Bug Package: JIT Operating System: Windows 10 64-bit PHP Version: 8.0.0 -Assigned To: +Assigned To: dmitry Block user comment: N Private report: N New Comment: Assigning to dmitry in case he can guess at the cause here. Previous Comments: ------------------------------------------------------------------------ [2020-11-26 13:34:57] martin at radiok2r dot de Thanks for your fast reply. This is the output from the DebugDiag Analysis Report after installing the symbols from the Debug Pack. Hope it helps. In httpd.exe_201126_135319.dmp the assembly instruction at php_opcache!zend_jit_trace_exit_is_hot+68 in c:\PHP\ext\php_opcache.dll from The PHP Group has caused an access violation exception (0xC0000005) when trying to read from memory location 0x00000004 on thread 162 Faulting Thread Entry point libhttpd!ap_run_generate_log_id+3ab0 Create time 26.11.2020 13:52:36 Time spent in user mode 0 Days 0:0:0.0 Time spent in kernel mode 0 Days 0:0:0.0 php_opcache!zend_jit_trace_exit_is_hot+68 [C:\php-snap-build\php80\vs16\x64\php-8.0.0-ts\ext\opcache\jit\zend_jit_trace.c @ 6916 + 4] 000000000000002 000000000000003 000000000000000 000000000000000 C:\php-snap-build\php80\vs16\x64\php-8.0.0-ts\ext\opcache\jit\zend_jit_trace.c @ 6916 + 4 php_opcache!zend_jit_trace_exit+d3e [C:\php-snap-build\php80\vs16\x64\php-8.0.0-ts\ext\opcache\jit\zend_jit_trace.c @ 7343 + 47] 00001d100000003 00000a701ebd940 00001d12baec730 000100000c44b40 C:\php-snap-build\php80\vs16\x64\php-8.0.0-ts\ext\opcache\jit\zend_jit_trace.c @ 7343 + 47 0x000010000800062b 00000a701ebd940 00001d12baec730 000100000c44b40 0001000`00aa2520 0x000001d100000003 00001d12baec730 000100000c44b40 000100000aa2520 00001d1`2cfc7540 0x000000a701ebd940 000100000c44b40 000100000aa2520 00001d12cfc7540 0000000`00000308 0x000001d12baec730 000100000aa2520 00001d12cfc7540 000000000000308 0007ffe`40701b31 0x0000100000c44b40 00001d12cfc7540 000000000000308 0007ffe40701b31 00001d1`2d00b048 0x0000100000aa2520 000000000000308 0007ffe40701b31 00001d12d00b048 0000000`0000003d 0x000001d12cfc7540 0007ffe40701b31 00001d12d00b048 00000000000003d 00001d1`2ce79000 0x00000308 00001d12d00b048 00000000000003d 00001d12ce79000 00001d12baec730 php8ts!zend_string_tolower_ex+281 [C:\php-snap-build\php80\vs16\x64\php-8.0.0-ts\Zend\zend_operators.c @ 2670] 000000000000000 000000000000000 000000000000000 000000000000000 C:\php-snap-build\php80\vs16\x64\php-8.0.0-ts\Zend\zend_operators.c @ 2670 ------------------------------------------------------------------------ [2020-11-26 11:20:52] cmb@php.net Thank you for this bug report. To properly diagnose the problem, we need a backtrace to see what is happening behind the scenes. To find out how to generate a backtrace, please read http://bugs.php.net/bugs-generating-backtrace.php for *NIX and http://bugs.php.net/bugs-generating-backtrace-win32.php for Win32 Once you have generated a backtrace, please submit it to this bug report and change the status back to "Open". Thank you for helping us make PHP better. ------------------------------------------------------------------------ [2020-11-26 11:10:57] martin at radiok2r dot de Description: ------------ Hello, I'm trying to run Apache with PHP 8 JIT-compiler on Windows 10 64-bit. I did: Downloaded and installed Apache 2.4.46 Win64 from https://www.apachelounge.com/download/ Downloaded and installed PHP VS16 x64 Thread Safe (2020-Nov-24 22:49:03) from: https://windows.php.net/download/ I inserted: LoadModule php_module "C:/[Path to PHP]/php8apache2_4.dll" AddHandler application/x-httpd-php .php into my httpd.conf I started Apache, and browsing to local webpages works fine. Okay, so I added to my php.ini: opcache.jit_buffer_size=100M which should activate the JIT-compiler. I restarted Apache and called a local webpage and just got: This site can’t be reached The connection was reset. Windows event-log shows me (I hope the translation is correct): Name of the crashed application: httpd.exe, Version: 2.4.46.0, Timestamp: 0x5f76f6fc Name of the crashed modul: php_opcache.dll, Version: 8.0.0.0, Timestamp: 0x5fbd7aa0 Exceptioncode: 0xc0000005 Erroroffset: 0x000000000012a298 ID of the faulty process: 0x4628 Path to the crashed appliction: C:\[Path to Apache]\bin\httpd.exe Path to the crashed modul:: c:\[Path to PHP]\ext\php_opcache.dll Removing: opcache.jit_buffer_size=100M from php.ini, and Apache works fine again. ------------------------------------------------------------------------ -- Edit this bug report at https://bugs.php.net/bug.php?id=80422&edit=1

« previous php.bugs (#230681) next »