Bug #80015 [NEW]: Access violation Crash of PHP 8
From: buschmann at nidsa dot net
Operating system: Windows 10 Pro 64bit
PHP version: 8.0.0beta2
Package: JIT
Bug Type: Bug
Bug description:Access violation Crash of PHP 8
Description:
------------
On my development machine I set the following configuration for JIT (no
AVX available):
opcache.jit_buffer_size=16M
opcache.jit=0205
opcache-gui.php executes after apache start.
When prewarming some scripts from one of our applications PHP crashes
with access violation.
One example line is:
$bresult=opcache_compile_file('N:\Apache\tcpdf\tcpdf.php');
On the server machine (with avx, jit=1205) our application runs fine
(prewarming etc.)
The only solution on the dev machine was to disable JIT completely.
With disabled JIT our applications ran fine.
Environment:
- Windows 10 64bit Pro on Celeron G1840 (no AVX)
- Apache 2.46 64bit from apachelounge
- php 8 beta2 64bit thread safe from php.net QA download
- php loaded as a module with php_module
Actual result:
--------------
Crash dump follows:
CrashHangAnalysis
Report for
httpd__PID__10696__Date__08_24_2020__Time_04_48_52PM__948__Second_Chance_Exception_C0000005.dmp
Type of Analysis Performed Crash Analysis
Machine Name WINHB16
Operating System Windows 10 - 18363
Number Of Processors 2
Process ID 10696
Process Image N:\Apache\Apache24\bin\httpd.exe
Command Line httpd -X
System Up-Time 9 day(s) 23:08:39
Process Up-Time 00:01:08
Processor Type X64
Process Bitness 64-Bit
Faulting Thread
Entry point libhttpd!ap_run_generate_log_id+3ab0
Create time 24.08.2020 16:47:46
Time spent in user mode 0 Days 0:0:0.0
Time spent in kernel mode 0 Days 0:0:0.0
Arg 1
Arg 2
Arg 3
Arg 4
Source
php_opcache!zend_jit_trace_exit_is_hot+68
[C:\php-snap-build\php80\vs16\x64\php-8.0.0beta2-ts\ext\opcache\jit\zend_jit_trace.c
@ 5458 + 4] 000000000000001 000022a00000006
00010000041fb98 00000c43c7fd068
C:\php-snap-build\php80\vs16\x64\php-8.0.0beta2-ts\ext\opcache\jit\zend_jit_trace.c
@ 5458 + 4
php_opcache!zend_jit_trace_exit+a76
[C:\php-snap-build\php80\vs16\x64\php-8.0.0beta2-ts\ext\opcache\jit\zend_jit_trace.c
@ 5827 + 47] 000100000000006 00000c43c7fd1b0
0000000000000a5 000022a8ba75300
C:\php-snap-build\php80\vs16\x64\php-8.0.0beta2-ts\ext\opcache\jit\zend_jit_trace.c
@ 5827 + 47
0x0000100003000613 00000c43c7fd1b0 0000000`000000a5
000022a8ba75300 000000000000003
0x0000100000000006 0000000000000a5 000022a`8ba75300
000000000000003 000022a8ba579bc
0x000000c43c7fd1b0 000022a8ba75300 0000000`00000003
000022a8ba579bc 0000dd5746e0848
0x000000a5 000000000000003 000022a8ba579bc
0000dd5746e0848 00010000300083d
0x0000022a8ba75300 000022a8ba579bc 0000dd5`746e0848
00010000300083d 000022a8ba15370
0x00000003 0000dd5746e0848 00010000300083d
000022a8ba15370 000022a8ba15370
0x0000022a8ba579bc 00010000300083d 000022a`8ba15370
000022a8ba15370 000022a8ba15370
0x00000dd5746e0848 000022a8ba15370 000022a`8ba15370
000022a8ba15370 000022a8a983120
0x000010000300083d 000022a8ba15370 000022a`8ba15370
000022a8a983120 000000000000000
0x0000022a8ba15370 000022a8ba15370 000022a`8a983120
000000000000000 000022a8ba15300
0x0000022a8ba15370 000022a8a983120 0000000`00000000
000022a8ba15300 000022a8b2092e0
0x0000022a8ba15370 000000000000000 000022a`8ba15300
000022a8b2092e0 000000000000246
0x0000022a8a983120 000022a8ba15300 000022a`8b2092e0
000000000000246 000000000000008
CLR Information
Exception Information
PHP_OPCACHE!ZEND_JIT_TRACE_EXIT_IS_HOT+68In
httpd__PID__10696__Date__08_24_2020__Time_04_48_52PM__948__Second_Chance_Exception_C0000005.dmp
the assembly instruction at php_opcache!zend_jit_trace_exit_is_hot+68 in
N:\Apache\php8\ext\php_opcache.dll from The PHP Group has caused an
access violation exception (0xC0000005) when trying to read from memory
location 0x00000006 on thread 99
Module Information
Image Name: N:\Apache\php8\ext\php_opcache.dll Symbol Type: PDB
Base address: 0x00000003`00905a4d Time Stamp: Wed Aug 19 00:50:02
2020
Checksum: 0x00000000`00000000 Comments: Thanks to Andi Gutmans, Zeev
Suraski, Stanislav Malyshev, Dmitry Stogov, Xinchen Hui
COM DLL: False Company Name: The PHP Group
ISAPIExtension: False File Description: Opcache
ISAPIFilter: False File Version: 8.0.0beta2
Managed DLL: False Internal Name: OPCACHE extension
VB DLL: False Legal Copyright: Copyright é The PHP Group
Loaded Image Name: php_opcache.dll Legal Trademarks: PHP
Mapped Image Name: Original filename: php_opcache.dll
Module name: php_opcache Private Build:
Single Threaded: False Product Name: PHP
Module Size: 1,5 MBytes Product Version: 8.0.0beta2
Symbol File Name: n:\apache\php8_debug_b1\php_opcache.pdb Special
Build: &
--
Edit bug report at https://bugs.php.net/bug.php?id=80015&edit=1
--
Fix committed: https://bugs.php.net/fix.php?id=80015&r=fixed
Fixed in release: https://bugs.php.net/fix.php?id=80015&r=alreadyfixed
Need backtrace: https://bugs.php.net/fix.php?id=80015&r=needtrace
Need Reproduce Script: https://bugs.php.net/fix.php?id=80015&r=needscript
Try newer version: https://bugs.php.net/fix.php?id=80015&r=oldversion
Not developer issue: https://bugs.php.net/fix.php?id=80015&r=support
Expected behavior: https://bugs.php.net/fix.php?id=80015&r=notwrong
Not enough info: https://bugs.php.net/fix.php?id=80015&r=notenoughinfo
Submitted twice: https://bugs.php.net/fix.php?id=80015&r=submittedtwice
register_globals: https://bugs.php.net/fix.php?id=80015&r=globals
PHP version support discontinued: https://bugs.php.net/fix.php?id=80015&r=phptooold
Daylight Savings: https://bugs.php.net/fix.php?id=80015&r=dst
IIS Stability: https://bugs.php.net/fix.php?id=80015&r=isapi
Install GNU Sed: https://bugs.php.net/fix.php?id=80015&r=gnused
Floating point limitations: https://bugs.php.net/fix.php?id=80015&r=float
No Zend Extensions: https://bugs.php.net/fix.php?id=80015&r=nozend
MySQL Configuration Error: https://bugs.php.net/fix.php?id=80015&r=mysqlcfg
Thread (1 message)
- buschmann at nidsa dot net