Ops, I forgot to revert the exit condition.
http://git.php.net/?p=php-src.git;a=commitdiff;h=2d55e8c186ef1034c2af64478da8f23dbeb28be9 On Thu, Sep 24, 2015 at 11:00 AM, Dmitry Stogov <dmi...@zend.com> wrote: > hi Matt, > > Thanks. > I also moved the exit condition to be before Sleep(). > This should prevent race condition on last iteration (after unlocked sleep > process should try to reattach). > Committed to PHP-7.0 and master. > > > http://git.php.net/?p=php-src.git;a=commitdiff;h=262160e0e9919dce914df2f0643c4b16ca137454 > > If this really works, we should backport this into php-5.* as well. > > Thanks. Dmitry. > > On Thu, Sep 24, 2015 at 8:34 AM, Matt Ficken <themattfic...@gmail.com> > wrote: > >> Ok, I have a new PR just to unlock around Sleep(): >> https://github.com/php/php-src/pull/1536 >> >> Just by unlocking around Sleep() the OpenFileMapping loop will work. >> Holding the lock in that loop will not only block detach_segments() in >> other PHP processes but also reattaching in accel_startup(). >> >> Checking the base address used when this issue occurs during some of my >> stress testing, most of the time the base address used is the first in >> vista_mapping_base_set. Its typically the timing between the locking and >> mapped file operations between processes more often than the base address >> selection. >> >> Especially ASLR, also PECL DLLs, and other factors will still cause this >> issue occasionally, but this fixes a majority of my occurrences. >> >> Regards >> -M >> >> >> On Wed, Sep 23, 2015 at 2:04 AM, Dmitry Stogov <dmi...@zend.com> wrote: >> >>> Hi Matt, >>> >>> It looks like with your patch, the same file may be mapped to different >>> virtual addresses of different processes and this won't work. >>> I think usage of vista_mapping_base_set[] in your patch is wrong. >>> >>> Do I understand properly, that zend_shared_alloc_unlock/lock_win32() >>> around Sleep() is the main part of the patch? >>> >>> Please, next time, try to make PR diffs as small as possible (without >>> messing real fix with formatting and rearranging changes). >>> >>> Thanks. Dmitry. >>> >>> >>> >>> On Wed, Sep 23, 2015 at 10:10 AM, Matt Ficken <themattfic...@gmail.com> >>> wrote: >>> >>>> I want to increase visibility for my PR 1531, >>>> https://github.com/php/php-src/pull/1531, my patch for fixing an >>>> intermittent OpCache issue on Windows. >>>> >>>> Details, etc... are on the PR. >>>> >>>> Regards >>>> -M >>>> >>> >>> >> >