RFR(xxxs): 8193429: "assert(false) failed: GetModuleFileName failed (126)" in symbolengine.cpp
George Triantafillou
george.triantafillou at oracle.com
Tue Mar 6 15:03:47 UTC 2018
Hi Thomas,
This looks good. The failure is very difficult to reproduce locally,
and I agree that the assert was too strict.
If you'd like, I can sponsor this change for you.
-George
On 3/6/2018 3:30 AM, Thomas Stüfe wrote:
> Hi all,
>
> please take a look at this small fix.
>
> fix:
> http://cr.openjdk.java.net/~stuefe/webrevs/8193429-GetModuleFileName-failed-symbolengine/webrev.00/webrev/
>
> bug: https://bugs.openjdk.java.net/browse/JDK-8193429
>
> Basically, the assert is too strict. We retrieve a list of loaded modules
> (EnumProcessModules) and then attempt to retrieve their file names
> (GetModuleFileName). On the latter we get an invalid handle error.
>
> Since both operations together are not atomic, it may happen that the
> module got unloaded when the file name is retrieved. So, the assert is too
> strict and should be removed.
>
> (Note: I did my fix for 11, should that
>
> Best Regards, Thomas
More information about the hotspot-runtime-dev
mailing list