VirtualFree() MEM_DECOMMIT failed in Purge(): The parameter is incorrect. (0x57)
Reported by
lolovo2...@gmail.com,
Sep 4 2017
|
|||
Issue descriptionUserAgent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36 Steps to reproduce the problem: I'm using CEF which is used chromium (I used many versions of CEF, i.e. with different chromium versions from 57.x to 60.x... and all versions has this issue). It is quite complicated to reproduce this issue, which is occured only after some time of continuous work with different sites through socks proxies (at least 2 sites at the same time) getting their pages and its sources. These errors are accumulated with time and as result after some time since these errors appeared fatal error/crash happened due to shared memory can't be allocated (if I understand it correctly): [0901/101618.110:ERROR:broker_win.cc(59)] Error reading broker pipe: The pipe has been ended. (0x6D) [0901/101618.110:ERROR:broker_win.cc(59)] Error reading broker pipe: The pipe has been ended. (0x6D) [0901/101618.115:WARNING:child_thread_impl.cc(695)] Browser failed to allocate shared memory What is the expected behavior? VirtualFree in DiscardableSharedMemory::Purge should work fine without fails at least once. What went wrong? After some debugging I've realized the following: - Some time of work when there is no any error with "VirtualFree() MEM_DECOMMIT failed in Purge" when DiscardableSharedMemory::Purge is called it return false after check "result.value.u != old_state.value.u" due to it is not same (while debugging in this case old_state == new_state and u==i==0 ) - When result.value.u == old_state.value.u it goes to VirtualFree and any call of VirtualFree in DiscardableSharedMemory::Purge failed with 0x57 error code! - when VirtualFree is failed result == old_state and i<0, u>0, new_state.u==new_state.i==0 - there is no any usage/call of DiscardableSharedMemory::Lock & DiscardableSharedMemory::Unlock during whole time of work! Are these functions unused? Breakpoints at the begining of these funcs in Debug mode never reached. Did this work before? N/A Does this work in other browsers? N/A Chrome version: 60.0.3112.113 Channel: stable OS Version: 6.1 (Windows 7, Windows Server 2012 R2) Flash Version: additional info such as stack trace in so on could be found here on CEF forum ( http://www.magpcss.org/ceforum/viewtopic.php?f=6&t=14737 ) I didn't realized if there is some testcase for apropriate work with DiscardableSharedMemory and how to trigger/use it.
,
Sep 5 2017
Not aware how to triage this issue from Chrome-TE end, requesting some one from blink team to look in to this issue. Thanks!
,
Sep 5 2017
Sorry if I mismatched with category of the issue (I didn't see appropriate category for it when creating this). May be someone helps with that and change it. Finally I've got steps to reproduce the problem: (notes: due to the problem triggers when memory usage exceeds the limits > 1024*1024*512bytes, it is best to set appropriate flag to lower this limit for reproduction) 1. execute "cefclient.exe --enable-low-end-device-mode" 2. write address "https://www.facebook.com/VinDiesel" to the address box and press enter 3. see debug.log: [0905/164331.854:ERROR:discardable_shared_memory.cc(364)] VirtualFree() MEM_DECOMMIT failed in Purge(): Параметр задан неверно. (0x57) [0905/164332.536:ERROR:discardable_shared_memory.cc(364)] VirtualFree() MEM_DECOMMIT failed in Purge(): Параметр задан неверно. (0x57) [0905/164333.200:ERROR:discardable_shared_memory.cc(364)] VirtualFree() MEM_DECOMMIT failed in Purge(): Параметр задан неверно. (0x57) [0905/164333.770:ERROR:discardable_shared_memory.cc(364)] VirtualFree() MEM_DECOMMIT failed in Purge(): Параметр задан неверно. (0x57) [0905/164334.487:ERROR:discardable_shared_memory.cc(364)] VirtualFree() MEM_DECOMMIT failed in Purge(): Параметр задан неверно. (0x57) [0905/164334.775:ERROR:discardable_shared_memory.cc(364)] VirtualFree() MEM_DECOMMIT failed in Purge(): Параметр задан неверно. (0x57) [0905/164334.775:ERROR:discardable_shared_memory.cc(364)] VirtualFree() MEM_DECOMMIT failed in Purge(): Параметр задан неверно. (0x57) [0905/164334.970:ERROR:discardable_shared_memory.cc(364)] VirtualFree() MEM_DECOMMIT failed in Purge(): Параметр задан неверно. (0x57) [0905/164334.976:ERROR:discardable_shared_memory.cc(364)] VirtualFree() MEM_DECOMMIT failed in Purge(): Параметр задан неверно. (0x57) ...
,
Sep 5 2017
Sorry folks this reproduction steps was made for Chromium 57.0.2987.133.. but it still correct for reproduction -> you need open at least 4-5 new windows (menu Test->New window) and write same address and press enter.. on each window you should also click on OK button about console.log... and after you can see inside of debug.log
,
Jun 5 2018
That's base memory allocation, not Blink. |
|||
►
Sign in to add a comment |
|||
Comment 1 by lolovo2...@gmail.com
, Sep 4 2017