RFR(xxxs): 8193429: "assert(false) failed: GetModuleFileName failed (126)" in symbolengine.cpp
Thomas Stüfe
thomas.stuefe at gmail.com
Tue Mar 6 13:07:32 UTC 2018
Thank you Christoph!
On Tue, Mar 6, 2018 at 2:00 PM, Langer, Christoph <christoph.langer at sap.com>
wrote:
> Hi Thomas,
>
> I think this sounds reasonable.
>
> Best regards
> Christoph
>
> > -----Original Message-----
> > From: hotspot-runtime-dev [mailto:hotspot-runtime-dev-
> > bounces at openjdk.java.net] On Behalf Of Thomas Stüfe
> > Sent: Dienstag, 6. März 2018 09:31
> > To: Hotspot dev runtime <hotspot-runtime-dev at openjdk.java.net>
> > Subject: RFR(xxxs): 8193429: "assert(false) failed: GetModuleFileName
> failed
> > (126)" in symbolengine.cpp
> >
> > 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