RFR: 8318720: G1: Memory leak in G1CodeRootSet after JDK-8315503 [v2]
Thomas Schatzl
tschatzl at openjdk.org
Wed Oct 25 14:54:29 UTC 2023
On Wed, 25 Oct 2023 14:48:47 GMT, Thomas Schatzl <tschatzl at openjdk.org> wrote:
>> That's the first place I looked. But `free_nodes` is not MT-safe, I am not sure it will fit well with other APIs that all seem to be MT-safe.
>>
>> I also thought about move `G1CodeRootSetHashTable::clear()` implementation to CHT, but likely I would need another version for safepoint? (e.g. use `_table.bulk_delete` instead).
>>
>> Hope to have a chance to return to JVM development fulltime, so I will have time to think about it. For now, I will let you to worry about the refactoring :-)
>
> I would strongly prefer something like [this](https://github.com/openjdk/jdk/commit/521b66294bc22e7c0760c60e7ce2f1ce31347fc3) after some "worrying about the refactoring" ;)
> Passes gc/g1 testing.
It's small enough to copy it in here:
void clear() {
// Remove all entries.
auto always_true = [] (nmethod** value) {
return true;
};
clean(always_true);
}
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/16352#discussion_r1371903515
More information about the hotspot-gc-dev
mailing list