Integrated: 8316994: Avoid modifying ClassLoader and Module objects during -Xshare:dump

Ioi Lam iklam at openjdk.org
Thu Sep 28 01:50:38 UTC 2023


On Wed, 27 Sep 2023 05:05:31 GMT, Ioi Lam <iklam at openjdk.org> wrote:

> When dumping the module graph, we set some native pointers in `ClassLoader` and `Module` objects to null.
> 
> We used to modify the copies of these objects in the actual heap. This makes `InstanceKlass::class_loader_data()` return the wrong value inside `VM_PopulateDumpSharedSpace`.
> 
> Instead, this PR modifies the copies of the objects in the `ArchiveHeapWriter` buffer. This also means that the `HeapShared::restore_loader_data()` function is no longer needed.

This pull request has now been integrated.

Changeset: 52073b27
Author:    Ioi Lam <iklam at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/52073b27a302cb27276b6c9e500ed4c70e417560
Stats:     66 lines in 7 files changed: 26 ins; 33 del; 7 mod

8316994: Avoid modifying ClassLoader and Module objects during -Xshare:dump

Reviewed-by: matsaave, ccheung

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

PR: https://git.openjdk.org/jdk/pull/15937


More information about the hotspot-runtime-dev mailing list