RFR: 8309140: ResourceHashtable failed "assert(~(_allocation_t[0] | allocation_mask) == (uintptr_t)this) failed: lost resource object" [v3]

David Holmes dholmes at openjdk.org
Tue Jun 27 07:06:10 UTC 2023


On Mon, 26 Jun 2023 18:22:18 GMT, Justin Gu <duke at openjdk.org> wrote:

>> Please review the change to ResourceHashtables from statically allocated to CHeap allocated at initialization time. Ran Mach5 testing tiers 1-4 that all passed. See CR for more details.
>
> Justin Gu has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Fixed typedef names

Looks good - thanks for fixing this. One typo in a type-name that must be fixed first.

src/hotspot/share/classfile/systemDictionary.cpp line 116:

> 114: };
> 115: 
> 116: using InvokeMethodIntrisicTable = ResourceHashtable<InvokeMethodKey, Method*, 139, AnyObj::C_HEAP, mtClass,

There is a typo in this name `Intrisic` rather than `Intrinsic`.

src/hotspot/share/classfile/systemDictionary.cpp line 1608:

> 1606:   ResolutionErrorTable::initialize();
> 1607:   _invoke_method_intrinsic_table = new (mtClass) InvokeMethodIntrisicTable();
> 1608:   _invoke_method_type_table = new (mtClass) InvokeMethodTypeTable();

Minor nit: the order looks odd. Suggestion: do the local SD tables first then call the `initialize()` functions for the others.

-------------

Changes requested by dholmes (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/14601#pullrequestreview-1500072778
PR Review Comment: https://git.openjdk.org/jdk/pull/14601#discussion_r1243229395
PR Review Comment: https://git.openjdk.org/jdk/pull/14601#discussion_r1243230735


More information about the hotspot-dev mailing list