Bug #69067 [Com]: Intermitent 0xc0000005 in php_opcache.dll

From: Date: Mon, 08 Jun 2015 17:04:19 +0000
Subject: Bug #69067 [Com]: Intermitent 0xc0000005 in php_opcache.dll
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-193201@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=69067&edit=1 ID: 69067 Comment by: michael dot litwak at nuix dot com Reported by: deivid dot garcia dot garcia at gmail dot com Summary: Intermitent 0xc0000005 in php_opcache.dll Status: Open Type: Bug Package: opcache Operating System: Windows 8.1 x64 PHP Version: 5.6.5 Block user comment: N Private report: N New Comment: Still happening under PHP 5.5.25, though only one time. This time, I have WinCache 1.3.7.4 installed, but the WinCache OpCache is disabled (Zend OpCache is enabled and handing the OpCache). Here's the event log entry: Faulting application name: php-cgi.exe, version: 5.5.25.0, time stamp: 0x55540fa2 Faulting module name: php_opcache.dll, version: 5.5.25.0, time stamp: 0x555411b6 Exception code: 0xc0000005 Fault offset: 0x00006d3c Faulting process id: 0x17b8 Faulting application start time: 0x01d09968fa47c344 Faulting application path: C:\Program Files (x86)\PHP\v5.5\php-cgi.exe Faulting module path: C:\Program Files (x86)\PHP\v5.5\ext\php_opcache.dll Report Id: 38cceb5d-055c-11e5-a159-001b78cbbe20 Previous Comments: ------------------------------------------------------------------------ [2015-04-16 00:27:54] michael dot litwak at nuix dot com Corrections to previous comment: The errors are logged in the Windows APPLICATION Event Log, not the SYSTEM event log. The version of IIS is 7.5 ------------------------------------------------------------------------ [2015-04-16 00:08:39] michael dot litwak at nuix dot com I get the same 0xc0000005 in php_opcache.dll error, but I am running the following: - PHP 5.5.22 non-thread-safe x86 MSVC11 - Windows Server 2008 R2 Enterprise Edition with Service Pack 2 - IIS 75 with FastCGI enabled - Zend OpCache enabled - WinCache extension not loaded The error appears 9 times in rapid succession in my server's Windows SYSTEM Event Log, during system startup. a sample entry is shown below. The errors cease after Microsoft Distributed Transaction Coordinator service starts, but that may be incidental. The error has not repeated since startup, even though the web site is under moderate traffic running a PHP web application. Log Name Application Source Application Error Date 4152015 61328 AM Event ID 1000 Task Category (100) Level Error Keywords Classic User NA Computer MYSERVER Description Faulting application name: php-cgi.exe, version: 5.5.22.0, time stamp: 0x54e4dbb3 Faulting module name: php_opcache.dll, version: 5.5.22.0, time stamp: 0x54e4dd9d Exception code: 0xc0000005 Fault offset: 0x0000235b Faulting process id: 0xdd8 Faulting application start time: 0x01d07764cbafd42d Faulting application path: C:\Program Files (x86)\PHP\v5.5\php-cgi.exe Faulting module path: C:\Program Files (x86)\PHP\v5.5\ext\php_opcache.dll Report Id: 0e93c307-e358-11e4-a6c4-001b78cbbe20 ------------------------------------------------------------------------ [2015-03-02 23:10:24] deivid dot garcia dot garcia at gmail dot com I have received some helpful feedback about the issues from a PHP extension maintainer. These are comments on three dumps, I can get ahold of all of them if needed. php-cgi.exe.27180.dmp - No clue. This appears to be an AV when handling a specific opcode, but I'm not sure what's wrong. Since WinCache isn't the opcode cache, I'd suggest turning this over to the Zend Opcache folks. Call Stack: 0:000> k *** Stack trace for last set context - .thread/.cxr resets it # ChildEBP RetAddr WARNING: Frame IP not in any known module. Following frames may be wrong. 00 00dbe760 6d658622 0x0 01 00dbe770 6d373e0c php5!ZEND_USER_OPCODE_SPEC_HANDLER+0x12 [c:\php-sdk\php56\vc11\x86\php-5.6.6\zend\zend_vm_execute.h @ 1309] 02 00dbe7a8 6d342b2e php5!execute_ex+0x6c [c:\php-sdk\php56\vc11\x86\php-5.6.6\zend\zend_vm_execute.h @ 363] 03 00dbe7cc 6d342f9e php5!zend_execute+0x14e [c:\php-sdk\php56\vc11\x86\php-5.6.6\zend\zend_vm_execute.h @ 388] 04 00dbe800 6d342e6c php5!zend_execute_scripts+0xde [c:\php-sdk\php56\vc11\x86\php-5.6.6\zend\zend.c @ 1341] 05 00dbea94 77670cef php5!php_execute_script+0x14c [c:\php-sdk\php56\vc11\x86\php-5.6.6\main\main.c @ 2578] 06 (Inline) -------- ntdll!RtlpHeapZeroMemory+0x1d47b [d:\9142\minkernel\ntos\rtl\heappriv.h @ 3689] 07 00dbeb30 77651354 ntdll!RtlpLowFragHeapAllocFromContext+0x34d [d:\9142\minkernel\ntos\rtl\heaplowf.c @ 4516] 08 00dbebc4 7766443b ntdll!RtlAllocateHeap+0x14d [d:\9142\minkernel\ntos\rtl\heap.c @ 1872] 09 (Inline) -------- ntdll!RtlAppendUnicodeStringToString+0x2c [d:\9142\minkernel\ntos\rtl\nls.c @ 2231] 0a 00dbee64 7632a17d ntdll!RtlDosPathNameToRelativeNtPathName+0x1f6 [d:\9142\minkernel\ntdll\curdir.c @ 3343] 0b 00000000 00000000 KERNELBASE!FindFirstFileExW+0x231 [d:\9147\minkernel\kernelbase\filefind.c @ 995] php-cgi.exe.35820.dmp - Failure during Zend Opcache startup. Call Stack: 0:000> .ecxr *** WARNING: Unable to verify checksum for php_opcache.dll eax=8a014e8d ebx=00000000 ecx=6d392183 edx=139715e1 esi=f4bf0e93 edi=6d8004c9 eip=6eb96d4c esp=0118f71c ebp=0000000e iopl=0 nv up ei pl zr na pe nc cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00210246 php_opcache!zend_accel_hash_find+0x10c: 6eb96d4c 8b1c90 mov ebx,dword ptr [eax+edx*4] ds:002b:d85da611=???????? 0:000> k *** Stack trace for last set context - .thread/.cxr resets it # ChildEBP RetAddr 00 0118f72c 6eb95122 php_opcache!zend_accel_hash_find+0x10c [c:\php-sdk\php56\vc11\x86\php-5.6.6\ext\opcache\zend_accelerator_hash.c @ 152] 01 0118f754 6d66985f php_opcache!accel_startup+0x322 [c:\php-sdk\php56\vc11\x86\php-5.6.6\ext\opcache\zendaccelerator.c @ 2647] 02 0118f760 6d6c672d php5!zend_extension_startup+0xf [c:\php-sdk\php56\vc11\x86\php-5.6.6\zend\zend_extensions.c @ 154] 03 0118f778 6d36a383 php5!zend_llist_apply_with_del+0x35e04d [c:\php-sdk\php56\vc11\x86\php-5.6.6\zend\zend_llist.c @ 178] 04 0118fa50 012d27e1 php5!php_module_startup+0x643 [c:\php-sdk\php56\vc11\x86\php-5.6.6\main\main.c @ 2305] 05 0118fa60 012d1202 php_cgi!php_cgi_startup+0x11 [c:\php-sdk\php56\vc11\x86\php-5.6.6\sapi\cgi\cgi_main.c @ 942] 06 0118fbf4 012d421c php_cgi!main+0x202 [c:\php-sdk\php56\vc11\x86\php-5.6.6\sapi\cgi\cgi_main.c @ 1918] 07 0118fc34 76f77c04 php_cgi!__tmainCRTStartup+0xfd [f:\dd\vctools\crt_bld\self_x86\crt\src\crtexe.c @ 536] 08 0118fc48 7766b5af kernel32!BaseThreadInitThunk+0x24 [d:\9147\base\win32\client\thread.c @ 78] 09 0118fc90 7766b57a ntdll!__RtlUserThreadStart+0x2f [d:\9142\minkernel\ntdll\rtlstrt.c @ 1029] 0a 0118fca0 00000000 ntdll!_RtlUserThreadStart+0x1b [d:\9142\minkernel\ntdll\rtlstrt.c @ 944] php-cgi.exe.4468.dmp - Failure during Zend Opcache startup. Call Stack: 0:000> k *** Stack trace for last set context - .thread/.cxr resets it # ChildEBP RetAddr 00 00a7f874 6eb95122 php_opcache!zend_accel_hash_find+0x10c [c:\php-sdk\php56\vc11\x86\php-5.6.6\ext\opcache\zend_accelerator_hash.c @ 152] 01 00a7f89c 6d66985f php_opcache!accel_startup+0x322 [c:\php-sdk\php56\vc11\x86\php-5.6.6\ext\opcache\zendaccelerator.c @ 2647] 02 00a7f8a8 6d6c672d php5!zend_extension_startup+0xf [c:\php-sdk\php56\vc11\x86\php-5.6.6\zend\zend_extensions.c @ 154] 03 00d0c5f8 6ebab3b4 php5!zend_llist_apply_with_del+0x35e04d [c:\php-sdk\php56\vc11\x86\php-5.6.6\zend\zend_llist.c @ 178] 04 00d0c5fc 6ebab3c0 php_opcache!`string' 05 00d0c600 6ebab3d4 php_opcache!`string' 06 00d0c604 6ebab3ec php_opcache!`string' 07 00d0c608 6eb94dff php_opcache!`string' 08 00d0c60c 00000000 php_opcache!accel_globals_dtor+0x1f (stack starts off the same as php-cgi.exe.35820.dmp, but gets weird...it may be useful to someone.) ------------------------------------------------------------------------ [2015-02-17 15:28:31] deivid dot garcia dot garcia at gmail dot com Description: ------------ This was not happening prior to 5.6.5. Probably related to #68439. I could not replicate the exact cause, but the error is happening too often. I have caught full crash dump, downloadable from here: https://www.dropbox.com/sh/0whrqzo7wswlp51/AABPJKFyqarQoQCm-oV1SoQ3a?dl=0 Faulting application name: php-cgi.exe, version: 5.6.5.0, time stamp: 0x54c04440 Faulting module name: php_opcache.dll, version: 5.6.5.0, time stamp: 0x54c04663 Exception code: 0xc0000005 Fault offset: 0x00006d4c Faulting process id: 0x3398 Faulting application start time: 0x01d04abda2494faa Faulting application path: C:\Program Files (x86)\PHP\php5.6\php-cgi.exe Faulting module path: C:\Program Files (x86)\PHP\php5.6\ext\php_opcache.dll Report Id: e0042eee-b6b0-11e4-8313-8019346bbdc6 Faulting package full name: Faulting package-relative application ID: Prior to the full crash, the event viewer gets full of these: The description for Event ID 487 from source Zend OPcache cannot be found. Either the component that raises this event is not installed on your local computer or the installation is corrupted. You can install or repair the component on the local computer. If the event originated on another computer, the display information had to be saved with the event. The following information was included with the event: Unable to reattach to base address Attempt to access invalid address. ------------------------------------------------------------------------ -- Edit this bug report at https://bugs.php.net/bug.php?id=69067&edit=1

« previous php.bugs (#193201) next »